Mercurial > hg > truffle
comparison graal/GraalCompiler/src/com/sun/c1x/alloc/LinearScan.java @ 2564:274360f98f97
Remove inlining (2nd part) removed IRScope
author | Gilles Duboscq <gilles.duboscq@oracle.com> |
---|---|
date | Fri, 29 Apr 2011 13:19:17 +0200 |
parents | e1b3db8031ee |
children | cc1f1d396288 |
comparison
equal
deleted
inserted
replaced
2563:491896f81cae | 2564:274360f98f97 |
---|---|
2082 return CiValue.IllegalValue; | 2082 return CiValue.IllegalValue; |
2083 } | 2083 } |
2084 } | 2084 } |
2085 | 2085 |
2086 CiFrame computeFrameForState(int opId, FrameState state, CiBitMap frameRefMap) { | 2086 CiFrame computeFrameForState(int opId, FrameState state, CiBitMap frameRefMap) { |
2087 CiFrame callerFrame = null; | |
2088 | |
2089 FrameState callerState = state.callerState(); | |
2090 if (callerState != null) { | |
2091 // process recursively to compute outermost scope first | |
2092 callerFrame = computeFrameForState(opId, callerState, frameRefMap); | |
2093 } | |
2094 | |
2095 CiValue[] values = new CiValue[state.valuesSize() + state.locksSize()]; | 2087 CiValue[] values = new CiValue[state.valuesSize() + state.locksSize()]; |
2096 int valueIndex = 0; | 2088 int valueIndex = 0; |
2097 | 2089 |
2098 for (int i = 0; i < state.valuesSize(); i++) { | 2090 for (int i = 0; i < state.valuesSize(); i++) { |
2099 values[valueIndex++] = toCiValue(opId, state.valueAt(i)); | 2091 values[valueIndex++] = toCiValue(opId, state.valueAt(i)); |
2115 values[valueIndex++] = toCiValue(opId, lock); | 2107 values[valueIndex++] = toCiValue(opId, lock); |
2116 } | 2108 } |
2117 } | 2109 } |
2118 } | 2110 } |
2119 | 2111 |
2120 return new CiFrame(callerFrame, state.scope().method, state.bci, values, state.localsSize(), state.stackSize(), state.locksSize()); | 2112 return new CiFrame(null, state.method, state.bci, values, state.localsSize(), state.stackSize(), state.locksSize()); |
2121 } | 2113 } |
2122 | 2114 |
2123 private void computeDebugInfo(IntervalWalker iw, LIRInstruction op) { | 2115 private void computeDebugInfo(IntervalWalker iw, LIRInstruction op) { |
2124 assert iw != null : "interval walker needed for debug information"; | 2116 assert iw != null : "interval walker needed for debug information"; |
2125 computeDebugInfo(iw, op, op.info); | 2117 computeDebugInfo(iw, op, op.info); |