# HG changeset patch # User Lukas Stadler # Date 1331741250 -3600 # Node ID ad00d1d02ed28e3fc994712bcf1f10ed14c4b935 # Parent 2db1ad9dd385ded254df29c879575ac57e557471 change MergeableState to use List instead of Collection diff -r 2db1ad9dd385 -r ad00d1d02ed2 graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/graph/MergeableState.java --- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/graph/MergeableState.java Wed Mar 14 16:57:18 2012 +0100 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/graph/MergeableState.java Wed Mar 14 17:07:30 2012 +0100 @@ -28,8 +28,8 @@ public interface MergeableState { T clone(); - boolean merge(MergeNode merge, Collection withStates); + boolean merge(MergeNode merge, List withStates); void loopBegin(LoopBeginNode loopBegin); - void loopEnds(LoopBeginNode loopBegin, Collection loopEndStates); + void loopEnds(LoopBeginNode loopBegin, List loopEndStates); void afterSplit(FixedNode node); } diff -r 2db1ad9dd385 -r ad00d1d02ed2 graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/ComputeProbabilityPhase.java --- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/ComputeProbabilityPhase.java Wed Mar 14 16:57:18 2012 +0100 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/ComputeProbabilityPhase.java Wed Mar 14 17:07:30 2012 +0100 @@ -180,7 +180,7 @@ } @Override - public boolean merge(MergeNode merge, Collection withStates) { + public boolean merge(MergeNode merge, List withStates) { if (merge.forwardEndCount() > 1) { HashSet intersection = new HashSet<>(loops); for (Probability other : withStates) { @@ -223,7 +223,7 @@ } @Override - public void loopEnds(LoopBeginNode loopBegin, Collection loopEndStates) { + public void loopEnds(LoopBeginNode loopBegin, List loopEndStates) { assert loopInfo != null; List loopEnds = loopBegin.orderedLoopEnds(); int i = 0; @@ -291,7 +291,7 @@ } @Override - public boolean merge(MergeNode merge, Collection withStates) { + public boolean merge(MergeNode merge, List withStates) { assert merge.forwardEndCount() == withStates.size() + 1; if (merge.forwardEndCount() > 1) { Set loops = mergeLoops.get(merge); @@ -311,7 +311,7 @@ } @Override - public void loopEnds(LoopBeginNode loopBegin, Collection loopEndStates) { + public void loopEnds(LoopBeginNode loopBegin, List loopEndStates) { // nothing to do... } diff -r 2db1ad9dd385 -r ad00d1d02ed2 graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/EscapeAnalysisPhase.java --- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/EscapeAnalysisPhase.java Wed Mar 14 16:57:18 2012 +0100 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/phases/EscapeAnalysisPhase.java Wed Mar 14 17:07:30 2012 +0100 @@ -76,7 +76,7 @@ } @Override - public boolean merge(MergeNode merge, Collection withStates) { + public boolean merge(MergeNode merge, List withStates) { PhiNode vobjPhi = null; PhiNode[] valuePhis = new PhiNode[fieldState.length]; for (BlockExitState other : withStates) { @@ -129,7 +129,7 @@ } @Override - public void loopEnds(LoopBeginNode loopBegin, Collection loopEndStates) { + public void loopEnds(LoopBeginNode loopBegin, List loopEndStates) { while (!(virtualObjectField instanceof PhiNode)) { virtualObjectField = ((VirtualObjectFieldNode) virtualObjectField).lastState(); } diff -r 2db1ad9dd385 -r ad00d1d02ed2 graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/schedule/UnscheduleNodes.java --- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/schedule/UnscheduleNodes.java Wed Mar 14 16:57:18 2012 +0100 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/schedule/UnscheduleNodes.java Wed Mar 14 17:07:30 2012 +0100 @@ -33,7 +33,7 @@ public FixedWithNextNode last; @Override - public boolean merge(MergeNode merge, Collection withStates) { + public boolean merge(MergeNode merge, List withStates) { last = null; return true; } @@ -44,7 +44,7 @@ } @Override - public void loopEnds(LoopBeginNode loop, Collection loopEndStates) { + public void loopEnds(LoopBeginNode loop, List loopEndStates) { last = null; } diff -r 2db1ad9dd385 -r ad00d1d02ed2 graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/types/PropagateTypesPhase.java --- a/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/types/PropagateTypesPhase.java Wed Mar 14 16:57:18 2012 +0100 +++ b/graal/com.oracle.graal.compiler/src/com/oracle/graal/compiler/types/PropagateTypesPhase.java Wed Mar 14 17:07:30 2012 +0100 @@ -118,7 +118,7 @@ } @Override - public boolean merge(MergeNode merge, Collection withStates) { + public boolean merge(MergeNode merge, List withStates) { if (merge.forwardEndCount() > 1) { HashMap newPiNodes = new HashMap<>(); for (Entry entry : piNodes.entrySet()) { @@ -148,7 +148,7 @@ } @Override - public void loopEnds(LoopBeginNode loop, Collection loopEndStates) { + public void loopEnds(LoopBeginNode loop, List loopEndStates) { } @Override