changeset 18955:bef8b6316627

Do not add proxy nodes of loop exits to the schedule.
author Thomas Wuerthinger <thomas.wuerthinger@oracle.com>
date Mon, 26 Jan 2015 23:30:09 +0100
parents e8a4803f27f0
children 7ce65ad21684
files graal/com.oracle.graal.phases/src/com/oracle/graal/phases/schedule/SchedulePhase.java
diffstat 1 files changed, 1 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/schedule/SchedulePhase.java	Mon Jan 26 23:24:06 2015 +0100
+++ b/graal/com.oracle.graal.phases/src/com/oracle/graal/phases/schedule/SchedulePhase.java	Mon Jan 26 23:30:09 2015 +0100
@@ -1082,12 +1082,6 @@
             stateAfter = ((StateSplit) i).stateAfter();
         }
 
-        if (i instanceof LoopExitNode) {
-            for (ProxyNode proxy : ((LoopExitNode) i).proxies()) {
-                addToLatestSorting(proxy, state);
-            }
-        }
-
         for (Node input : i.inputs()) {
             if (input instanceof FrameState) {
                 if (input != stateAfter) {
@@ -1159,20 +1153,12 @@
             }
 
             if (instruction instanceof BeginNode) {
-                ArrayList<ProxyNode> proxies = (instruction instanceof LoopExitNode) ? new ArrayList<>() : null;
                 for (ValueNode inBlock : blockToNodesMap.get(b)) {
                     if (!visited.isMarked(inBlock)) {
-                        if (inBlock instanceof ProxyNode) {
-                            proxies.add((ProxyNode) inBlock);
-                        } else {
-                            addToEarliestSorting(b, inBlock, sortedInstructions, visited);
-                        }
+                        addToEarliestSorting(b, inBlock, sortedInstructions, visited);
                     }
                 }
                 sortedInstructions.add(instruction);
-                if (proxies != null) {
-                    sortedInstructions.addAll(proxies);
-                }
                 break;
             } else {
                 sortedInstructions.add(instruction);