# HG changeset patch # User Lukas Stadler # Date 1349444380 -7200 # Node ID feabae0d6bdc37fbf08c234caa3b6c40d96644fe # Parent ea845fd3c82037bdaee8957ce3f34e0af9edc1b0 move TailDuplication to before lowering and escape analysis diff -r ea845fd3c820 -r feabae0d6bdc graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java --- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java Fri Oct 05 15:17:27 2012 +0200 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/GraalCompiler.java Fri Oct 05 15:39:40 2012 +0200 @@ -147,6 +147,13 @@ } } + if (GraalOptions.OptTailDuplication) { + new TailDuplicationPhase().apply(graph); + if (GraalOptions.OptCanonicalizer) { + new CanonicalizerPhase(target, runtime, assumptions).apply(graph); + } + } + if (GraalOptions.PartialEscapeAnalysis && !plan.isPhaseDisabled(PartialEscapeAnalysisPhase.class)) { new PartialEscapeAnalysisPhase(target, runtime, assumptions).apply(graph); } @@ -159,13 +166,6 @@ new LoweringPhase(runtime, assumptions).apply(graph); - if (GraalOptions.OptTailDuplication) { - new TailDuplicationPhase().apply(graph); - if (GraalOptions.OptCanonicalizer) { - new CanonicalizerPhase(target, runtime, assumptions).apply(graph); - } - } - if (GraalOptions.CullFrameStates) { new CullFrameStatesPhase().apply(graph); }