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 for label handling in flow




  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
  > e 
  > > 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
anyway).

jeff

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
discussion.



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