loop.c fix

Jeffrey A Law law@hurl.cygnus.com
Fri Feb 5 22:35:00 GMT 1999


  In message < 199902060610.GAA21300@phal.cygnus.co.uk >you write:
  > For loops like where the current ppc failure is, we got a
  > NOTE_INSN_LOOP_CONT that is quite a few instructions - and givs - after
  > the last label.
Yes.  Similarly for the bug which got me looking at this to start with.  As
far as I can tell this is a relatively common case

  > So if we also had a label after the NOTE_INSN_LOOP_CONT, we'd miss the
  > always_executed for a number of givs.
And more importantly bivs -- which can make it impossible to determine the
number of iterations for the loop.  Which is precisely the problem I fixed.

  > Or maybe in the test if we pass the last label in the loop, use the
  > NOTE_INSN_LOOP_CONT instead of the NOTE_INSN_LOOP_END to delimit the insns
  > where we search for another label.
Clearing not_every_iteration at the last label before the LOOP_CONT note
or at the LOOP_CONT note itself has the same net effect as we'd get if we
moved the notes.


jeff


More information about the Gcc-patches mailing list