changeset 16349:5a3351bb88a8

Minor refactoring in LoopFragment.mergeEarlyExits to improve readability
author Gilles Duboscq <duboscq@ssw.jku.at>
date Tue, 01 Jul 2014 18:08:19 +0200
parents fefb82b01d6f
children 6055f84e41d7
files graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopFragment.java
diffstat 1 files changed, 4 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopFragment.java	Fri Jun 27 11:50:07 2014 +0200
+++ b/graal/com.oracle.graal.loop/src/com/oracle/graal/loop/LoopFragment.java	Tue Jul 01 18:08:19 2014 +0200
@@ -322,21 +322,20 @@
             merge.setNext(next);
 
             FrameState exitState = loopEarlyExit.stateAfter();
-            FrameState state = null;
             if (exitState != null) {
-                state = exitState;
+                FrameState originalExitState = exitState;
                 exitState = exitState.duplicateWithVirtualState();
                 loopEarlyExit.setStateAfter(exitState);
-                merge.setStateAfter(state);
+                merge.setStateAfter(originalExitState);
                 /*
                  * Using the old exit's state as the merge's state is necessary because some of the
                  * VirtualState nodes contained in the old exit's state may be shared by other
                  * dominated VirtualStates. Those dominated virtual states need to see the
                  * proxy->phi update that are applied below.
-                 *
+                 * 
                  * We now update the original fragment's nodes accordingly:
                  */
-                state.applyToVirtual(node -> original.nodes.clearAndGrow(node));
+                originalExitState.applyToVirtual(node -> original.nodes.clearAndGrow(node));
                 exitState.applyToVirtual(node -> original.nodes.markAndGrow(node));
             }
             FrameState finalExitState = exitState;