1// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sve 2>&1 < %s| FileCheck %s 2 3// ------------------------------------------------------------------------- // 4// Invalid result register 5 6cntd w0 7// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand 8// CHECK-NEXT: cntd w0 9// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 10 11cntd sp 12// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand 13// CHECK-NEXT: cntd sp 14// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 15 16cntd z0.b 17// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand 18// CHECK-NEXT: cntd z0.b 19// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 20 21 22// ------------------------------------------------------------------------- // 23// Immediate not compatible with encode/decode function. 24 25cntd x0, all, mul #-1 26// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: immediate must be an integer in range [1, 16] 27// CHECK-NEXT: cntd x0, all, mul #-1 28// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 29 30cntd x0, all, mul #0 31// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: immediate must be an integer in range [1, 16] 32// CHECK-NEXT: cntd x0, all, mul #0 33// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 34 35cntd x0, all, mul #17 36// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: immediate must be an integer in range [1, 16] 37// CHECK-NEXT: cntd x0, all, mul #17 38// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 39 40 41// ------------------------------------------------------------------------- // 42// Invalid predicate patterns 43 44cntd x0, #-1 45// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid predicate pattern 46// CHECK-NEXT: cntd x0, #-1 47// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 48 49cntd x0, #32 50// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid predicate pattern 51// CHECK-NEXT: cntd x0, #32 52// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 53 54cntd x0, vl512 55// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand 56// CHECK-NEXT: cntd x0, vl512 57// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 58