> On Oct 11, 2006, Ian Lance Taylor <[EMAIL PROTECTED]> wrote:
> 
> >> int x; int f() { x = 0;
> >>   while(1); }
> 
> >> We get line number notes for code only up to "x = 0;".
> 
> > I assume this is only a problem when not optimizing.
> 
> The opposite, actually.  It's optimization that breaks it.
> 
> Of course optimization can change stuff and debug info sometimes is
> lost, but in this case we *do* have code for that loop, so we might as
> well try to preserve the line number info somehow.  We shouldn't drop
> it just because we turn annotated-with-line-numbers jumps into
> fallthru edges that later have to be re-emitted without line numbers.
> 
> > Without looking at the code, the problem looks quite similar to one I
> > fixed here:
> 
> It is similar, indeed, but this removal takes place in RTL.

Yep, I guess it is cfglayout just replacing the jump with fresh one.
Adding code to record locators on edges in the same field as tree level
code does already is probably not too dificult.  I can try to get it
done next week...

Honza

Reply via email to