summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWei Wang <wangw@codeaurora.org>2014-02-19 00:22:46 -0800
committerSteve Kondik <shade@chemlab.org>2014-03-21 18:29:35 -0700
commitcdf7a375a8e44fad85e90e7234e561088b20a897 (patch)
treeb89203af7c17eb9f39b9863603978ad24eecb744
parent7abfb032393fad97b61c35ec148ca4b58faa5741 (diff)
downloadandroid_dalvik-cdf7a375a8e44fad85e90e7234e561088b20a897.tar.gz
android_dalvik-cdf7a375a8e44fad85e90e7234e561088b20a897.tar.bz2
android_dalvik-cdf7a375a8e44fad85e90e7234e561088b20a897.zip
dalvik: add placeholder for future changes
add placeholder for future changes Change-Id: I09dd704a60857de71cafd7e6b64ee750c5cb95b1
-rw-r--r--vm/compiler/Frontend.cpp8
-rw-r--r--vm/compiler/codegen/arm/CodegenDriver.cpp3
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) {