brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.5 KiB · 874255e Raw
88 lines · plain
1// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+sme,+sme-i16i64 2>&1 < %s| FileCheck %s2 3// ------------------------------------------------------------------------- //4// Invalid tile5//6// expected: .s => za0-za3, .d => za0-za77 8sumops za4.s, p0/m, p0/m, z0.b, z0.b9// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction10// CHECK-NEXT: sumops za4.s, p0/m, p0/m, z0.b, z0.b11// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:12 13sumops za8.d, p0/m, p0/m, z0.h, z0.h14// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction15// CHECK-NEXT: sumops za8.d, p0/m, p0/m, z0.h, z0.h16// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:17 18// ------------------------------------------------------------------------- //19// Invalid predicate (expected: p0-p7)20 21sumops za0.s, p8/m, p0/m, z0.b, z0.b22// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid restricted predicate register, expected p0..p7 (without element suffix)23// CHECK-NEXT: sumops za0.s, p8/m, p0/m, z0.b, z0.b24// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:25 26sumops za0.s, p0/m, p8/m, z0.b, z0.b27// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid restricted predicate register, expected p0..p7 (without element suffix)28// CHECK-NEXT: sumops za0.s, p0/m, p8/m, z0.b, z0.b29// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:30 31sumops za0.d, p8/m, p0/m, z0.h, z0.h32// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid restricted predicate register, expected p0..p7 (without element suffix)33// CHECK-NEXT: sumops za0.d, p8/m, p0/m, z0.h, z0.h34// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:35 36sumops za0.d, p0/m, p8/m, z0.h, z0.h37// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid restricted predicate register, expected p0..p7 (without element suffix)38// CHECK-NEXT: sumops za0.d, p0/m, p8/m, z0.h, z0.h39// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:40 41// ------------------------------------------------------------------------- //42// Invalid predicate qualifier (expected: /m)43 44sumops za0.s, p0/z, p0/m, z0.b, z0.b45// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction46// CHECK-NEXT: sumops za0.s, p0/z, p0/m, z0.b, z0.b47// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:48 49sumops za0.s, p0/m, p0/z, z0.b, z0.b50// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction51// CHECK-NEXT: sumops za0.s, p0/m, p0/z, z0.b, z0.b52// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:53 54sumops za0.d, p0/z, p0/m, z0.h, z0.h55// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction56// CHECK-NEXT: sumops za0.d, p0/z, p0/m, z0.h, z0.h57// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:58 59sumops za0.d, p0/m, p0/z, z0.h, z0.h60// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction61// CHECK-NEXT: sumops za0.d, p0/m, p0/z, z0.h, z0.h62// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:63 64// ------------------------------------------------------------------------- //65// Invalid ZPR type suffix66//67// expected: .s => .b, .d => .h68 69sumops za0.s, p0/m, p0/m, z0.h, z0.b70// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid element width71// CHECK-NEXT: sumops za0.s, p0/m, p0/m, z0.h, z0.b72// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:73 74sumops za0.s, p0/m, p0/m, z0.b, z0.s75// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid element width76// CHECK-NEXT: sumops za0.s, p0/m, p0/m, z0.b, z0.s77// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:78 79sumops za0.d, p0/m, p0/m, z0.b, z0.h80// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid element width81// CHECK-NEXT: sumops za0.d, p0/m, p0/m, z0.b, z0.h82// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:83 84sumops za0.d, p0/m, p0/m, z0.h, z0.s85// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid element width86// CHECK-NEXT: sumops za0.d, p0/m, p0/m, z0.h, z0.s87// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:88