summaryrefslogtreecommitdiffstats
path: root/compiler/utils/arm/assembler_arm.cc
diff options
context:
space:
mode:
authorNicolas Geoffray <ngeoffray@google.com>2014-07-11 10:57:49 +0100
committerNicolas Geoffray <ngeoffray@google.com>2014-07-21 09:54:20 +0100
commit96f89a290eb67d7bf4b1636798fa28df14309cc7 (patch)
treeca2b484a18107f8253aa7774cde304586a31bc60 /compiler/utils/arm/assembler_arm.cc
parent4436e926aa8e64ac7e4c4afb81f2a59b2477045a (diff)
downloadandroid_art-96f89a290eb67d7bf4b1636798fa28df14309cc7.tar.gz
android_art-96f89a290eb67d7bf4b1636798fa28df14309cc7.tar.bz2
android_art-96f89a290eb67d7bf4b1636798fa28df14309cc7.zip
Add assembly operations with constants in optimizing compiler.
Change-Id: I5bcc35ab50d4457186effef5592a75d7f4e5b65f
Diffstat (limited to 'compiler/utils/arm/assembler_arm.cc')
-rw-r--r--compiler/utils/arm/assembler_arm.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/utils/arm/assembler_arm.cc b/compiler/utils/arm/assembler_arm.cc
index 5fe82468b9..671ccb642c 100644
--- a/compiler/utils/arm/assembler_arm.cc
+++ b/compiler/utils/arm/assembler_arm.cc
@@ -73,6 +73,11 @@ std::ostream& operator<<(std::ostream& os, const Condition& rhs) {
return os;
}
+ShifterOperand::ShifterOperand(uint32_t immed)
+ : type_(kImmediate), rm_(kNoRegister), rs_(kNoRegister),
+ is_rotate_(false), is_shift_(false), shift_(kNoShift), rotate_(0), immed_(immed) {
+ CHECK(immed < (1u << 12) || ArmAssembler::ModifiedImmediate(immed) != kInvalidModifiedImmediate);
+}
uint32_t ShifterOperand::encodingArm() const {