changeset 21803:30b03297ba94

change phase order (ConvertDeoptimizeToGuard earlier, PEA after loop peeling/unswitching)
author Lukas Stadler <lukas.stadler@oracle.com>
date Tue, 09 Jun 2015 11:06:32 +0200
parents 82d9b136fe5c
children 1965441ace7b
files graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/HighTier.java
diffstat 1 files changed, 9 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/HighTier.java	Tue Jun 09 10:32:54 2015 +0200
+++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/HighTier.java	Tue Jun 09 11:06:32 2015 +0200
@@ -67,16 +67,12 @@
 
         appendPhase(new CleanTypeProfileProxyPhase(canonicalizer));
 
-        if (FullUnroll.getValue()) {
-            appendPhase(new LoopFullUnrollPhase(canonicalizer));
+        if (OptConvertDeoptsToGuards.getValue()) {
+            appendPhase(new ConvertDeoptimizeToGuardPhase());
         }
 
-        if (PartialEscapeAnalysis.getValue()) {
-            appendPhase(new PartialEscapePhase(true, canonicalizer));
-        }
-
-        if (OptConvertDeoptsToGuards.getValue()) {
-            appendPhase(new ConvertDeoptimizeToGuardPhase());
+        if (FullUnroll.getValue()) {
+            appendPhase(new LoopFullUnrollPhase(canonicalizer));
         }
 
         if (OptLoopTransform.getValue()) {
@@ -87,12 +83,16 @@
                 appendPhase(new LoopUnswitchingPhase());
             }
         }
-        appendPhase(new RemoveValueProxyPhase());
 
         if (OptCanonicalizer.getValue()) {
             appendPhase(canonicalizer);
         }
 
+        if (PartialEscapeAnalysis.getValue()) {
+            appendPhase(new PartialEscapePhase(true, canonicalizer));
+        }
+        appendPhase(new RemoveValueProxyPhase());
+
         appendPhase(new LoweringPhase(canonicalizer, LoweringTool.StandardLoweringStage.HIGH_TIER));
     }
 }