diff options
author | 2016-10-03 10:14:44 +0100 | |
---|---|---|
committer | 2016-11-01 15:39:46 +0000 | |
commit | c34dba70a3f0b10399e916ae1c68431d34ae6df5 (patch) | |
tree | 55626f0a297182cdf6cc5e6a9cbf8ce3a2989167 /compiler/optimizing/common_arm.h | |
parent | e7b46e22c7f4f6f503501b3b2ad99113289d142b (diff) |
ARM: VIXL32: Implement ArrayGet, ArraySet, BoundsCheck etc.
Over 100 more ART tests now start to pass.
Test: export ART_USE_VIXL_ARM_BACKEND=true && \
mma test-art-host dist && \
mma test-art-target dist
Change-Id: I8b7c2e29886981d72057d36347bca0626aabfe81
Diffstat (limited to 'compiler/optimizing/common_arm.h')
-rw-r--r-- | compiler/optimizing/common_arm.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/compiler/optimizing/common_arm.h b/compiler/optimizing/common_arm.h index 5d92bfd9cc..8c08a9c8b9 100644 --- a/compiler/optimizing/common_arm.h +++ b/compiler/optimizing/common_arm.h @@ -37,11 +37,6 @@ inline dwarf::Reg DWARFReg(vixl::aarch32::SRegister reg) { return dwarf::Reg::ArmFp(static_cast<int>(reg.GetCode())); } -inline vixl::aarch32::DRegister FromLowSToD(vixl::aarch32::SRegister reg) { - DCHECK_EQ(reg.GetCode() % 2, 0u) << reg; - return vixl::aarch32::DRegister(reg.GetCode() / 2); -} - inline vixl::aarch32::Register HighRegisterFrom(Location location) { DCHECK(location.IsRegisterPair()) << location; return vixl::aarch32::Register(location.AsRegisterPairHigh<vixl32::Register>()); @@ -135,6 +130,11 @@ inline vixl::aarch32::Register InputRegisterAt(HInstruction* instr, int input_in instr->InputAt(input_index)->GetType()); } +inline vixl::aarch32::Register InputRegister(HInstruction* instr) { + DCHECK_EQ(instr->InputCount(), 1u); + return InputRegisterAt(instr, 0); +} + inline int64_t Int64ConstantFrom(Location location) { HConstant* instr = location.GetConstant(); if (instr->IsIntConstant()) { |