On Wed, Mar 27, 2019 at 09:24:46AM -0600, Jeff Law wrote:
> > 2) another thing I've noticed today, we queue up the debug insn changes,
> > but if we iterate the second time for any bb, we overwrite and thus lose any
> > of the debug insn queued changes from the first iteration, so those changes
> > aren't applied (wrong-debug?)
> This is actually what worries me, both with the current bits and with
> any bits that change to a worklist of blocks to reprocess.  As is I
> think we preserve the debug stuff across the iterations which should
> keep debug info correct.  Managing that in a world where we queue up the
> iteration step is going to be tougher.

The patch I've posted would do df_analyze, all bbs once, then df_analyze,
process queued debug changes, and if anything needs to be repeated (just
once), redo the bbs from worklist and repeat the above.
That seems to me the easiest way to get rid of the per-bb df_analyze calls
as well as fixing the debug stuff.  Because otherwise, we'd need to somehow
merge the queued debug insns from the first and second pass and figure out
how to deal with that.

        Jakub

Reply via email to