summaryrefslogtreecommitdiff
path: root/compiler/optimizing/common_arm.h
diff options
context:
space:
mode:
author Scott Wakeling <scott.wakeling@linaro.org> 2016-10-03 10:14:44 +0100
committer Scott Wakeling <scott.wakeling@linaro.org> 2016-11-01 15:39:46 +0000
commitc34dba70a3f0b10399e916ae1c68431d34ae6df5 (patch)
tree55626f0a297182cdf6cc5e6a9cbf8ce3a2989167 /compiler/optimizing/common_arm.h
parente7b46e22c7f4f6f503501b3b2ad99113289d142b (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.h10
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()) {