changeset 21313:bb9d3f0616a3

LinearScan: reorganize LIR and Interval dumping.
author Josef Eisl <josef.eisl@jku.at>
date Wed, 06 May 2015 17:37:35 +0200
parents 8ecb442fc864
children 8908ac7d2c86
files graal/com.oracle.graal.lir/src/com/oracle/graal/lir/alloc/lsra/LinearScan.java
diffstat 1 files changed, 6 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/alloc/lsra/LinearScan.java	Wed May 06 17:04:31 2015 +0200
+++ b/graal/com.oracle.graal.lir/src/com/oracle/graal/lir/alloc/lsra/LinearScan.java	Wed May 06 17:37:35 2015 +0200
@@ -1837,16 +1837,14 @@
         try (Indent indent = Debug.logAndIndent("LinearScan allocate")) {
             AllocationContext context = new AllocationContext(spillMoveFactory);
 
-            new LifetimeAnalysis().apply(target, lirGenRes, codeEmittingOrder, linearScanOrder, context);
-            new RegisterAllocation().apply(target, lirGenRes, codeEmittingOrder, linearScanOrder, context);
+            new LifetimeAnalysis().apply(target, lirGenRes, codeEmittingOrder, linearScanOrder, context, false);
+            new RegisterAllocation().apply(target, lirGenRes, codeEmittingOrder, linearScanOrder, context, false);
+
             if (LinearScan.Options.LSRAOptimizeSpillPosition.getValue()) {
-                new OptimizeSpillPosition().apply(target, lirGenRes, codeEmittingOrder, linearScanOrder, context);
+                new OptimizeSpillPosition().apply(target, lirGenRes, codeEmittingOrder, linearScanOrder, context, false);
             }
             new ResolveDataFlow().apply(target, lirGenRes, codeEmittingOrder, linearScanOrder, context);
 
-            printIntervals("After register allocation");
-            printLir("After register allocation", true);
-
             sortIntervalsAfterAllocation();
 
             if (DetailedAsserts.getValue()) {
@@ -1859,8 +1857,6 @@
             if (DetailedAsserts.getValue()) {
                 verifyIntervals();
             }
-
-            printLir("After register number assignment", true);
         }
     }
 
@@ -1886,6 +1882,7 @@
                         SpillMoveFactory spillMoveFactory) {
             printIntervals("Before register allocation");
             allocateRegisters();
+            printIntervals("After register allocation");
         }
 
     }
@@ -1896,6 +1893,7 @@
         protected <B extends AbstractBlockBase<B>> void run(TargetDescription target, LIRGenerationResult lirGenRes, List<B> codeEmittingOrder, List<B> linearScanOrder,
                         SpillMoveFactory spillMoveFactory) {
             optimizeSpillPosition();
+            printIntervals("After optimize spill position");
         }
 
     }
@@ -1917,7 +1915,6 @@
                         SpillMoveFactory spillMoveFactory) {
             beforeSpillMoveElimination();
             eliminateSpillMoves();
-            printLir("After spill move elimination", true);
         }
 
     }