changeset 16950:559ab93c1ad6

CFGPrinter: do not print empty HIR cfgs.
author Josef Eisl <josef.eisl@jku.at>
date Mon, 25 Aug 2014 19:11:01 +0200
parents 67fd1846f95f
children 57da9b26a327
files graal/com.oracle.graal.printer/src/com/oracle/graal/printer/CFGPrinter.java graal/com.oracle.graal.printer/src/com/oracle/graal/printer/CFGPrinterObserver.java
diffstat 2 files changed, 12 insertions(+), 20 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.printer/src/com/oracle/graal/printer/CFGPrinter.java	Tue Aug 26 16:16:26 2014 +0200
+++ b/graal/com.oracle.graal.printer/src/com/oracle/graal/printer/CFGPrinter.java	Mon Aug 25 19:11:01 2014 +0200
@@ -273,24 +273,20 @@
             }
         }
 
-        // Currently no node printing for lir
-        if (lir == null) {
-            Node cur = block.getBeginNode();
-            while (true) {
-                printNode(cur, false);
+        Node cur = block.getBeginNode();
+        while (true) {
+            printNode(cur, false);
 
-                if (cur == block.getEndNode()) {
-                    for (Map.Entry<Node, Block> entry : latestScheduling.entries()) {
-                        if (entry.getValue() == block && !inFixedSchedule(entry.getKey()) && !printedNodes.isMarked(entry.getKey())) {
-                            printNode(entry.getKey(), true);
-                        }
+            if (cur == block.getEndNode()) {
+                for (Map.Entry<Node, Block> entry : latestScheduling.entries()) {
+                    if (entry.getValue() == block && !inFixedSchedule(entry.getKey()) && !printedNodes.isMarked(entry.getKey())) {
+                        printNode(entry.getKey(), true);
                     }
-                    break;
                 }
-                assert cur.successors().count() == 1;
-                cur = cur.successors().first();
+                break;
             }
-
+            assert cur.successors().count() == 1;
+            cur = cur.successors().first();
         }
 
         out.enableIndentation();
--- a/graal/com.oracle.graal.printer/src/com/oracle/graal/printer/CFGPrinterObserver.java	Tue Aug 26 16:16:26 2014 +0200
+++ b/graal/com.oracle.graal.printer/src/com/oracle/graal/printer/CFGPrinterObserver.java	Mon Aug 25 19:11:01 2014 +0200
@@ -50,7 +50,6 @@
     private JavaMethod curMethod;
     private List<String> curDecorators = Collections.emptyList();
     private final boolean dumpFrontend;
-    private Object previousObject;
 
     public CFGPrinterObserver(boolean dumpFrontend) {
         this.dumpFrontend = dumpFrontend;
@@ -162,10 +161,8 @@
             }
 
         } else if (object instanceof LIR) {
-            // No need to print the HIR nodes again if this is not the first
-            // time dumping the same LIR since the HIR will not have changed.
-            boolean printNodes = previousObject != object && cfgPrinter.cfg != null;
-            cfgPrinter.printCFG(message, cfgPrinter.lir.codeEmittingOrder(), printNodes);
+            // Currently no node printing for lir
+            cfgPrinter.printCFG(message, cfgPrinter.lir.codeEmittingOrder(), false);
 
         } else if (object instanceof SchedulePhase) {
             cfgPrinter.printSchedule(message, (SchedulePhase) object);
@@ -193,7 +190,6 @@
         cfgPrinter.cfg = null;
         cfgPrinter.flush();
 
-        previousObject = object;
     }
 
     private static boolean isCompilationResultAndInstalledCode(Object object) {