# HG changeset patch # User Thomas Wuerthinger # Date 1308235282 -7200 # Node ID de3ac4888421f45fa7846e66a512f19f350190fa # Parent 6da8b9c8cdadf0702a4a09fc165a46b424476ce8 Clean up on ControlSplit class. diff -r 6da8b9c8cdad -r de3ac4888421 graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/gen/LIRGenerator.java --- a/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/gen/LIRGenerator.java Thu Jun 16 16:32:52 2011 +0200 +++ b/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/gen/LIRGenerator.java Thu Jun 16 16:41:22 2011 +0200 @@ -964,10 +964,9 @@ if (rangeDensity >= GraalOptions.RangeTestsSwitchDensity) { visitSwitchRanges(switchRanges, tag, getLIRBlock(x.defaultSuccessor())); } else { - List nonDefaultSuccessors = x.blockSuccessors().subList(0, x.numberOfCases()); - LIRBlock[] targets = new LIRBlock[nonDefaultSuccessors.size()]; - for (int i = 0; i < nonDefaultSuccessors.size(); ++i) { - targets[i] = getLIRBlock(nonDefaultSuccessors.get(i)); + LIRBlock[] targets = new LIRBlock[x.numberOfCases()]; + for (int i = 0; i < x.numberOfCases(); ++i) { + targets[i] = getLIRBlock(x.blockSuccessor(i)); } lir.tableswitch(tag, x.lowKey(), getLIRBlock(x.defaultSuccessor()), targets); } diff -r 6da8b9c8cdad -r de3ac4888421 graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/ControlSplit.java --- a/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/ControlSplit.java Thu Jun 16 16:32:52 2011 +0200 +++ b/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/ControlSplit.java Thu Jun 16 16:41:22 2011 +0200 @@ -82,10 +82,6 @@ this.blockSuccessorCount = blockSuccessorCount; } - public ControlSplit(CiKind kind, Graph graph) { - this(kind, 2, 0, 0, graph); - } - /** * Gets the successor corresponding to the default (fall through) case. * @return the default successor @@ -93,29 +89,4 @@ public FixedNode defaultSuccessor() { return blockSuccessor(blockSuccessorCount - 1); } - - /** - * Searches for the specified successor and returns its index into the - * successor list if found. - * @param b the block to search for in the successor list - * @return the index of the block in the list if found; -1 otherwise - */ - public int successorIndex(Merge b) { - for (int i = 0; i < blockSuccessorCount; i++) { - if (blockSuccessor(i) == b) { - return i; - } - } - return -1; - } - - /** - * Gets this block end's list of successors. - * @return the successor list - */ - @SuppressWarnings({ "unchecked", "rawtypes"}) - public List blockSuccessors() { - List list = (List) successors().subList(super.successorCount() + SUCCESSOR_COUNT, super.successorCount() + blockSuccessorCount + SUCCESSOR_COUNT); - return Collections.unmodifiableList(list); - } } diff -r 6da8b9c8cdad -r de3ac4888421 graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/ExceptionDispatch.java --- a/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/ExceptionDispatch.java Thu Jun 16 16:32:52 2011 +0200 +++ b/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/ExceptionDispatch.java Thu Jun 16 16:41:22 2011 +0200 @@ -115,9 +115,9 @@ print(' '). print(catchType().name()). print(" then "). - print(blockSuccessors().get(1).toString()). + print(catchSuccessor().toString()). print(" else B"). - print(blockSuccessors().get(0).toString()); + print(otherSuccessor().toString()); } @Override diff -r 6da8b9c8cdad -r de3ac4888421 graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/If.java --- a/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/If.java Thu Jun 16 16:32:52 2011 +0200 +++ b/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/If.java Thu Jun 16 16:41:22 2011 +0200 @@ -102,9 +102,9 @@ print(' '). print(compare().y()). print(" then "). - print(blockSuccessors().get(0)). + print(trueSuccessor()). print(" else "). - print(blockSuccessors().get(1)); + print(falseSuccessor()); } @Override diff -r 6da8b9c8cdad -r de3ac4888421 graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/LookupSwitch.java --- a/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/LookupSwitch.java Thu Jun 16 16:32:52 2011 +0200 +++ b/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/LookupSwitch.java Thu Jun 16 16:41:22 2011 +0200 @@ -78,7 +78,7 @@ int l = numberOfCases(); for (int i = 0; i < l; i++) { INSTRUCTION.advance(out); - out.printf("case %5d: B%d%n", keyAt(i), blockSuccessors().get(i)); + out.printf("case %5d: B%d%n", keyAt(i), blockSuccessor(i)); } INSTRUCTION.advance(out); out.print("default : ").print(defaultSuccessor()); diff -r 6da8b9c8cdad -r de3ac4888421 graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/TableSwitch.java --- a/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/TableSwitch.java Thu Jun 16 16:32:52 2011 +0200 +++ b/graal/com.oracle.max.graal.compiler/src/com/oracle/max/graal/compiler/ir/TableSwitch.java Thu Jun 16 16:41:22 2011 +0200 @@ -80,7 +80,7 @@ int l = numberOfCases(); for (int i = 0; i < l; i++) { INSTRUCTION.advance(out); - out.printf("case %5d: B%d%n", lowKey() + i, blockSuccessors().get(i)); + out.printf("case %5d: B%d%n", lowKey() + i, blockSuccessor(i)); } INSTRUCTION.advance(out); out.print("default : ").print(defaultSuccessor());