diff options
| author | 2015-10-30 18:19:41 +0000 | |
|---|---|---|
| committer | 2015-10-30 18:19:41 +0000 | |
| commit | 2ad64dc4d6ac35e55a9a1d1883d11cc38ea6004a (patch) | |
| tree | 284112345185cd3ef21feaeaa6060606cfbbbda8 /compiler/utils/arm/assembler_arm32.h | |
| parent | 628f19f224e9f305425fced14096d118345241a3 (diff) | |
| parent | c74e69f831608964f89ac7a641fbcc09156eefaa (diff) | |
Merge "ART: Arm32 packed-switch jump tables"
am: c74e69f831
* commit 'c74e69f831608964f89ac7a641fbcc09156eefaa':
ART: Arm32 packed-switch jump tables
Diffstat (limited to 'compiler/utils/arm/assembler_arm32.h')
| -rw-r--r-- | compiler/utils/arm/assembler_arm32.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/compiler/utils/arm/assembler_arm32.h b/compiler/utils/arm/assembler_arm32.h index 4646538716..5233dcbbb0 100644 --- a/compiler/utils/arm/assembler_arm32.h +++ b/compiler/utils/arm/assembler_arm32.h @@ -261,6 +261,8 @@ class Arm32Assembler FINAL : public ArmAssembler { void AddConstant(Register rd, Register rn, int32_t value, Condition cond = AL, SetCc set_cc = kCcDontCare) OVERRIDE; + void CmpConstant(Register rn, int32_t value, Condition cond = AL) OVERRIDE; + // Load and Store. May clobber IP. void LoadImmediate(Register rd, int32_t value, Condition cond = AL) OVERRIDE; void MarkExceptionHandler(Label* label) OVERRIDE; @@ -308,6 +310,11 @@ class Arm32Assembler FINAL : public ArmAssembler { void MemoryBarrier(ManagedRegister scratch) OVERRIDE; + JumpTable* CreateJumpTable(std::vector<Label*>&& labels, Register base_reg) OVERRIDE; + void EmitJumpTableDispatch(JumpTable* jump_table, Register displacement_reg) OVERRIDE; + + void FinalizeCode() OVERRIDE; + private: void EmitType01(Condition cond, int type, |