[llvm] r190060 - [ARMv8] Add some missing tests for DSB/DMB.

Joey Gouly joey.gouly at arm.com
Thu Sep 5 09:05:45 PDT 2013


Author: joey
Date: Thu Sep  5 11:05:45 2013
New Revision: 190060

URL: http://llvm.org/viewvc/llvm-project?rev=190060&view=rev
Log:
[ARMv8] Add some missing tests for DSB/DMB.

Modified:
    llvm/trunk/test/MC/ARM/basic-thumb2-instructions-v8.s
    llvm/trunk/test/MC/Disassembler/ARM/basic-arm-instructions-v8.txt
    llvm/trunk/test/MC/Disassembler/ARM/thumb-v8.txt

Modified: llvm/trunk/test/MC/ARM/basic-thumb2-instructions-v8.s
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/ARM/basic-thumb2-instructions-v8.s?rev=190060&r1=190059&r2=190060&view=diff
==============================================================================
--- llvm/trunk/test/MC/ARM/basic-thumb2-instructions-v8.s (original)
+++ llvm/trunk/test/MC/ARM/basic-thumb2-instructions-v8.s Thu Sep  5 11:05:45 2013
@@ -1,6 +1,6 @@
 @ New ARMv8 T32 encodings
 
-@ RUN: llvm-mc -triple thumbv8 -show-encoding < %s | FileCheck %s --check-prefix=CHECK-V8
+@ RUN: not llvm-mc -triple thumbv8 -show-encoding -mattr=+db < %s | FileCheck %s --check-prefix=CHECK-V8
 @ RUN: not llvm-mc -triple thumbv7 -show-encoding < %s 2>&1 | FileCheck %s --check-prefix=CHECK-V7
 
 @ HLT
@@ -34,3 +34,38 @@
 @ CHECK-V7: error: instruction requires: armv8
 @ CHECK-V7: error: instruction requires: armv8
 @ CHECK-V7: error: instruction requires: armv8
+
+ at ------------------------------------------------------------------------------
+@ DMB (v8 barriers)
+ at ------------------------------------------------------------------------------
+        dmb ishld
+        dmb oshld
+        dmb nshld
+        dmb ld
+        dmb #20
+
+@ CHECK-V8: dmb ishld @ encoding: [0xbf,0xf3,0x59,0x8f]
+@ CHECK-V8: dmb oshld @ encoding: [0xbf,0xf3,0x51,0x8f]
+@ CHECK-V8: dmb nshld @ encoding: [0xbf,0xf3,0x55,0x8f]
+@ CHECK-V8: dmb ld @ encoding: [0xbf,0xf3,0x5d,0x8f]
+@ CHECK-V7: error: invalid operand for instruction
+@ CHECK-V7: error: invalid operand for instruction
+@ CHECK-V7: error: invalid operand for instruction
+@ CHECK-V7: error: invalid operand for instruction
+@ CHECK-V7: error: immediate value out of range
+
+ at ------------------------------------------------------------------------------
+@ DSB (v8 barriers)
+ at ------------------------------------------------------------------------------
+        dsb ishld
+        dsb oshld
+        dsb nshld
+        dsb ld
+
+@ CHECK-V8: dsb ishld @ encoding: [0xbf,0xf3,0x49,0x8f]
+@ CHECK-V8: dsb oshld @ encoding: [0xbf,0xf3,0x41,0x8f]
+@ CHECK-V8: dsb nshld @ encoding: [0xbf,0xf3,0x45,0x8f]
+@ CHECK-V8: dsb ld @ encoding: [0xbf,0xf3,0x4d,0x8f]
+@ CHECK-V7: error: invalid operand for instruction
+@ CHECK-V7: error: invalid operand for instruction
+@ CHECK-V7: error: invalid operand for instruction

Modified: llvm/trunk/test/MC/Disassembler/ARM/basic-arm-instructions-v8.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/Disassembler/ARM/basic-arm-instructions-v8.txt?rev=190060&r1=190059&r2=190060&view=diff
==============================================================================
--- llvm/trunk/test/MC/Disassembler/ARM/basic-arm-instructions-v8.txt (original)
+++ llvm/trunk/test/MC/Disassembler/ARM/basic-arm-instructions-v8.txt Thu Sep  5 11:05:45 2013
@@ -1,4 +1,4 @@
-# RUN: llvm-mc -disassemble -triple armv8 -show-encoding < %s | FileCheck %s
+# RUN: llvm-mc -disassemble -triple armv8 -mattr=+db -show-encoding < %s | FileCheck %s
 
 # New v8 ARM instructions
 
@@ -9,3 +9,12 @@
 
 0x7f 0xff 0x0f 0xe1
 # CHECK: hlt #65535
+
+0x59 0xf0 0x7f 0xf5
+0x51 0xf0 0x7f 0xf5
+0x55 0xf0 0x7f 0xf5
+0x5d 0xf0 0x7f 0xf5
+# CHECK: dmb ishld
+# CHECK: dmb oshld
+# CHECK: dmb nshld
+# CHECK: dmb ld

Modified: llvm/trunk/test/MC/Disassembler/ARM/thumb-v8.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/MC/Disassembler/ARM/thumb-v8.txt?rev=190060&r1=190059&r2=190060&view=diff
==============================================================================
--- llvm/trunk/test/MC/Disassembler/ARM/thumb-v8.txt (original)
+++ llvm/trunk/test/MC/Disassembler/ARM/thumb-v8.txt Thu Sep  5 11:05:45 2013
@@ -1,4 +1,4 @@
-# RUN: llvm-mc -disassemble -triple thumbv8 -show-encoding < %s | FileCheck %s
+# RUN: llvm-mc -disassemble -triple thumbv8 -mattr=+db -show-encoding < %s | FileCheck %s
 
 0x80 0xba
 # CHECK: hlt #0
@@ -16,3 +16,13 @@
 
 0x8f 0xf7 0x03 0x80 
 # CHECK: dcps3
+
+0xbf 0xf3 0x59 0x8f
+0xbf 0xf3 0x51 0x8f
+0xbf 0xf3 0x55 0x8f
+0xbf 0xf3 0x5d 0x8f
+
+# CHECK: dmb ishld
+# CHECK: dmb oshld
+# CHECK: dmb nshld
+# CHECK: dmb ld





More information about the llvm-commits mailing list