llvm.org GIT mirror llvm / c777b2e
Test cleanup for v8 instructions Add some missing tests, factor out a test not specific to v8 into its own file. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193611 91177308-0d34-0410-b5e6-96231b3b80d8 Bernard Ogden 6 years ago
3 changed file(s) with 38 addition(s) and 7 deletion(s). Raw diff Collapse all Expand all
0 @ New ARMv8 A32 encodings
11
2 @ RUN: not llvm-mc -triple armv8 -show-encoding -mattr=+db < %s | FileCheck %s --check-prefix=CHECK-V8
2 @ RUN: llvm-mc -triple armv8 -show-encoding < %s | FileCheck %s --check-prefix=CHECK-V8
33 @ RUN: not llvm-mc -triple armv7 -show-encoding < %s 2>&1 | FileCheck %s --check-prefix=CHECK-V7
44
55 @ HLT
2222 dmb oshld
2323 dmb nshld
2424 dmb ld
25 dmb #20
2625
2726 @ CHECK-V8: dmb ishld @ encoding: [0x59,0xf0,0x7f,0xf5]
2827 @ CHECK-V8: dmb oshld @ encoding: [0x51,0xf0,0x7f,0xf5]
3231 @ CHECK-V7: error: invalid operand for instruction
3332 @ CHECK-V7: error: invalid operand for instruction
3433 @ CHECK-V7: error: invalid operand for instruction
35 @ CHECK-V7: error: immediate value out of range
3634
3735 @------------------------------------------------------------------------------
3836 @ DSB (v8 barriers)
4947 @ CHECK-V7: error: invalid operand for instruction
5048 @ CHECK-V7: error: invalid operand for instruction
5149 @ CHECK-V7: error: invalid operand for instruction
50 @ CHECK-V7: error: invalid operand for instruction
5251
5352 @------------------------------------------------------------------------------
5453 @ SEVL
5554 @------------------------------------------------------------------------------
5655 sevl
5756
58 @ CHECK: sevl @ encoding: [0x05,0xf0,0x20,0xe3]
57 @ CHECK-V8: sevl @ encoding: [0x05,0xf0,0x20,0xe3]
58 @ CHECK-V7: error: instruction requires: armv8
0 @ New ARMv8 T32 encodings
11
2 @ RUN: not llvm-mc -triple thumbv8 -show-encoding -mattr=+db < %s | FileCheck %s --check-prefix=CHECK-V8
2 @ RUN: llvm-mc -triple thumbv8 -show-encoding < %s | FileCheck %s --check-prefix=CHECK-V8
33 @ RUN: not llvm-mc -triple thumbv7 -show-encoding < %s 2>&1 | FileCheck %s --check-prefix=CHECK-V7
44
55 @ HLT
4141 dmb oshld
4242 dmb nshld
4343 dmb ld
44 dmb #20
4544
4645 @ CHECK-V8: dmb ishld @ encoding: [0xbf,0xf3,0x59,0x8f]
4746 @ CHECK-V8: dmb oshld @ encoding: [0xbf,0xf3,0x51,0x8f]
5150 @ CHECK-V7: error: invalid operand for instruction
5251 @ CHECK-V7: error: invalid operand for instruction
5352 @ CHECK-V7: error: invalid operand for instruction
54 @ CHECK-V7: error: immediate value out of range
5553
5654 @------------------------------------------------------------------------------
5755 @ DSB (v8 barriers)
6866 @ CHECK-V7: error: invalid operand for instruction
6967 @ CHECK-V7: error: invalid operand for instruction
7068 @ CHECK-V7: error: invalid operand for instruction
69 @ CHECK-V7: error: invalid operand for instruction
7170
7271 @------------------------------------------------------------------------------
7372 @ SEVL
8180 @ CHECK-V8: sevl.w @ encoding: [0xaf,0xf3,0x05,0x80]
8281 @ CHECK-V8: it ge @ encoding: [0xa8,0xbf]
8382 @ CHECK-V8: sevlge @ encoding: [0x50,0xbf]
83 @ CHECK-V7: error: instruction requires: armv8
84 @ CHECK-V7: error: instruction requires: armv8
85 @ CHECK-V7: error:
86 @ CHECK-V7: error: instruction requires: armv8
0 @ RUN: not llvm-mc -triple=armv7 -show-encoding < %s 2>&1 | FileCheck %s
1 @ RUN: not llvm-mc -triple=thumbv7 -show-encoding < %s 2>&1 | FileCheck %s
2
3 @------------------------------------------------------------------------------
4 @ DMB
5 @------------------------------------------------------------------------------
6 dmb #0x10
7 dmb imaginary_scope
8
9 @ CHECK: error: immediate value out of range
10 @ CHECK: error: invalid operand for instruction
11
12 @------------------------------------------------------------------------------
13 @ DSB
14 @------------------------------------------------------------------------------
15 dsb #0x10
16 dsb imaginary_scope
17 @ CHECK: error: immediate value out of range
18 @ CHECK: error: invalid operand for instruction
19
20 @------------------------------------------------------------------------------
21 @ ISB
22 @------------------------------------------------------------------------------
23 isb #0x1f
24 isb imaginary_domain
25
26 @ CHECK: error: immediate value out of range
27 @ CHECK: error: invalid operand for instruction