Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / MC / AArch64 / SVE2p1 / whilelt-diagnostics.s
blobe7254d3f2bc4eeca7e603239e70333af93a2a199
1 // RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sve2p1 2>&1 < %s | FileCheck %s
3 // --------------------------------------------------------------------------//
4 // Invalid Pattern
6 whilelt pn8.b, x0, x0, vlx1
7 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand
8 // CHECK-NEXT: whilelt pn8.b, x0, x0, vlx1
9 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
11 whilelt pn8.b, x0, x0
12 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: too few operands for instruction
13 // CHECK-NEXT: whilelt pn8.b, x0, x0
14 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
16 // --------------------------------------------------------------------------//
17 // Invalid use of predicate without suffix
19 whilelt pn8, x0, x0, vlx2
20 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: Invalid predicate register, expected PN in range pn8..pn15 with element suffix.
21 // CHECK-NEXT: whilelt pn8, x0, x0, vlx2
22 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
24 // --------------------------------------------------------------------------//
25 // Out of range Predicate register
27 whilelt pn7.b, x0, x0, vlx2
28 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: Invalid predicate register, expected PN in range pn8..pn15 with element suffix.
29 // CHECK-NEXT: whilelt pn7.b, x0, x0, vlx2
30 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
32 whilelt { p0.b, p2.b }, x13, x8
33 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction
34 // CHECK-NEXT: whilelt { p0.b, p2.b }, x13, x8
35 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:
37 whilelt { p15.b, p0.b }, x13, x8
38 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: Invalid vector list, expected list with 2 consecutive predicate registers, where the first vector is a multiple of 2 and with correct element type
39 // CHECK-NEXT: whilelt { p15.b, p0.b }, x13, x8
40 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: