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

Jim Grosbach grosbach at apple.com
Wed Jul 13 17:18:13 PDT 2011


Author: grosbach
Date: Wed Jul 13 19:18:13 2011
New Revision: 135116

URL: http://llvm.org/viewvc/llvm-project?rev=135116&view=rev
Log:
ARM Assembler support for DSB instruction.

Add instalias for default 'sy' option. Add tests.

Modified:
    llvm/trunk/lib/Target/ARM/ARMInstrInfo.td
    llvm/trunk/test/MC/ARM/basic-arm-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=135116&r1=135115&r2=135116&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMInstrInfo.td (original)
+++ llvm/trunk/lib/Target/ARM/ARMInstrInfo.td Wed Jul 13 19:18:13 2011
@@ -3314,6 +3314,8 @@
   let Inst{3-0} = opt;
 }
 
+def : InstAlias<"dsb", (DSB 0xf)>, Requires<[IsARM, HasDB]>;
+
 // ISB has only full system option
 def ISB : AInoP<(outs), (ins), MiscFrm, NoItinerary, "isb", "", []>,
                 Requires<[IsARM, HasDB]> {

Modified: llvm/trunk/test/MC/ARM/basic-arm-instructions.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ARM/basic-arm-instructions.s?rev=135116&r1=135115&r2=135116&view=diff
==============================================================================
--- llvm/trunk/test/MC/ARM/basic-arm-instructions.s (original)
+++ llvm/trunk/test/MC/ARM/basic-arm-instructions.s Wed Jul 13 19:18:13 2011
@@ -490,3 +490,34 @@
 @ CHECK: dmb	osh                     @ encoding: [0x53,0xf0,0x7f,0xf5]
 @ CHECK: dmb	oshst                   @ encoding: [0x52,0xf0,0x7f,0xf5]
 @ CHECK: dmb	sy                      @ encoding: [0x5f,0xf0,0x7f,0xf5]
+
+ at ------------------------------------------------------------------------------
+@ DSB
+ at ------------------------------------------------------------------------------
+  dsb sy
+  dsb st
+  dsb sh
+  dsb ish
+  dsb shst
+  dsb ishst
+  dsb un
+  dsb nsh
+  dsb unst
+  dsb nshst
+  dsb osh
+  dsb oshst
+  dsb
+
+@ CHECK: dsb	sy                      @ encoding: [0x4f,0xf0,0x7f,0xf5]
+@ CHECK: dsb	st                      @ encoding: [0x4e,0xf0,0x7f,0xf5]
+@ CHECK: dsb	ish                     @ encoding: [0x4b,0xf0,0x7f,0xf5]
+@ CHECK: dsb	ish                     @ encoding: [0x4b,0xf0,0x7f,0xf5]
+@ CHECK: dsb	ishst                   @ encoding: [0x4a,0xf0,0x7f,0xf5]
+@ CHECK: dsb	ishst                   @ encoding: [0x4a,0xf0,0x7f,0xf5]
+@ CHECK: dsb	nsh                     @ encoding: [0x47,0xf0,0x7f,0xf5]
+@ CHECK: dsb	nsh                     @ encoding: [0x47,0xf0,0x7f,0xf5]
+@ CHECK: dsb	nshst                   @ encoding: [0x46,0xf0,0x7f,0xf5]
+@ CHECK: dsb	nshst                   @ encoding: [0x46,0xf0,0x7f,0xf5]
+@ CHECK: dsb	osh                     @ encoding: [0x43,0xf0,0x7f,0xf5]
+@ CHECK: dsb	oshst                   @ encoding: [0x42,0xf0,0x7f,0xf5]
+@ CHECK: dsb	sy                      @ encoding: [0x4f,0xf0,0x7f,0xf5]





More information about the llvm-commits mailing list