This is the mail archive of the gcc-patches@gcc.gnu.org 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: RFC: kill ORIGINAL_REGNO


On May 03, 2004 08:42 AM, Michael Matz <matz@suse.de> wrote:

> Um.  This makes the dumps after reload harder to read.  Sometimes by much.  
> I remember the times when there was no ORIGINAL_REGNO and also remember
> the joy I felt once they were there (in fact at that time I even thought
> it was specifically invented for debugging dumps).

The same concern was already raised by Daniel J., so I had already more or
less decided to find some way to keep this "feature" available.  Still, making
each and every REG rtx larger just for debugging dumps is just wasteful.

I was thinking about moving ORIGINAL_REGNO to REG_ATTRS, but that
would mean we have to allocate a reg_attrs struct for every reg which is even
more wasteful, or some side lookup table in case we're doing RTL dumps,
but keeping this table up to date between passes may be nontrivial.  Other
ideas are welcome.

> Steven's "but IMHO one can just read the RTL dumps to see what happened" 
> is a tautology.

Not if the passes  where the registers change numbers (reload&regalloc) had
good dumps with all information on what they are doing.


> So, I think this behaviour should be preserved, maybe by moving it to the 
> REG_ATTRS, no idea.

AFAICT we only allocate REG_ATTRS for user variables.  I don't know how
many pseudos represent variables, but I'd expect that the majority of REGs
does not.  Otherwise, this is what we should do, I suppose.

Gr.
Steven




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