Mercurial > hg > graal-compiler
comparison graal/GraalCompiler/src/com/sun/c1x/graph/GraphBuilder.java @ 2615:5768534fd4e5
Fixed merge regression around genMonitorEnter.
author | Thomas Wuerthinger <thomas@wuerthinger.net> |
---|---|
date | Mon, 09 May 2011 14:11:13 +0200 |
parents | 2523de4d378e |
children | 3558ca7088c0 |
comparison
equal
deleted
inserted
replaced
2614:dfb1a952a203 | 2615:5768534fd4e5 |
---|---|
1041 MonitorAddress lockAddress = null; | 1041 MonitorAddress lockAddress = null; |
1042 if (compilation.runtime.sizeOfBasicObjectLock() != 0) { | 1042 if (compilation.runtime.sizeOfBasicObjectLock() != 0) { |
1043 lockAddress = new MonitorAddress(lockNumber, graph); | 1043 lockAddress = new MonitorAddress(lockNumber, graph); |
1044 append(lockAddress); | 1044 append(lockAddress); |
1045 } | 1045 } |
1046 MonitorEnter monitorEnter = new MonitorEnter(x, lockAddress, lockNumber, null, graph); | 1046 frameState.push(CiKind.Object, x); |
1047 MonitorEnter monitorEnter = new MonitorEnter(x, lockAddress, lockNumber, frameState.create(bci()), graph); | |
1048 frameState.apop(); | |
1047 appendWithoutOptimization(monitorEnter, bci); | 1049 appendWithoutOptimization(monitorEnter, bci); |
1048 frameState.lock(ir, x, lockNumber + 1); | 1050 frameState.lock(ir, x, lockNumber + 1); |
1049 monitorEnter.setStateAfter(frameState.create(bci)); | 1051 monitorEnter.setStateAfter(frameState.create(bci)); |
1050 killMemoryMap(); // prevent any optimizations across synchronization | 1052 killMemoryMap(); // prevent any optimizations across synchronization |
1051 } | 1053 } |