Mercurial > hg > graal-compiler
changeset 16350:6055f84e41d7
LoopFragmentInside: make sure no dead phi are left after phis have been rewritten
author | Gilles Duboscq <duboscq@ssw.jku.at> |
---|---|
date | Tue, 01 Jul 2014 18:10:27 +0200 |
parents | 5a3351bb88a8 |
children | 3e341c30e5c0 |
files | graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopFragmentInside.java |
diffstat | 1 files changed, 7 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopFragmentInside.java Tue Jul 01 18:08:19 2014 +0200 +++ b/graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopFragmentInside.java Tue Jul 01 18:10:27 2014 +0200 @@ -32,6 +32,7 @@ import com.oracle.graal.graph.iterators.*; import com.oracle.graal.nodes.*; import com.oracle.graal.nodes.VirtualState.NodeClosure; +import com.oracle.graal.nodes.util.*; public class LoopFragmentInside extends LoopFragment { @@ -250,6 +251,12 @@ } } } + + for (PhiNode deadPhi : loopBegin.phis().filter(n -> n.usages().isEmpty()).snapshot()) { + if (deadPhi.isAlive()) { + GraphUtil.killWithUnusedFloatingInputs(deadPhi); + } + } } /**