# HG changeset patch # User Lukas Stadler # Date 1406109227 -7200 # Node ID 342fe74e3b90f52cbb8de2564972cfe12306f08c # Parent 0eb70f622d014bb59c8b2b9d677f63fbf00aa379 prefer predecessor frame states at merges diff -r 0eb70f622d01 -r 342fe74e3b90 graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/FrameStateAssignmentPhase.java --- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/FrameStateAssignmentPhase.java Fri Jul 18 00:33:37 2014 +0200 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/FrameStateAssignmentPhase.java Wed Jul 23 11:53:47 2014 +0200 @@ -89,7 +89,8 @@ @Override protected FrameState merge(MergeNode merge, List states) { - return merge.stateAfter() != null ? merge.stateAfter() : singleFrameState(merge, states); + FrameState singleFrameState = singleFrameState(states); + return singleFrameState == null ? merge.stateAfter() : singleFrameState; } @Override @@ -123,7 +124,7 @@ return true; } - private static FrameState singleFrameState(@SuppressWarnings("unused") MergeNode merge, List states) { + private static FrameState singleFrameState(List states) { FrameState singleState = states.get(0); for (int i = 1; i < states.size(); ++i) { if (states.get(i) != singleState) {