Mercurial > hg > graal-compiler
changeset 7496:57e651659b4d
Fix for lock elimination phase.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Thu, 17 Jan 2013 00:41:44 +0100 |
parents | bf7a1be7c709 |
children | 0f8c6dbf68be |
files | graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LockEliminationPhase.java |
diffstat | 1 files changed, 2 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LockEliminationPhase.java Thu Jan 17 00:24:36 2013 +0100 +++ b/graal/com.oracle.graal.phases.common/src/com/oracle/graal/phases/common/LockEliminationPhase.java Thu Jan 17 00:41:44 2013 +0100 @@ -37,8 +37,9 @@ if (next instanceof MonitorEnterNode) { MonitorEnterNode monitorEnterNode = (MonitorEnterNode) next; if (monitorEnterNode.object() == node.object()) { + FixedNode monitorEnterSuccessor = monitorEnterNode.next(); monitorEnterNode.setNext(null); - ((FixedWithNextNode) node.predecessor()).setNext(monitorEnterNode.next()); + ((FixedWithNextNode) node.predecessor()).setNext(monitorEnterSuccessor); FrameState stateAfterFirst = node.stateAfter(); FrameState stateAfterSecond = monitorEnterNode.stateAfter(); node.safeDelete();