aboutsummaryrefslogtreecommitdiff
path: root/vm/compiler/codegen/arm/CodegenDriver.cpp
diff options
context:
space:
mode:
authorRicardo Cerqueira <cyanogenmod@cerqueira.org>2013-11-01 17:26:45 +0000
committerRicardo Cerqueira <cyanogenmod@cerqueira.org>2013-11-01 17:26:45 +0000
commit9003fb0f7b8a0c9375e9096871d081ada497859d (patch)
treef841d6101f897d393ef5098edd54f6ea226142ef /vm/compiler/codegen/arm/CodegenDriver.cpp
parent50ebe16b94a0d6e946146b55ad92b4ae1e28bf48 (diff)
parent6e21232cf2bca0e73bd418413564cb140ab9ccbd (diff)
Merge tag 'android-4.4_r1' into cm-11.0
Android 4.4 Release 1.0
Diffstat (limited to 'vm/compiler/codegen/arm/CodegenDriver.cpp')
-rw-r--r--vm/compiler/codegen/arm/CodegenDriver.cpp5
1 files changed, 1 insertions, 4 deletions
diff --git a/vm/compiler/codegen/arm/CodegenDriver.cpp b/vm/compiler/codegen/arm/CodegenDriver.cpp
index 1585aa0d0..de53b00fb 100644
--- a/vm/compiler/codegen/arm/CodegenDriver.cpp
+++ b/vm/compiler/codegen/arm/CodegenDriver.cpp
@@ -2257,10 +2257,7 @@ static bool handleEasyMultiply(CompilationUnit *cUnit,
} else {
// Reverse subtract: (src << (shift + 1)) - src.
assert(powerOfTwoMinusOne);
- // TODO: rsb dst, src, src lsl#lowestSetBit(lit + 1)
- int tReg = dvmCompilerAllocTemp(cUnit);
- opRegRegImm(cUnit, kOpLsl, tReg, rlSrc.lowReg, lowestSetBit(lit + 1));
- opRegRegReg(cUnit, kOpSub, rlResult.lowReg, tReg, rlSrc.lowReg);
+ genMultiplyByShiftAndReverseSubtract(cUnit, rlSrc, rlResult, lowestSetBit(lit + 1));
}
storeValue(cUnit, rlDest, rlResult);
return true;