comparison graal/GraalCompiler/src/com/sun/c1x/alloc/LinearScan.java @ 2866:7f14e6b48a9c

added dead code elimination added ValueAnchor (temp workaround) more inlining logic (now uses DCE) IdealGraphPrinter: print even if Scheduler fails added inlining and DCE tracing options to C1XOptions
author Lukas Stadler <lukas.stadler@jku.at>
date Tue, 07 Jun 2011 16:27:08 +0200
parents 7596ae867a7b
children
comparison
equal deleted inserted replaced
2845:e55543ff91fd 2866:7f14e6b48a9c
1896 if (compilation.runtime.sizeOfBasicObjectLock() != 0) { 1896 if (compilation.runtime.sizeOfBasicObjectLock() != 0) {
1897 CiStackSlot monitorAddress = frameMap.toMonitorBaseStackAddress(i); 1897 CiStackSlot monitorAddress = frameMap.toMonitorBaseStackAddress(i);
1898 values[valueIndex++] = monitorAddress; 1898 values[valueIndex++] = monitorAddress;
1899 assert frameRefMap != null; 1899 assert frameRefMap != null;
1900 CiStackSlot objectAddress = frameMap.toMonitorObjectStackAddress(i); 1900 CiStackSlot objectAddress = frameMap.toMonitorObjectStackAddress(i);
1901 LIRDebugInfo.setBit(frameRefMap, objectAddress.index()); 1901 // LIRDebugInfo.setBit(frameRefMap, objectAddress.index());
1902 frameRefMap.set(objectAddress.index());
1902 } else { 1903 } else {
1903 Value lock = state.lockAt(i); 1904 Value lock = state.lockAt(i);
1904 if (lock.isConstant() && compilation.runtime.asJavaClass(lock.asConstant()) != null) { 1905 if (lock.isConstant() && compilation.runtime.asJavaClass(lock.asConstant()) != null) {
1905 // lock on class for synchronized static method 1906 // lock on class for synchronized static method
1906 values[valueIndex++] = lock.asConstant(); 1907 values[valueIndex++] = lock.asConstant();