Mercurial > hg > truffle
changeset 16583:342fe74e3b90
prefer predecessor frame states at merges
author | Lukas Stadler <lukas.stadler@oracle.com> |
---|---|
date | Wed, 23 Jul 2014 11:53:47 +0200 |
parents | 0eb70f622d01 |
children | ab84673bedc2 |
files | graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/FrameStateAssignmentPhase.java |
diffstat | 1 files changed, 3 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- 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<FrameState> 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<FrameState> states) { + private static FrameState singleFrameState(List<FrameState> states) { FrameState singleState = states.get(0); for (int i = 1; i < states.size(); ++i) { if (states.get(i) != singleState) {