[tree-ssa] CCP inefficiencies
Diego Novillo
dnovillo@redhat.com
Fri Feb 14 14:43:00 GMT 2003
On Fri, 14 Feb 2003, Jeff Law wrote:
> Ping-ponging isn't allowed.
>
Of course not. Not only it's not allowed, it's impossible. The
algorigthm is designed to only make state changes that move up
the lattice, you cannot transition down. I didn't want to imply
ping-pong effects. My point was that once folded, an expression
may need to be unfolded.
> CONSTANT->CONSTANT is not allowed (which is
> something your code gets wrong).
>
C -> C is not a state change. How can we get it wrong? Are you
saying that there are cases where we transition sideways in the
lattice? We can switch a variable from one constant value C1 to
different constant value C2? Eek, that shouldn't. Do you have a
testcase?
> A non-destructive folder will handle this just fine.
>
Well, of course, that's the point :) Do you think we should
re-implement fold()? I think may_fold_p() should be good enough
for the time being. But if you want to implement a
non-destructive folder, that's also fine with me.
Diego.
More information about the Gcc
mailing list