Your Jan 8th, 2001 rtlanal.c:note_stores change

David S. Miller davem@redhat.com
Mon Apr 15 10:03:00 GMT 2002


   From: kenner@vlsi1.ultra.nyu.edu (Richard Kenner)
   Date: Mon, 15 Apr 02 12:09:49 EDT

   It sounds like we need a construct that says "I'm setting this register to
   something, but I don't know what it is".  For almost all purposes except
   in those functions you mention, this is *precisely* what CLOBBER means, which
   is why I used it.

After some cursory walks over note_stores callbacks, I see a lot of
information to the contrary Richard.  Look at reg_dead_at_p_1 in
combine.c, it interprets CLOBBER as "becomes dead".

Your theory that it might have been a GCSE issue is not well
founded, given that all of the note_stores callbacks in that
pass of the compiler mark the second arg as ATTRIBUTE_UNUSED
and indeed do not make look at it.

There is some weirdness in the note_stores callback in
alias.c, but the way it detects "set of related value" would
cause these funny PARALLEL sets of calls to never match.
So I don't even see a problem here with sending normal SETs.

I think we should find the exceptional case and just deal with
that code, in order to fix this.



More information about the Gcc-bugs mailing list