Thumb2 parsing and encoding for LDMDB.
authorJim Grosbach <grosbach@apple.com>
Wed, 7 Sep 2011 19:57:53 +0000 (19:57 +0000)
committerJim Grosbach <grosbach@apple.com>
Wed, 7 Sep 2011 19:57:53 +0000 (19:57 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@139251 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/ARMInstrInfo.td
test/MC/ARM/basic-thumb2-instructions.s

index 429fe9e3bd64c551ab09e27f263503dd6c741d9d..507c7bbcf024f5f638eb2b422bf8dfd4eda057f4 100644 (file)
@@ -4907,6 +4907,7 @@ def : MnemonicAlias<"swi", "svc">;
 // Load / Store Multiple
 def : MnemonicAlias<"ldmfd", "ldm">;
 def : MnemonicAlias<"ldmia", "ldm">;
+def : MnemonicAlias<"ldmea", "ldmdb">;
 def : MnemonicAlias<"stmfd", "stmdb">;
 def : MnemonicAlias<"stmia", "stm">;
 def : MnemonicAlias<"stmea", "stm">;
index 5a475b934f70336e007097ce6a95968855a3a0f9..aec17e6eaa9c51a80e6180452b482ef29d33576a 100644 (file)
@@ -500,6 +500,20 @@ _func:
 @ CHECK: ldm.w r5!, {r3, r8}           @ encoding: [0xb5,0xe8,0x08,0x01]
 
 
+@------------------------------------------------------------------------------
+@ LDMDB
+@------------------------------------------------------------------------------
+        ldmdb r4, {r4, r5, r8, r9}
+        ldmdb r4, {r5, r6}
+        ldmdb r5!, {r3, r8}
+        ldmea r5!, {r3, r8}
+
+@ CHECK: ldmdb r4, {r4, r5, r8, r9}    @ encoding: [0x14,0xe9,0x30,0x03]
+@ CHECK: ldmdb r4, {r5, r6}            @ encoding: [0x14,0xe9,0x60,0x00]
+@ CHECK: ldmdb r5!, {r3, r8}           @ encoding: [0x35,0xe9,0x08,0x01]
+@ CHECK: ldmdb r5!, {r3, r8}           @ encoding: [0x35,0xe9,0x08,0x01]
+
+
 @------------------------------------------------------------------------------
 @ IT
 @------------------------------------------------------------------------------