aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJim Grosbach <grosbach@apple.com>2011-09-16 18:37:10 +0000
committerJim Grosbach <grosbach@apple.com>2011-09-16 18:37:10 +0000
commit50bd470d85c63860f887b7c3e5724c9fd43ef3a2 (patch)
treebff0dbdd7da17dd03eefe4ec21c2107d0336dc75
parentecc9b5ec23d08a8a967c2c57bd8f32047e195be9 (diff)
Thumb2 assembly parsing and encoding for SSAX.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139929 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/ARM/ARMInstrInfo.td2
-rw-r--r--test/MC/ARM/basic-thumb2-instructions.s18
2 files changed, 20 insertions, 0 deletions
diff --git a/lib/Target/ARM/ARMInstrInfo.td b/lib/Target/ARM/ARMInstrInfo.td
index c5e4b8653c..1a5acfe1cc 100644
--- a/lib/Target/ARM/ARMInstrInfo.td
+++ b/lib/Target/ARM/ARMInstrInfo.td
@@ -4950,6 +4950,8 @@ def : MnemonicAlias<"saddsubx", "sasx">;
def : MnemonicAlias<"shaddsubx", "shasx">;
// SHSAX == SHSUBADDX
def : MnemonicAlias<"shsubaddx", "shsax">;
+// SSAX == SSUBADDX
+def : MnemonicAlias<"ssubaddx", "ssax">;
// LDRSBT/LDRHT/LDRSHT post-index offset if optional.
// Note that the write-back output register is a dummy operand for MC (it's
diff --git a/test/MC/ARM/basic-thumb2-instructions.s b/test/MC/ARM/basic-thumb2-instructions.s
index d960f1ef29..d44d65da46 100644
--- a/test/MC/ARM/basic-thumb2-instructions.s
+++ b/test/MC/ARM/basic-thumb2-instructions.s
@@ -2075,6 +2075,24 @@ _func:
@------------------------------------------------------------------------------
+@ SSAX
+@------------------------------------------------------------------------------
+ ssubaddx r2, r3, r4
+ it lt
+ ssubaddxlt r2, r3, r4
+ ssax r2, r3, r4
+ it lt
+ ssaxlt r2, r3, r4
+
+@ CHECK: ssax r2, r3, r4 @ encoding: [0xe3,0xfa,0x04,0xf2]
+@ CHECK: it lt @ encoding: [0xb8,0xbf]
+@ CHECK: ssaxlt r2, r3, r4 @ encoding: [0xe3,0xfa,0x04,0xf2]
+@ CHECK: ssax r2, r3, r4 @ encoding: [0xe3,0xfa,0x04,0xf2]
+@ CHECK: it lt @ encoding: [0xb8,0xbf]
+@ CHECK: ssaxlt r2, r3, r4 @ encoding: [0xe3,0xfa,0x04,0xf2]
+
+
+@------------------------------------------------------------------------------
@ SUB (register)
@------------------------------------------------------------------------------
sub.w r5, r2, r12, rrx