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: Improvement for update_equiv_regs (fwd)



  In message <Pine.LNX.4.21.0009140912450.32574-100000@mahatma.cygnus.co.uk>you
 write:
  > On Wed, 13 Sep 2000, Jeffrey A Law wrote:
  > > The concern I had with this patch, then and now,is that it seems to me th
  > at
  > > passes creating these function invariants ought to be adding REG_EQUAL no
  > tes
  > > for them.
  > 
  > As far as I understood Joern, the problem are insns of the form
  > 
  >  (set (reg X) (plus (frame pointer) (constant)))
  > 
  > which don't have a REG_EQUAL note.  I really doubt we want to carry a
  > redundant REG_EQUAL note through all the optimization passes for every
  > insn that could possibly be used to make an equivalence.
  > 
  > The only reason we need a REG_EQUAL note at that point is that the code
  > immediately below looks for one in order to turn it into a REG_EQUIV note.
  > So generating one on the spot if it seems worthwhile seems like a pretty
  > reasonable approach to me.  It's equivalent to generating the REG_EQUIV
  > note on the spot instead of converting an existing REG_EQUAL note.
Understood, but if we create the REG_EQUAL note earlier (say cse1), then gcse,
loop, cse2, regmove, and every pass using the aliasing code might benefit from
the note.

Now it may turn out that it's not important in those cases, I really don't 
know.
I'm just pointing out that it seems to me like we're adding the notes at the
wrong time.

jeff


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