peephole2 vs cond-exec vs df

Paolo Bonzini bonzini@gnu.org
Mon Jun 14 12:28:00 GMT 2010


> Second, I've changed it to use a forward scan.  As far as I am aware, in
> the presence of conditional execution, a forward scan does not need to
> keep track of extra state - it only relies on correct REG_DEAD notes.  I
> don't actually know whether df produces correct death notes in the
> presence of conditional execution (I suspect it does not - can anyone
> say for sure?), but in any case using a forward scan here shifts the
> problem out of recog.c entirely.  Only when performing a substitution do
> we process the new insns in a backward scan, since they won't have
> REG_DEAD notes.

Yes, I thought a bit about it and it seems accurate.  At least I 
couldn't find a counterexample. :)

Paolo



More information about the Gcc-patches mailing list