brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.3 KiB · a733102 Raw
60 lines · plain
1// RUN: not llvm-mc -triple=aarch64 -show-encoding -mattr=+fp8dot2,+fp8dot4 2>&1 < %s| FileCheck %s2 3// --------------------------------------------------------------------------//4// Element size extension incorrect5 6fdot  v31.4h, v0.8h, v0.8b7// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction8// CHECK-NEXT: fdot  v31.4h, v0.8h, v0.8b9// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:10 11fdot  v31.8h, v0.16b, v31.16h12// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid vector kind qualifier13// CHECK-NEXT: fdot  v31.8h, v0.16b, v31.16h14// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:15 16fdot  v0.2s, v0.8s, v31.8b17// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid vector kind qualifier18// CHECK-NEXT: fdot  v0.2s, v0.8s, v31.8b19// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:20 21fdot  v31.4s, v0, v31.16b22// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction23// CHECK-NEXT: fdot  v31.4s, v0, v31.16b24// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:25 26//--------------------------------------------------------------------------//27// Last Register range is between 0-1528 29fdot  v31.4h, v31.8b, v16.2b[0]30// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction31// CHECK-NEXT: fdot  v31.4h, v31.8b, v16.2b[0]32// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:33 34fdot  v0.8h, v0.16b, v16.2b[7]35// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: invalid operand for instruction36// CHECK-NEXT: fdot  v0.8h, v0.16b, v16.2b[7]37// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:38 39// --------------------------------------------------------------------------//40// Out of range index41fdot  v31.4h, v31.8b, v15.2b[-1]42// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: vector lane must be an integer in range [0, 7].43// CHECK-NEXT: fdot  v31.4h, v31.8b, v15.2b[-1]44// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:45 46fdot  v0.8h, v0.16b, v15.2b[8]47// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: vector lane must be an integer in range [0, 7].48// CHECK-NEXT: fdot  v0.8h, v0.16b, v15.2b[8]49// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:50 51fdot  v0.2s, v0.8b, v31.4b[-1]52// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: vector lane must be an integer in range [0, 3].53// CHECK-NEXT: fdot  v0.2s, v0.8b, v31.4b[-1]54// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:55 56fdot  v0.4s, v31.16b, v0.4b[4]57// CHECK: [[@LINE-1]]:{{[0-9]+}}: error: vector lane must be an integer in range [0, 3].58// CHECK-NEXT: fdot  v0.4s, v31.16b, v0.4b[4]59// CHECK-NOT: [[@LINE-1]]:{{[0-9]+}}:60