Mercurial > hg > truffle
diff graal/GraalCompiler/src/com/sun/c1x/gen/PhiSimplifier.java @ 2808:189ffb7d1d84
enable PhiSimplifier, schedule values used in a merge's stateBefore in the dominator
author | Lukas Stadler <lukas.stadler@jku.at> |
---|---|
date | Mon, 30 May 2011 13:42:23 +0200 |
parents | 6d14aa4fbf90 |
children | 015be60afcf3 |
line wrap: on
line diff
--- a/graal/GraalCompiler/src/com/sun/c1x/gen/PhiSimplifier.java Fri May 27 23:47:23 2011 +0200 +++ b/graal/GraalCompiler/src/com/sun/c1x/gen/PhiSimplifier.java Mon May 30 13:42:23 2011 +0200 @@ -45,7 +45,7 @@ } Phi phi = (Phi) x; - if (phi.valueCount() == 1) { + if (phi.valueCount() == 1 && !phi.checkFlag(Value.Flag.PhiCannotSimplify)) { return (Value) phi.replace(phi.valueAt(0)); } @@ -105,6 +105,10 @@ // successfully simplified the phi assert phiSubst != null : "illegal phi function"; phi.clearFlag(Value.Flag.PhiVisited); + + phi.replace(phiSubst); +// System.out.printf("replaced phi with %d inputs\n", max); + return phiSubst; } }