This is the mail archive of the gcc@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: condition codes, haifa-sched and virtual-stack-vars


In message <orpu3r1km3.fsf@free.redhat.lsd.ic.unicamp.br>, Alexandre Oliva writ
es:
 > On Jan 30, 2002, Greg McGary <greg@mcgary.org> wrote:
 > 
 > > In the "movsi" expander, I added this bit:
 > 
 > >         if (REG_P (src)
 > >             && REGNO (src) >= FIRST_PSEUDO_REGISTER
 > >             && REGNO (src) <= LAST_VIRTUAL_REGISTER)
 > 
 > I'd take the last condition out.  Consider, for example, that you have
 > a very large stack frame, such that a pseudo ends up having to be
 > replaced with (plus (reg SP) (const_int VERY_LARGE_NUMBER))?  Reload
 > may end up using a scratch register to construct this address, and it
 > will need an add to do that.  Better be safe and consider any pseudo
 > reloading risky.
 > 
 > 
 > Other than that, I'm very happy it worked.
Likewise.  

I had pondered similar solutions, but rejected them as imparing 
optimization in too many ways.  Some optimizers are more effective
when moves are "simple".

jeff


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