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]

Re: PATCH: VAX sltu and sgeu patterns



  In message <200008172020.QAA06904@hiauly1.hia.nrc.ca>you write:
  > The following patch fixes the reload problem which arises from statements
  > such as `f(a<b);'.  Other issues have prevented a full bootstrap test,
  > although I hope to complete one soon.
  > 
  > Dave
  > -- 
  > J. David Anglin                                  dave.anglin@nrc.ca
  > National Research Council of Canada              (613) 990-0752 (FAX: 952-6
  > 605)
  > 
  > 2000-08-17  J. David Anglin  <dave@hiauly1.hia.nrc.ca>
  > 
  > 	* vax.md (sltu, sgeu): Change operand type to register_operand to
  > 	prevent memory input reloads.
Thinking more about this, I believe you can still lose -- you could have a
pseudo which does not get a hard register.  That would trigger an input
reload, which would trigger the no input reloads rule for cc0 using insns.

The more I think about it, the more I think it's better to include the
comparison in the pattern itself.  Then split it after reload.  This would
ensure the cc0 setter & user stay together and shouldn't inhibit any
significant optimizations.
jeff




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