diff options
author | Vladimir Marko <vmarko@google.com> | 2014-11-25 16:32:34 +0000 |
---|---|---|
committer | Vladimir Marko <vmarko@google.com> | 2014-12-03 12:27:16 +0000 |
commit | a29f698b1754ee0ea2f46b6f5900e0da840dff79 (patch) | |
tree | fb4f765eac0495c5422f4bd542f120320e1fa3a4 /compiler/dex/quick/arm/codegen_arm.h | |
parent | bbba809a680fa7ad030da351e92786848d63b9bf (diff) | |
download | android_art-a29f698b1754ee0ea2f46b6f5900e0da840dff79.tar.gz android_art-a29f698b1754ee0ea2f46b6f5900e0da840dff79.tar.bz2 android_art-a29f698b1754ee0ea2f46b6f5900e0da840dff79.zip |
Implement InexpensiveConstantInt(., opcode) for ARM.
Fix kThumb2{Add,Sub}RRI12 to be used for their full range.
Add ORN for completeness.
Change-Id: I49a51541fa9ea085d4674b9131d8dd94da5337f3
Diffstat (limited to 'compiler/dex/quick/arm/codegen_arm.h')
-rw-r--r-- | compiler/dex/quick/arm/codegen_arm.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/compiler/dex/quick/arm/codegen_arm.h b/compiler/dex/quick/arm/codegen_arm.h index e8d0c32ffd..0bc4c3b7bf 100644 --- a/compiler/dex/quick/arm/codegen_arm.h +++ b/compiler/dex/quick/arm/codegen_arm.h @@ -250,10 +250,11 @@ class ArmMir2Lir FINAL : public Mir2Lir { int EncodeShift(int code, int amount); int ModifiedImmediate(uint32_t value); ArmConditionCode ArmConditionEncoding(ConditionCode code); - bool InexpensiveConstantInt(int32_t value); - bool InexpensiveConstantFloat(int32_t value); - bool InexpensiveConstantLong(int64_t value); - bool InexpensiveConstantDouble(int64_t value); + bool InexpensiveConstantInt(int32_t value) OVERRIDE; + bool InexpensiveConstantInt(int32_t value, Instruction::Code opcode) OVERRIDE; + bool InexpensiveConstantFloat(int32_t value) OVERRIDE; + bool InexpensiveConstantLong(int64_t value) OVERRIDE; + bool InexpensiveConstantDouble(int64_t value) OVERRIDE; RegStorage AllocPreservedDouble(int s_reg); RegStorage AllocPreservedSingle(int s_reg); |