1 // RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sve 2>&1 < %s| FileCheck %s 2 3 // Element size specifiers should match. 4 sxtb z0.d, p0/m, z0.s 5 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid element width 6 // CHECK-NEXT: sxtb z0.d, p0/m, z0.s 7 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 8 9 // Missing predicate suffix 10 sxtb z29.d, p7, z29.d 11 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand 12 // CHECK-NEXT: sxtb z29.d, p7, z29.d 13 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 14 15 16 // --------------------------------------------------------------------------// 17 // Unsupported element widths 18 19 sxtb z0.b, p0/m, z0.b 20 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid element width 21 // CHECK-NEXT: sxtb z0.b, p0/m, z0.b 22 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 23 24 25 // --------------------------------------------------------------------------// 26 // error: restricted predicate has range [0, 7]. 27 28 sxtb z0.h, p8/m, z0.h 29 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: restricted predicate has range [0, 7]. 30 // CHECK-NEXT: sxtb z0.h, p8/m, z0.h 31 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 32 33 sxtb z0.s, p8/m, z0.s 34 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: restricted predicate has range [0, 7]. 35 // CHECK-NEXT: sxtb z0.s, p8/m, z0.s 36 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 37 38 sxtb z0.d, p8/m, z0.d 39 // CHECK: [[@LINE-1]]:{{[0-9]+}}: error: restricted predicate has range [0, 7]. 40 // CHECK-NEXT: sxtb z0.d, p8/m, z0.d 41 // CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}: 42