This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 5/7] Shrink SCRATCH

On 05/12/14 10:37, Richard Sandiford wrote:
The rtl.def SCRATCH entry predates the repository (1991) and I couldn't
see anything in the initial versions of reload.c or reload1.c that set
the code to a REG.  local-alloc.c had:

   if (qty_scratch_rtx[q])
       if (GET_CODE (qty_scratch_rtx[q]) == REG)
         abort ();
       PUT_CODE (qty_scratch_rtx[q], REG);
       REGNO (qty_scratch_rtx[q]) = qty_phys_reg[q];

but that was removed by:

Wed Oct 22 00:34:12 1997  Jeffrey A Law  (

        * local-alloc.c (block_alloc): Don't lose if two SCRATCH expressions
        are shared.

(Disappointed that you don't remember what you did in 97. :-))
:-)  '97 to '99 were, umm, busy.

I couldn't see anything in global.c that would set the code to a REG.
No current calls to PUT_CODE would do that either.

REG became bigger than SCRATCH with:

Thu Jun 25 15:08:16 1998  Mark Mitchell  <>

        * invoke.texi (-fstrict-aliasing): Document.
        * rtl.texi (MEM_ALIAS_SET): Document.
OK.  Concerns addressed.  Go ahead with the change.

Thanks for the detective work! :-)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]