diff options
| author | 2012-09-09 14:41:03 -0700 | |
|---|---|---|
| committer | 2012-09-09 14:41:03 -0700 | |
| commit | 1a0806c6847a9dc5cc6d73460d7e8ad3183b5c49 (patch) | |
| tree | 380a8b0796e3ee94072457013de1ad8e94e9a287 /src/compiler/codegen/MethodCodegenDriver.cc | |
| parent | 324e190e9de0d81d39d88474e189acef9b10bcc8 (diff) | |
| parent | d1643e41ef242ae656f667bf3c8b0324635cefd3 (diff) | |
Merge "Basic block combine pass" into dalvik-dev
Diffstat (limited to 'src/compiler/codegen/MethodCodegenDriver.cc')
| -rw-r--r-- | src/compiler/codegen/MethodCodegenDriver.cc | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/src/compiler/codegen/MethodCodegenDriver.cc b/src/compiler/codegen/MethodCodegenDriver.cc index b4e14ce52a..e76834d7c6 100644 --- a/src/compiler/codegen/MethodCodegenDriver.cc +++ b/src/compiler/codegen/MethodCodegenDriver.cc @@ -881,14 +881,7 @@ bool methodBlockCodeGen(CompilationUnit* cUnit, BasicBlock* bb) oatResetRegPool(cUnit); oatResetDefTracking(cUnit); - /* - * If control reached us from our immediate predecessor via - * fallthrough and we have no other incoming arcs we can - * reuse existing liveness. Otherwise, reset. - */ - if (!bb->fallThroughTarget || bb->predecessors->numUsed != 1) { - oatClobberAllRegs(cUnit); - } + oatClobberAllRegs(cUnit); LIR* headLIR = NULL; @@ -922,9 +915,7 @@ bool methodBlockCodeGen(CompilationUnit* cUnit, BasicBlock* bb) /* Mark the beginning of a Dalvik instruction for line tracking */ char* instStr = cUnit->printMe ? oatGetDalvikDisassembly(cUnit, mir->dalvikInsn, "") : NULL; - boundaryLIR = newLIR1(cUnit, kPseudoDalvikByteCodeBoundary, - (intptr_t) instStr); - cUnit->boundaryMap.Overwrite(mir->offset, boundaryLIR); + boundaryLIR = markBoundary(cUnit, mir->offset, instStr); /* Remember the first LIR for this block */ if (headLIR == NULL) { headLIR = boundaryLIR; |