362 lines · plain
1// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-f8f16,+sme-f8f32 < %s \2// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST3// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \4// RUN: | FileCheck %s --check-prefix=CHECK-ERROR5// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-f8f16,+sme-f8f32 < %s \6// RUN: | llvm-objdump -d --mattr=+sme-f8f16,+sme-f8f32 --no-print-imm-hex - | FileCheck %s --check-prefix=CHECK-INST7// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-f8f16,+sme-f8f32 < %s \8// RUN: | llvm-objdump -d --mattr=-sme-f8f16,-sme-f8f32 --no-print-imm-hex - | FileCheck %s --check-prefix=CHECK-UNKNOWN9// Disassemble encoding and check the re-encoding (-show-encoding) matches.10// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-f8f16,+sme-f8f32 < %s \11// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \12// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-f8f16,+sme-f8f32 -disassemble -show-encoding \13// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST14 15 16// FDOT17// x218 19fdot za.h[w8, 0, vgx2], {z0.b-z1.b}, z0.b // 11000001-00100000-00010000-0000100020// CHECK-INST: fdot za.h[w8, 0, vgx2], { z0.b, z1.b }, z0.b21// CHECK-ENCODING: [0x08,0x10,0x20,0xc1]22// CHECK-ERROR: instruction requires: sme-f8f1623// CHECK-UNKNOWN: c1201008 <unknown>24 25fdot za.h[w8, 0], {z0.b-z1.b}, z0.b // 11000001-00100000-00010000-0000100026// CHECK-INST: fdot za.h[w8, 0, vgx2], { z0.b, z1.b }, z0.b27// CHECK-ENCODING: [0x08,0x10,0x20,0xc1]28// CHECK-ERROR: instruction requires: sme-f8f1629// CHECK-UNKNOWN: c1201008 <unknown>30 31fdot za.h[w11, 7], {z13.b-z14.b}, z8.b // 11000001-00101000-01110001-1010111132// CHECK-INST: fdot za.h[w11, 7, vgx2], { z13.b, z14.b }, z8.b33// CHECK-ENCODING: [0xaf,0x71,0x28,0xc1]34// CHECK-ERROR: instruction requires: sme-f8f1635// CHECK-UNKNOWN: c12871af <unknown>36 37fdot za.h[w11, 7, vgx2], {z31.b-z0.b}, z15.b // 11000001-00101111-01110011-1110111138// CHECK-INST: fdot za.h[w11, 7, vgx2], { z31.b, z0.b }, z15.b39// CHECK-ENCODING: [0xef,0x73,0x2f,0xc1]40// CHECK-ERROR: instruction requires: sme-f8f1641// CHECK-UNKNOWN: c12f73ef <unknown>42 43fdot za.s[w8, 0, vgx2], {z0.b-z1.b}, z0.b // 11000001-00100000-00010000-0001100044// CHECK-INST: fdot za.s[w8, 0, vgx2], { z0.b, z1.b }, z0.b45// CHECK-ENCODING: [0x18,0x10,0x20,0xc1]46// CHECK-ERROR: instruction requires: sme-f8f3247// CHECK-UNKNOWN: c1201018 <unknown>48 49fdot za.s[w8, 0], {z0.b-z1.b}, z0.b // 11000001-00100000-00010000-0001100050// CHECK-INST: fdot za.s[w8, 0, vgx2], { z0.b, z1.b }, z0.b51// CHECK-ENCODING: [0x18,0x10,0x20,0xc1]52// CHECK-ERROR: instruction requires: sme-f8f3253// CHECK-UNKNOWN: c1201018 <unknown>54 55fdot za.s[w11, 7, vgx2], {z31.b-z0.b}, z15.b // 11000001-00101111-01110011-1111111156// CHECK-INST: fdot za.s[w11, 7, vgx2], { z31.b, z0.b }, z15.b57// CHECK-ENCODING: [0xff,0x73,0x2f,0xc1]58// CHECK-ERROR: instruction requires: sme-f8f3259// CHECK-UNKNOWN: c12f73ff <unknown>60 61fdot za.s[w11, 7], {z31.b-z0.b}, z15.b // 11000001-00101111-01110011-1111111162// CHECK-INST: fdot za.s[w11, 7, vgx2], { z31.b, z0.b }, z15.b63// CHECK-ENCODING: [0xff,0x73,0x2f,0xc1]64// CHECK-ERROR: instruction requires: sme-f8f3265// CHECK-UNKNOWN: c12f73ff <unknown>66 67fdot za.h[w8, 0, vgx2], {z0.b-z1.b}, {z0.b-z1.b} // 11000001-10100000-00010000-0010000068// CHECK-INST: fdot za.h[w8, 0, vgx2], { z0.b, z1.b }, { z0.b, z1.b }69// CHECK-ENCODING: [0x20,0x10,0xa0,0xc1]70// CHECK-ERROR: instruction requires: sme-f8f1671// CHECK-UNKNOWN: c1a01020 <unknown>72 73fdot za.h[w8, 0], {z0.b-z1.b}, {z0.b-z1.b} // 11000001-10100000-00010000-0010000074// CHECK-INST: fdot za.h[w8, 0, vgx2], { z0.b, z1.b }, { z0.b, z1.b }75// CHECK-ENCODING: [0x20,0x10,0xa0,0xc1]76// CHECK-ERROR: instruction requires: sme-f8f1677// CHECK-UNKNOWN: c1a01020 <unknown>78 79fdot za.h[w11, 7, vgx2], {z30.b-z31.b}, {z30.b-z31.b} // 11000001-10111110-01110011-1110011180// CHECK-INST: fdot za.h[w11, 7, vgx2], { z30.b, z31.b }, { z30.b, z31.b }81// CHECK-ENCODING: [0xe7,0x73,0xbe,0xc1]82// CHECK-ERROR: instruction requires: sme-f8f1683// CHECK-UNKNOWN: c1be73e7 <unknown>84 85fdot za.h[w11, 7], {z30.b-z31.b}, {z30.b-z31.b} // 11000001-10111110-01110011-1110011186// CHECK-INST: fdot za.h[w11, 7, vgx2], { z30.b, z31.b }, { z30.b, z31.b }87// CHECK-ENCODING: [0xe7,0x73,0xbe,0xc1]88// CHECK-ERROR: instruction requires: sme-f8f1689// CHECK-UNKNOWN: c1be73e7 <unknown>90 91fdot za.s[w8, 0, vgx2], {z0.b-z1.b}, {z0.b-z1.b} // 11000001-10100000-00010000-0011000092// CHECK-INST: fdot za.s[w8, 0, vgx2], { z0.b, z1.b }, { z0.b, z1.b }93// CHECK-ENCODING: [0x30,0x10,0xa0,0xc1]94// CHECK-ERROR: instruction requires: sme-f8f3295// CHECK-UNKNOWN: c1a01030 <unknown>96 97fdot za.s[w8, 0], {z0.b-z1.b}, {z0.b-z1.b} // 11000001-10100000-00010000-0011000098// CHECK-INST: fdot za.s[w8, 0, vgx2], { z0.b, z1.b }, { z0.b, z1.b }99// CHECK-ENCODING: [0x30,0x10,0xa0,0xc1]100// CHECK-ERROR: instruction requires: sme-f8f32101// CHECK-UNKNOWN: c1a01030 <unknown>102 103fdot za.s[w11, 7, vgx2], {z30.b-z31.b}, {z30.b-z31.b} // 11000001-10111110-01110011-11110111104// CHECK-INST: fdot za.s[w11, 7, vgx2], { z30.b, z31.b }, { z30.b, z31.b }105// CHECK-ENCODING: [0xf7,0x73,0xbe,0xc1]106// CHECK-ERROR: instruction requires: sme-f8f32107// CHECK-UNKNOWN: c1be73f7 <unknown>108 109fdot za.s[w11, 7], {z30.b-z31.b}, {z30.b-z31.b} // 11000001-10111110-01110011-11110111110// CHECK-INST: fdot za.s[w11, 7, vgx2], { z30.b, z31.b }, { z30.b, z31.b }111// CHECK-ENCODING: [0xf7,0x73,0xbe,0xc1]112// CHECK-ERROR: instruction requires: sme-f8f32113// CHECK-UNKNOWN: c1be73f7 <unknown>114 115fdot za.h[w8, 0, vgx2], {z0.b-z1.b}, z0.b[0] // 11000001-11010000-00000000-00100000116// CHECK-INST: fdot za.h[w8, 0, vgx2], { z0.b, z1.b }, z0.b[0]117// CHECK-ENCODING: [0x20,0x00,0xd0,0xc1]118// CHECK-ERROR: instruction requires: sme-f8f16119// CHECK-UNKNOWN: c1d00020 <unknown>120 121fdot za.h[w8, 0], {z0.b-z1.b}, z0.b[0] // 11000001-11010000-00000000-00100000122// CHECK-INST: fdot za.h[w8, 0, vgx2], { z0.b, z1.b }, z0.b[0]123// CHECK-ENCODING: [0x20,0x00,0xd0,0xc1]124// CHECK-ERROR: instruction requires: sme-f8f16125// CHECK-UNKNOWN: c1d00020 <unknown>126 127fdot za.h[w11, 7, vgx2], {z30.b-z31.b}, z15.b[7] // 11000001-11011111-01101111-11101111128// CHECK-INST: fdot za.h[w11, 7, vgx2], { z30.b, z31.b }, z15.b[7]129// CHECK-ENCODING: [0xef,0x6f,0xdf,0xc1]130// CHECK-ERROR: instruction requires: sme-f8f16131// CHECK-UNKNOWN: c1df6fef <unknown>132 133fdot za.h[w11, 7], {z30.b-z31.b}, z15.b[7] // 11000001-11011111-01101111-11101111134// CHECK-INST: fdot za.h[w11, 7, vgx2], { z30.b, z31.b }, z15.b[7]135// CHECK-ENCODING: [0xef,0x6f,0xdf,0xc1]136// CHECK-ERROR: instruction requires: sme-f8f16137// CHECK-UNKNOWN: c1df6fef <unknown>138 139fdot za.s[w8, 0, vgx2], {z0.b-z1.b}, z0.b[0] // 11000001-01010000-00000000-00111000140// CHECK-INST: fdot za.s[w8, 0, vgx2], { z0.b, z1.b }, z0.b[0]141// CHECK-ENCODING: [0x38,0x00,0x50,0xc1]142// CHECK-ERROR: instruction requires: sme-f8f32143// CHECK-UNKNOWN: c1500038 <unknown>144 145fdot za.s[w8, 0], {z0.b-z1.b}, z0.b[0] // 11000001-01010000-00000000-00111000146// CHECK-INST: fdot za.s[w8, 0, vgx2], { z0.b, z1.b }, z0.b[0]147// CHECK-ENCODING: [0x38,0x00,0x50,0xc1]148// CHECK-ERROR: instruction requires: sme-f8f32149// CHECK-UNKNOWN: c1500038 <unknown>150 151fdot za.s[w11, 7, vgx2], {z30.b-z31.b}, z15.b[3] // 11000001-01011111-01101111-11111111152// CHECK-INST: fdot za.s[w11, 7, vgx2], { z30.b, z31.b }, z15.b[3]153// CHECK-ENCODING: [0xff,0x6f,0x5f,0xc1]154// CHECK-ERROR: instruction requires: sme-f8f32155// CHECK-UNKNOWN: c15f6fff <unknown>156 157fdot za.s[w11, 7], {z30.b-z31.b}, z15.b[3] // 11000001-01011111-01101111-11111111158// CHECK-INST: fdot za.s[w11, 7, vgx2], { z30.b, z31.b }, z15.b[3]159// CHECK-ENCODING: [0xff,0x6f,0x5f,0xc1]160// CHECK-ERROR: instruction requires: sme-f8f32161// CHECK-UNKNOWN: c15f6fff <unknown>162 163// x4164 165 166fdot za.h[w8, 0, vgx4], {z0.b-z3.b}, z0.b // 11000001-00110000-00010000-00001000167// CHECK-INST: fdot za.h[w8, 0, vgx4], { z0.b - z3.b }, z0.b168// CHECK-ENCODING: [0x08,0x10,0x30,0xc1]169// CHECK-ERROR: instruction requires: sme-f8f16170// CHECK-UNKNOWN: c1301008 <unknown>171 172fdot za.h[w8, 0], {z0.b-z3.b}, z0.b // 11000001-00110000-00010000-00001000173// CHECK-INST: fdot za.h[w8, 0, vgx4], { z0.b - z3.b }, z0.b174// CHECK-ENCODING: [0x08,0x10,0x30,0xc1]175// CHECK-ERROR: instruction requires: sme-f8f16176// CHECK-UNKNOWN: c1301008 <unknown>177 178fdot za.h[w11, 7, vgx4], {z31.b-z2.b}, z15.b // 11000001-00111111-01110011-11101111179// CHECK-INST: fdot za.h[w11, 7, vgx4], { z31.b, z0.b, z1.b, z2.b }, z15.b180// CHECK-ENCODING: [0xef,0x73,0x3f,0xc1]181// CHECK-ERROR: instruction requires: sme-f8f16182// CHECK-UNKNOWN: c13f73ef <unknown>183 184fdot za.h[w11, 7], {z31.b-z2.b}, z15.b // 11000001-00111111-01110011-11101111185// CHECK-INST: fdot za.h[w11, 7, vgx4], { z31.b, z0.b, z1.b, z2.b }, z15.b186// CHECK-ENCODING: [0xef,0x73,0x3f,0xc1]187// CHECK-ERROR: instruction requires: sme-f8f16188// CHECK-UNKNOWN: c13f73ef <unknown>189 190fdot za.s[w8, 0, vgx4], {z0.b-z3.b}, z0.b // 11000001-00110000-00010000-00011000191// CHECK-INST: fdot za.s[w8, 0, vgx4], { z0.b - z3.b }, z0.b192// CHECK-ENCODING: [0x18,0x10,0x30,0xc1]193// CHECK-ERROR: instruction requires: sme-f8f32194// CHECK-UNKNOWN: c1301018 <unknown>195 196fdot za.s[w8, 0], {z0.b-z3.b}, z0.b // 11000001-00110000-00010000-00011000197// CHECK-INST: fdot za.s[w8, 0, vgx4], { z0.b - z3.b }, z0.b198// CHECK-ENCODING: [0x18,0x10,0x30,0xc1]199// CHECK-ERROR: instruction requires: sme-f8f32200// CHECK-UNKNOWN: c1301018 <unknown>201 202fdot za.s[w11, 7, vgx4], {z31.b-z2.b}, z15.b // 11000001-00111111-01110011-11111111203// CHECK-INST: fdot za.s[w11, 7, vgx4], { z31.b, z0.b, z1.b, z2.b }, z15.b204// CHECK-ENCODING: [0xff,0x73,0x3f,0xc1]205// CHECK-ERROR: instruction requires: sme-f8f32206// CHECK-UNKNOWN: c13f73ff <unknown>207 208fdot za.s[w11, 7], {z31.b-z2.b}, z15.b // 11000001-00111111-01110011-11111111209// CHECK-INST: fdot za.s[w11, 7, vgx4], { z31.b, z0.b, z1.b, z2.b }, z15.b210// CHECK-ENCODING: [0xff,0x73,0x3f,0xc1]211// CHECK-ERROR: instruction requires: sme-f8f32212// CHECK-UNKNOWN: c13f73ff <unknown>213 214fdot za.h[w8, 0, vgx4], {z0.b-z3.b}, {z0.b-z3.b} // 11000001-10100001-00010000-00100000215// CHECK-INST: fdot za.h[w8, 0, vgx4], { z0.b - z3.b }, { z0.b - z3.b }216// CHECK-ENCODING: [0x20,0x10,0xa1,0xc1]217// CHECK-ERROR: instruction requires: sme-f8f16218// CHECK-UNKNOWN: c1a11020 <unknown>219 220fdot za.h[w8, 0], {z0.b-z3.b}, {z0.b-z3.b} // 11000001-10100001-00010000-00100000221// CHECK-INST: fdot za.h[w8, 0, vgx4], { z0.b - z3.b }, { z0.b - z3.b }222// CHECK-ENCODING: [0x20,0x10,0xa1,0xc1]223// CHECK-ERROR: instruction requires: sme-f8f16224// CHECK-UNKNOWN: c1a11020 <unknown>225 226fdot za.h[w11, 7, vgx4], {z28.b-z31.b}, {z28.b-z31.b} // 11000001-10111101-01110011-10100111227// CHECK-INST: fdot za.h[w11, 7, vgx4], { z28.b - z31.b }, { z28.b - z31.b }228// CHECK-ENCODING: [0xa7,0x73,0xbd,0xc1]229// CHECK-ERROR: instruction requires: sme-f8f16230// CHECK-UNKNOWN: c1bd73a7 <unknown>231 232fdot za.h[w11, 7], {z28.b-z31.b}, {z28.b-z31.b} // 11000001-10111101-01110011-10100111233// CHECK-INST: fdot za.h[w11, 7, vgx4], { z28.b - z31.b }, { z28.b - z31.b }234// CHECK-ENCODING: [0xa7,0x73,0xbd,0xc1]235// CHECK-ERROR: instruction requires: sme-f8f16236// CHECK-UNKNOWN: c1bd73a7 <unknown>237fdot za.h[w8, 0, vgx4], {z0.b-z3.b}, z0.b[0] // 11000001-00010000-10010000-01000000238// CHECK-INST: fdot za.h[w8, 0, vgx4], { z0.b - z3.b }, z0.b[0]239// CHECK-ENCODING: [0x40,0x90,0x10,0xc1]240// CHECK-ERROR: instruction requires: sme-f8f16241// CHECK-UNKNOWN: c1109040 <unknown>242 243fdot za.s[w8, 0, vgx4], {z0.b-z3.b}, {z0.b-z3.b} // 11000001-10100001-00010000-00110000244// CHECK-INST: fdot za.s[w8, 0, vgx4], { z0.b - z3.b }, { z0.b - z3.b }245// CHECK-ENCODING: [0x30,0x10,0xa1,0xc1]246// CHECK-ERROR: instruction requires: sme-f8f32247// CHECK-UNKNOWN: c1a11030 <unknown>248 249fdot za.s[w8, 0], {z0.b-z3.b}, {z0.b-z3.b} // 11000001-10100001-00010000-00110000250// CHECK-INST: fdot za.s[w8, 0, vgx4], { z0.b - z3.b }, { z0.b - z3.b }251// CHECK-ENCODING: [0x30,0x10,0xa1,0xc1]252// CHECK-ERROR: instruction requires: sme-f8f32253// CHECK-UNKNOWN: c1a11030 <unknown>254 255fdot za.s[w11, 7, vgx4], {z28.b-z31.b}, {z28.b-z31.b} // 11000001-10111101-01110011-10110111256// CHECK-INST: fdot za.s[w11, 7, vgx4], { z28.b - z31.b }, { z28.b - z31.b }257// CHECK-ENCODING: [0xb7,0x73,0xbd,0xc1]258// CHECK-ERROR: instruction requires: sme-f8f32259// CHECK-UNKNOWN: c1bd73b7 <unknown>260 261fdot za.s[w11, 7], {z28.b-z31.b}, {z28.b-z31.b} // 11000001-10111101-01110011-10110111262// CHECK-INST: fdot za.s[w11, 7, vgx4], { z28.b - z31.b }, { z28.b - z31.b }263// CHECK-ENCODING: [0xb7,0x73,0xbd,0xc1]264// CHECK-ERROR: instruction requires: sme-f8f32265// CHECK-UNKNOWN: c1bd73b7 <unknown>266 267fdot za.h[w8, 0], {z0.b-z3.b}, z0.b[0] // 11000001-00010000-10010000-01000000268// CHECK-INST: fdot za.h[w8, 0, vgx4], { z0.b - z3.b }, z0.b[0]269// CHECK-ENCODING: [0x40,0x90,0x10,0xc1]270// CHECK-ERROR: instruction requires: sme-f8f16271// CHECK-UNKNOWN: c1109040 <unknown>272 273fdot za.h[w11, 7, vgx4], {z28.b-z31.b}, z15.b[7] // 11000001-00011111-11111111-11001111274// CHECK-INST: fdot za.h[w11, 7, vgx4], { z28.b - z31.b }, z15.b[7]275// CHECK-ENCODING: [0xcf,0xff,0x1f,0xc1]276// CHECK-ERROR: instruction requires: sme-f8f16277// CHECK-UNKNOWN: c11fffcf <unknown>278 279fdot za.h[w11, 7], {z28.b-z31.b}, z15.b[7] // 11000001-00011111-11111111-11001111280// CHECK-INST: fdot za.h[w11, 7, vgx4], { z28.b - z31.b }, z15.b[7]281// CHECK-ENCODING: [0xcf,0xff,0x1f,0xc1]282// CHECK-ERROR: instruction requires: sme-f8f16283// CHECK-UNKNOWN: c11fffcf <unknown>284 285fdot za.s[w8, 0, vgx4], {z0.b-z3.b}, z0.b[0] // 11000001-01010000-10000000-00001000286// CHECK-INST: fdot za.s[w8, 0, vgx4], { z0.b - z3.b }, z0.b[0]287// CHECK-ENCODING: [0x08,0x80,0x50,0xc1]288// CHECK-ERROR: instruction requires: sme-f8f32289// CHECK-UNKNOWN: c1508008 <unknown>290 291fdot za.s[w8, 0], {z0.b-z3.b}, z0.b[0] // 11000001-01010000-10000000-00001000292// CHECK-INST: fdot za.s[w8, 0, vgx4], { z0.b - z3.b }, z0.b[0]293// CHECK-ENCODING: [0x08,0x80,0x50,0xc1]294// CHECK-ERROR: instruction requires: sme-f8f32295// CHECK-UNKNOWN: c1508008 <unknown>296 297fdot za.s[w11, 7, vgx4], {z28.b-z31.b}, z15.b[3] // 11000001-01011111-11101111-10001111298// CHECK-INST: fdot za.s[w11, 7, vgx4], { z28.b - z31.b }, z15.b[3]299// CHECK-ENCODING: [0x8f,0xef,0x5f,0xc1]300// CHECK-ERROR: instruction requires: sme-f8f32301// CHECK-UNKNOWN: c15fef8f <unknown>302 303fdot za.s[w11, 7], {z28.b-z31.b}, z15.b[3] // 11000001-01011111-11101111-10001111304// CHECK-INST: fdot za.s[w11, 7, vgx4], { z28.b - z31.b }, z15.b[3]305// CHECK-ENCODING: [0x8f,0xef,0x5f,0xc1]306// CHECK-ERROR: instruction requires: sme-f8f32307// CHECK-UNKNOWN: c15fef8f <unknown>308 309 310// FVDOT311 312fvdot za.h[w8, 0, vgx2], {z0.b-z1.b}, z0.b[0] // 11000001-11010000-00010000-00100000313// CHECK-INST: fvdot za.h[w8, 0, vgx2], { z0.b, z1.b }, z0.b[0]314// CHECK-ENCODING: [0x20,0x10,0xd0,0xc1]315// CHECK-ERROR: instruction requires: sme-f8f16316// CHECK-UNKNOWN: c1d01020 <unknown>317 318fvdot za.h[w8, 0], {z0.b-z1.b}, z0.b[0] // 11000001-11010000-00010000-00100000319// CHECK-INST: fvdot za.h[w8, 0, vgx2], { z0.b, z1.b }, z0.b[0]320// CHECK-ENCODING: [0x20,0x10,0xd0,0xc1]321// CHECK-ERROR: instruction requires: sme-f8f16322// CHECK-UNKNOWN: c1d01020 <unknown>323 324fvdot za.h[w11, 7, vgx2], {z30.b-z31.b}, z15.b[7] // 11000001-11011111-01111111-11101111325// CHECK-INST: fvdot za.h[w11, 7, vgx2], { z30.b, z31.b }, z15.b[7]326// CHECK-ENCODING: [0xef,0x7f,0xdf,0xc1]327// CHECK-ERROR: instruction requires: sme-f8f16328// CHECK-UNKNOWN: c1df7fef <unknown>329 330fvdot za.h[w11, 7], {z30.b-z31.b}, z15.b[7] // 11000001-11011111-01111111-11101111331// CHECK-INST: fvdot za.h[w11, 7, vgx2], { z30.b, z31.b }, z15.b[7]332// CHECK-ENCODING: [0xef,0x7f,0xdf,0xc1]333// CHECK-ERROR: instruction requires: sme-f8f16334// CHECK-UNKNOWN: c1df7fef <unknown>335 336// FVDOTB337 338fvdotb za.s[w8, 0, vgx4], {z0.b-z1.b}, z0.b[0] // 11000001-11010000-00001000-00000000339// CHECK-INST: fvdotb za.s[w8, 0, vgx4], { z0.b, z1.b }, z0.b[0]340// CHECK-ENCODING: [0x00,0x08,0xd0,0xc1]341// CHECK-ERROR: instruction requires: sme-f8f32342// CHECK-UNKNOWN: c1d00800 <unknown>343 344fvdotb za.s[w11, 7, vgx4], {z30.b-z31.b}, z15.b[3] // 11000001-11011111-01101111-11001111345// CHECK-INST: fvdotb za.s[w11, 7, vgx4], { z30.b, z31.b }, z15.b[3]346// CHECK-ENCODING: [0xcf,0x6f,0xdf,0xc1]347// CHECK-ERROR: instruction requires: sme-f8f32348// CHECK-UNKNOWN: c1df6fcf <unknown>349 350// FVDOTT351fvdott za.s[w8, 0, vgx4], {z0.b-z1.b}, z0.b[0] // 11000001-11010000-00001000-00010000352// CHECK-INST: fvdott za.s[w8, 0, vgx4], { z0.b, z1.b }, z0.b[0]353// CHECK-ENCODING: [0x10,0x08,0xd0,0xc1]354// CHECK-ERROR: instruction requires: sme-f8f32355// CHECK-UNKNOWN: c1d00810 <unknown>356 357fvdott za.s[w11, 7, vgx4], {z30.b-z31.b}, z15.b[3] // 11000001-11011111-01101111-11011111358// CHECK-INST: fvdott za.s[w11, 7, vgx4], { z30.b, z31.b }, z15.b[3]359// CHECK-ENCODING: [0xdf,0x6f,0xdf,0xc1]360// CHECK-ERROR: instruction requires: sme-f8f32361// CHECK-UNKNOWN: c1df6fdf <unknown>362