diff graal/GraalCompiler/src/com/sun/c1x/ir/BlockEnd.java @ 2621:dd115f80acf8

changed stateAfter FrameState to successor (instead of input), checkstyle fixes, added fixed root node to graph
author Lukas Stadler <lukas.stadler@jku.at>
date Tue, 10 May 2011 11:55:12 +0200
parents 3558ca7088c0
children 8e44074058af
line wrap: on
line diff
--- a/graal/GraalCompiler/src/com/sun/c1x/ir/BlockEnd.java	Mon May 09 19:12:55 2011 +0200
+++ b/graal/GraalCompiler/src/com/sun/c1x/ir/BlockEnd.java	Tue May 10 11:55:12 2011 +0200
@@ -34,9 +34,10 @@
  */
 public abstract class BlockEnd extends Instruction {
 
-    private static final int INPUT_COUNT = 1;
-    private static final int INPUT_STATE_AFTER = 0;
+    private static final int INPUT_COUNT = 0;
 
+    private static final int SUCCESSOR_COUNT = 1;
+    private static final int SUCCESSOR_STATE_AFTER = 0;
     private final int blockSuccessorCount;
 
     @Override
@@ -46,7 +47,7 @@
 
     @Override
     protected int successorCount() {
-        return super.successorCount() + blockSuccessorCount;
+        return super.successorCount() + blockSuccessorCount + SUCCESSOR_COUNT;
     }
 
     /**
@@ -54,23 +55,24 @@
      */
      @Override
     public FrameState stateAfter() {
-        return (FrameState) inputs().get(super.inputCount() + INPUT_STATE_AFTER);
+        return (FrameState) successors().get(super.successorCount() + SUCCESSOR_STATE_AFTER);
     }
 
     public FrameState setStateAfter(FrameState n) {
-        return (FrameState) inputs().set(super.inputCount() + INPUT_STATE_AFTER, n);
+        return (FrameState) successors().set(super.successorCount() + SUCCESSOR_STATE_AFTER, n);
     }
+
     /**
      * The list of instructions that produce input for this instruction.
      */
     public BlockBegin blockSuccessor(int index) {
         assert index >= 0 && index < blockSuccessorCount;
-        return (BlockBegin) successors().get(super.successorCount() + index);
+        return (BlockBegin) successors().get(super.successorCount() + SUCCESSOR_COUNT + index);
     }
 
     public BlockBegin setBlockSuccessor(int index, BlockBegin n) {
         assert index >= 0 && index < blockSuccessorCount;
-        return (BlockBegin) successors().set(super.successorCount() + index, n);
+        return (BlockBegin) successors().set(super.successorCount() + SUCCESSOR_COUNT + index, n);
     }
 
     public int blockSuccessorCount() {
@@ -95,7 +97,7 @@
     }
 
     public BlockEnd(CiKind kind, FrameState stateAfter, boolean isSafepoint, int blockSuccessorCount, int inputCount, int successorCount, Graph graph) {
-        super(kind, inputCount + INPUT_COUNT, successorCount + blockSuccessorCount, graph);
+        super(kind, inputCount + INPUT_COUNT, successorCount + blockSuccessorCount + SUCCESSOR_COUNT, graph);
         this.blockSuccessorCount = blockSuccessorCount;
         setStateAfter(stateAfter);
         this.isSafepoint = isSafepoint;
@@ -174,7 +176,7 @@
      * @return the successor list
      */
     public List<BlockBegin> blockSuccessors() {
-        List<BlockBegin> list = (List) successors().subList(super.successorCount(), super.successorCount() + blockSuccessorCount);
+        List<BlockBegin> list = (List) successors().subList(super.successorCount() + SUCCESSOR_COUNT, super.successorCount() + blockSuccessorCount + SUCCESSOR_COUNT);
         return Collections.unmodifiableList(list);
     }