diff graal/GraalCompiler/src/com/sun/c1x/ir/BlockBegin.java @ 2622:91d3952f7eb7

Framestate work : using stateAFter and reducting the number of nodes with framestates. Intermediate state (does not pass tests)
author Gilles Duboscq <gilles.duboscq@oracle.com>
date Tue, 10 May 2011 12:37:46 +0200
parents dd115f80acf8
children 62ff4a70f07e
line wrap: on
line diff
--- a/graal/GraalCompiler/src/com/sun/c1x/ir/BlockBegin.java	Tue May 10 11:55:12 2011 +0200
+++ b/graal/GraalCompiler/src/com/sun/c1x/ir/BlockBegin.java	Tue May 10 12:37:46 2011 +0200
@@ -60,7 +60,6 @@
     /**
      * The frame state before execution of the first instruction in this block.
      */
-     @Override
     public FrameState stateBefore() {
         return (FrameState) inputs().get(super.inputCount() + INPUT_STATE_BEFORE);
     }
@@ -128,6 +127,8 @@
      */
     private int blockFlags;
 
+    private FrameState stateAfter;
+
     /**
      * The {@link BlockBegin} nodes for which this node is a successor.
      */
@@ -217,6 +218,15 @@
         return loopIndex;
     }
 
+    public void setStateAfter(FrameState stateAfter) {
+        this.stateAfter = stateAfter;
+    }
+
+    @Override
+    public FrameState stateAfter() {
+        return stateAfter;
+    }
+
     /**
      * Gets the exception handlers that cover one or more instructions of this basic block.
      *