summaryrefslogtreecommitdiff
path: root/compiler/utils/arm/assembler_arm32.cc
diff options
context:
space:
mode:
author Vladimir Marko <vmarko@google.com> 2015-09-14 15:13:26 +0100
committer Vladimir Marko <vmarko@google.com> 2015-10-14 12:20:59 +0100
commitd2b4ca2d02c86b1ce1826fd2b35ce6c9c58c1ff1 (patch)
treedab4cdfacd3e7cb529f3b0de931c8a173039571f /compiler/utils/arm/assembler_arm32.cc
parentfb11bab9bc96ff05dcb12f43abf58df256b7c7aa (diff)
Improve Thumb2 bitwise operations.
Allow embedding constants in AND, ORR, EOR. Add ORN to assembler, use BIC and ORN for AND and ORR when needed. Change-Id: I24d69ecc7ce6992b9c5eb7a313ff47a942de9661
Diffstat (limited to 'compiler/utils/arm/assembler_arm32.cc')
-rw-r--r--compiler/utils/arm/assembler_arm32.cc9
1 files changed, 9 insertions, 0 deletions
diff --git a/compiler/utils/arm/assembler_arm32.cc b/compiler/utils/arm/assembler_arm32.cc
index f7772aea3d..c6af283370 100644
--- a/compiler/utils/arm/assembler_arm32.cc
+++ b/compiler/utils/arm/assembler_arm32.cc
@@ -130,6 +130,15 @@ void Arm32Assembler::orr(Register rd, Register rn, const ShifterOperand& so,
}
+void Arm32Assembler::orn(Register rd ATTRIBUTE_UNUSED,
+ Register rn ATTRIBUTE_UNUSED,
+ const ShifterOperand& so ATTRIBUTE_UNUSED,
+ Condition cond ATTRIBUTE_UNUSED,
+ SetCc set_cc ATTRIBUTE_UNUSED) {
+ LOG(FATAL) << "orn is not supported on ARM32";
+}
+
+
void Arm32Assembler::mov(Register rd, const ShifterOperand& so,
Condition cond, SetCc set_cc) {
EmitType01(cond, so.type(), MOV, set_cc, R0, rd, so);