patch for label handling in flow
Jeffrey A Law
Mon Jan 25 21:34:00 GMT 1999
In message < 19990125201233.F1456@dot.cygnus.com >you write:
> On Mon, Jan 25, 1999 at 08:25:13PM +0100, Philip Blundell wrote:
> > Normally if a label has its address taken, flow will consider it to be a
> > potential target for any computed goto. Unfortunately on the ARM port th
> > prologue used for functions compiled as PIC includes such a label.
> I don't see how the arm port is using ".+4" and ".+8" without doing
> anything to make certain that those instructions really stay together.
> Seems like scheduling could really mess that up. Could be the only
> reason this hasn't shown up earlier is the protection given by the
> erroneous CFG. Or perhaps I miss something?
> FWIW, the sparc port uses a symbol_ref in its gp load sequence.
I agree. I don't see anything which would prevent this lossage. Either the
insns need to be surrounded by scheduling/optimization barriers or put into
a single insn (at which point you don't have to expose the label into rtl
ps. I'm not sure it's really kosher for the sparc to use a SYMBOL_REF
instead of a LABEL_REF for this purpose. But that's a totally different
More information about the Gcc-patches