82 lines · plain
1// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sve 2>&1 < %s| FileCheck %s2 3// ------------------------------------------------------------------------- //4// Invalid result register5 6sqincb w07// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand8// CHECK-NEXT: sqincb w09// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:10 11sqincb wsp12// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand13// CHECK-NEXT: sqincb wsp14// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:15 16sqincb sp17// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand18// CHECK-NEXT: sqincb sp19// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:20 21sqincb z0.b22// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand23// CHECK-NEXT: sqincb z0.b24// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:25 26 27// ------------------------------------------------------------------------- //28// Operands not matching up29 30sqincb x0, w131// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: operand must be 32-bit form of destination register32// CHECK-NEXT: sqincb x0, w133// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:34 35sqincb x0, x036// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand37// CHECK-NEXT: sqincb x0, x038// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:39 40 41// ------------------------------------------------------------------------- //42// Immediate not compatible with encode/decode function.43 44sqincb x0, all, mul #-145// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: immediate must be an integer in range [1, 16]46// CHECK-NEXT: sqincb x0, all, mul #-147// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:48 49sqincb x0, all, mul #050// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: immediate must be an integer in range [1, 16]51// CHECK-NEXT: sqincb x0, all, mul #052// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:53 54sqincb x0, all, mul #1755// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: immediate must be an integer in range [1, 16]56// CHECK-NEXT: sqincb x0, all, mul #1757// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:58 59 60// ------------------------------------------------------------------------- //61// Invalid predicate patterns62 63sqincb x0, vl51264// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand65// CHECK-NEXT: sqincb x0, vl51266// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:67 68sqincb x0, vl969// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand70// CHECK-NEXT: sqincb x0, vl971// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:72 73sqincb x0, #-174// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid predicate pattern75// CHECK-NEXT: sqincb x0, #-176// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:77 78sqincb x0, #3279// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid predicate pattern80// CHECK-NEXT: sqincb x0, #3281// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:82