[llvm-commits] [llvm] r140085 - in /llvm/trunk: lib/Target/ARM/ARMInstrInfo.td test/MC/ARM/basic-thumb2-instructions.s

Jim Grosbach grosbach at apple.com
Mon Sep 19 16:05:22 PDT 2011


Author: grosbach
Date: Mon Sep 19 18:05:22 2011
New Revision: 140085

URL: http://llvm.org/viewvc/llvm-project?rev=140085&view=rev
Log:
Thumb2 assembly parsing and encoding for UASX.

Modified:
    llvm/trunk/lib/Target/ARM/ARMInstrInfo.td
    llvm/trunk/test/MC/ARM/basic-thumb2-instructions.s

Modified: llvm/trunk/lib/Target/ARM/ARMInstrInfo.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMInstrInfo.td?rev=140085&r1=140084&r2=140085&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMInstrInfo.td (original)
+++ llvm/trunk/lib/Target/ARM/ARMInstrInfo.td Mon Sep 19 18:05:22 2011
@@ -4952,6 +4952,8 @@
 def : MnemonicAlias<"shsubaddx", "shsax">;
 // SSAX == SSUBADDX
 def : MnemonicAlias<"ssubaddx", "ssax">;
+// UASX == UADDSUBX
+def : MnemonicAlias<"uaddsubx", "uasx">;
 
 // LDRSBT/LDRHT/LDRSHT post-index offset if optional.
 // Note that the write-back output register is a dummy operand for MC (it's

Modified: llvm/trunk/test/MC/ARM/basic-thumb2-instructions.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ARM/basic-thumb2-instructions.s?rev=140085&r1=140084&r2=140085&view=diff
==============================================================================
--- llvm/trunk/test/MC/ARM/basic-thumb2-instructions.s (original)
+++ llvm/trunk/test/MC/ARM/basic-thumb2-instructions.s Mon Sep 19 18:05:22 2011
@@ -2686,3 +2686,21 @@
 @ CHECK: ite	gt                      @ encoding: [0xcc,0xbf]
 @ CHECK: uadd16gt	r1, r2, r3      @ encoding: [0x92,0xfa,0x43,0xf1]
 @ CHECK: uadd8le	r1, r2, r3      @ encoding: [0x82,0xfa,0x43,0xf1]
+
+
+ at ------------------------------------------------------------------------------
+@ UASX
+ at ------------------------------------------------------------------------------
+        uasx r9, r12, r0
+        it eq
+        uasxeq r9, r12, r0
+        uaddsubx r9, r12, r0
+        it eq
+        uaddsubxeq r9, r12, r0
+
+@ CHECK: uasx	r9, r12, r0             @ encoding: [0xac,0xfa,0x40,0xf9]
+@ CHECK: it	eq                      @ encoding: [0x08,0xbf]
+@ CHECK: uasxeq	r9, r12, r0             @ encoding: [0xac,0xfa,0x40,0xf9]
+@ CHECK: uasx	r9, r12, r0             @ encoding: [0xac,0xfa,0x40,0xf9]
+@ CHECK: it	eq                      @ encoding: [0x08,0xbf]
+@ CHECK: uasxeq	r9, r12, r0             @ encoding: [0xac,0xfa,0x40,0xf9]





More information about the llvm-commits mailing list