This is the mail archive of the gcc-bugs@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: Proposed patch for PR 7507 and PR 9289


On Friday, January 17, 2003, at 05:45  PM, Christian Ehrhardt wrote:

On Fri, Jan 17, 2003 at 10:31:34AM -0800, Dale Johannesen wrote:
This is (at least) the 3rd bug like this that has shown up.  Might it
be a
good idea to rewrite the low-level label infrastructure to allow
duplicate labels in the placeholder alternatives?  That might be
stabler.
Assume that we actually allow labels in a call placeholder.
This would mean that we generate different CODE_LABEL insns for
each alternative in the call placeholder because same insn can't
be in different chains. As long as the only jumps to the label are
from within the same call placeholder this is fine but there may
well be jumps from outside the call placeholder. These jumps would
have a hard time to figure out what the label number is that they
should jump to....
I had in mind multiple labels with the same number (but different insns),
in different placeholders. Exactly one of them would survive after the
placeholders are resolved. If you can construct a case where one placeholder
contains a label jumped to from outside and another doesn't, that would break.
That's not possible, because choosing the placeholder without the label would
result in invalid RTL.

This was just an idea thrown out, I didn't intend it to block approval of your
patch. I have no authority, but the patch looks correct to me.


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