[ARM] Better OR's for MVE compares
[llvm-core.git] / test / MC / AArch64 / SVE / insr-diagnostics.s
bloba0afb22f8fdf1e6caee52ca03236124bedcd4db3
1 // RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sve 2>&1 < %s| FileCheck %s
4 // ------------------------------------------------------------------------- //
5 // Invalid scalar operand size.
7 insr z31.b, x0
8 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand
9 // CHECK-NEXT: insr z31.b, x0
10 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
12 insr z31.h, x0
13 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand
14 // CHECK-NEXT: insr z31.h, x0
15 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
17 insr z31.s, x0
18 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand
19 // CHECK-NEXT: insr z31.s, x0
20 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
22 insr z31.d, w0
23 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand
24 // CHECK-NEXT: insr z31.d, w0
25 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
27 insr z31.b, h0
28 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand
29 // CHECK-NEXT: insr z31.b, h0
30 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
32 insr z31.h, s0
33 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand
34 // CHECK-NEXT: insr z31.h, s0
35 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
37 insr z31.s, d0
38 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand
39 // CHECK-NEXT: insr z31.s, d0
40 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
42 insr z31.d, b0
43 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand
44 // CHECK-NEXT: insr z31.d, b0
45 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
48 // --------------------------------------------------------------------------//
49 // Negative tests for instructions that are incompatible with movprfx
51 movprfx z31.d, p0/z, z6.d
52 insr z31.d, xzr
53 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a predicated movprfx, suggest using unpredicated movprfx
54 // CHECK-NEXT: insr z31.d, xzr
55 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
57 movprfx z4.d, p0/z, z6.d
58 insr z4.d, d31
59 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: instruction is unpredictable when following a predicated movprfx, suggest using unpredicated movprfx
60 // CHECK-NEXT: insr z4.d, d31
61 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: