This is the mail archive of the egcs@egcs.cygnus.com mailing list for the EGCS project. See the EGCS home page for more information.


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

Re: i386.md move reload_in_progress | reload_completed tests



  In message <199903271841.NAA01722@jwlab.FEITH.COM>you write:
  > Actually I forgot that memory can be pushed.
Right.  And if we are trying to push a pseudo which does not get a hard reg,
then we _may_ want to push it from memory.  Whether or not that is profitable
I believe is dependent on what particular x86 processor one is using.


  > In any case perhaps the
  > various (reload_in_progress | reload_completed) checks in i386.md which
  > control calls to force_reg should be replaced with a no_new_pseudos check.
Yes.  Lots of ports need updating in this manner.

Basically (reload_in_progress | reload_completed) was an approximation for when
no new pseudos could be created.  That approximation was fine for a long time
and many ports use it.

However, as the compiler has changed, we've found the need to be more accurate
in these tests.  Thus the invention of "no_new_pseudos".

jeff