Mercurial > hg > truffle
diff graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java @ 5859:16c3284c94cd
Try an iterative version of CheckCastElimination + Canonicalization
author | Gilles Duboscq <duboscq@ssw.jku.at> |
---|---|
date | Thu, 19 Jul 2012 00:27:17 +0200 |
parents | 421e767d8038 |
children | 59f209dd356b |
line wrap: on
line diff
--- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java Wed Jul 18 13:49:51 2012 -0700 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java Thu Jul 19 00:27:17 2012 +0200 @@ -140,12 +140,8 @@ new PropagateTypeCachePhase(target, runtime, assumptions).apply(graph); } - if (GraalOptions.CheckCastElimination) { - new CheckCastEliminationPhase().apply(graph); - } - - if (GraalOptions.OptCanonicalizer) { - new CanonicalizerPhase(target, runtime, assumptions).apply(graph); + if (GraalOptions.CheckCastElimination && GraalOptions.OptCanonicalizer) { + new IterativeCheckCastEliminationPhase(target, runtime, assumptions).apply(graph); } } @@ -199,11 +195,8 @@ } new RemoveValueProxyPhase().apply(graph); - if (GraalOptions.CheckCastElimination) { - new CheckCastEliminationPhase().apply(graph); - } - if (GraalOptions.OptCanonicalizer) { - new CanonicalizerPhase(target, runtime, assumptions).apply(graph); + if (GraalOptions.CheckCastElimination && GraalOptions.OptCanonicalizer) { + new IterativeCheckCastEliminationPhase(target, runtime, assumptions).apply(graph); } plan.runPhases(PhasePosition.MID_LEVEL, graph);