diff options
author | Steve Kondik <shade@chemlab.org> | 2014-09-01 22:21:52 -0700 |
---|---|---|
committer | Steve Kondik <shade@chemlab.org> | 2014-09-14 02:32:52 -0700 |
commit | b076fcf9afc59e8f307eb38915161dc47c1b9e91 (patch) | |
tree | fe85ec5af972872b106706a9a09159f2cc0148bd | |
parent | 8c547152aa28f6976f2fff730acc52b6be067d78 (diff) | |
download | android_dalvik-b076fcf9afc59e8f307eb38915161dc47c1b9e91.tar.gz android_dalvik-b076fcf9afc59e8f307eb38915161dc47c1b9e91.tar.bz2 android_dalvik-b076fcf9afc59e8f307eb38915161dc47c1b9e91.zip |
Revert "Revert "dalvik: add placeholder for future changes""
This reverts commit cd2251b84a8c15d970267b77e8116ee0b26289e0.
Change-Id: I399e390fbd1e42b935f1e4ac9d905a9d1e635e96
-rw-r--r-- | vm/compiler/Frontend.cpp | 8 | ||||
-rw-r--r-- | vm/compiler/codegen/arm/CodegenDriver.cpp | 3 |
2 files changed, 10 insertions, 1 deletions
diff --git a/vm/compiler/Frontend.cpp b/vm/compiler/Frontend.cpp index 65ef1ebd9..3cebe8238 100644 --- a/vm/compiler/Frontend.cpp +++ b/vm/compiler/Frontend.cpp @@ -1484,6 +1484,11 @@ static bool exhaustTrace(CompilationUnit *cUnit, BasicBlock *curBlock) return true; } +/* placeholder of future passes */ +__attribute__((weak)) void dvmExtraPass(CompilationUnit *cUnit) +{ +} + /* Compile a loop */ static bool compileLoop(CompilationUnit *cUnit, unsigned int startOffset, JitTraceDescription *desc, int numMaxInsts, @@ -1574,12 +1579,15 @@ static bool compileLoop(CompilationUnit *cUnit, unsigned int startOffset, dvmCompilerLoopOpt(cUnit); + /* * Change the backward branch to the backward chaining cell after dataflow * analsys/optimizations are done. */ dvmCompilerInsertBackwardChaining(cUnit); + dvmExtraPass(cUnit); + #if defined(ARCH_IA32) /* Convert MIR to LIR, etc. */ dvmCompilerMIR2LIR(cUnit, info); diff --git a/vm/compiler/codegen/arm/CodegenDriver.cpp b/vm/compiler/codegen/arm/CodegenDriver.cpp index 93ea6133a..fde74efbb 100644 --- a/vm/compiler/codegen/arm/CodegenDriver.cpp +++ b/vm/compiler/codegen/arm/CodegenDriver.cpp @@ -4417,7 +4417,8 @@ void dvmCompilerMIR2LIR(CompilationUnit *cUnit) * Append the label pseudo LIR first. Chaining cells will be handled * separately afterwards. */ - dvmCompilerAppendLIR(cUnit, (LIR *) &labelList[i]); + if(bb->blockType != kDalvikByteCode || !bb->hidden) + dvmCompilerAppendLIR(cUnit, (LIR *) &labelList[i]); } if (bb->blockType == kEntryBlock) { |