877 lines · plain
1// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-b16b16 < %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-b16b16 < %s \6// RUN: | llvm-objdump -d --mattr=+sme-b16b16 - | FileCheck %s --check-prefix=CHECK-INST7// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-b16b16 < %s \8// RUN: | llvm-objdump -d --mattr=-sme2 - | FileCheck %s --check-prefix=CHECK-UNKNOWN9// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-b16b16 < %s \10// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \11// RUN: | llvm-mc -triple=aarch64 -mattr=+sme-b16b16 -disassemble -show-encoding \12// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST13 14bfmla za.h[w8, 0, vgx2], {z0.h, z1.h}, z0.h // 11000001-01100000-00011100-0000000015// CHECK-INST: bfmla za.h[w8, 0, vgx2], { z0.h, z1.h }, z0.h16// CHECK-ENCODING: [0x00,0x1c,0x60,0xc1]17// CHECK-ERROR: instruction requires: sme-b16b1618// CHECK-UNKNOWN: c1601c00 <unknown>19 20bfmla za.h[w8, 0], {z0.h - z1.h}, z0.h // 11000001-01100000-00011100-0000000021// CHECK-INST: bfmla za.h[w8, 0, vgx2], { z0.h, z1.h }, z0.h22// CHECK-ENCODING: [0x00,0x1c,0x60,0xc1]23// CHECK-ERROR: instruction requires: sme-b16b1624// CHECK-UNKNOWN: c1601c00 <unknown>25 26bfmla za.h[w10, 5, vgx2], {z10.h, z11.h}, z5.h // 11000001-01100101-01011101-0100010127// CHECK-INST: bfmla za.h[w10, 5, vgx2], { z10.h, z11.h }, z5.h28// CHECK-ENCODING: [0x45,0x5d,0x65,0xc1]29// CHECK-ERROR: instruction requires: sme-b16b1630// CHECK-UNKNOWN: c1655d45 <unknown>31 32bfmla za.h[w10, 5], {z10.h - z11.h}, z5.h // 11000001-01100101-01011101-0100010133// CHECK-INST: bfmla za.h[w10, 5, vgx2], { z10.h, z11.h }, z5.h34// CHECK-ENCODING: [0x45,0x5d,0x65,0xc1]35// CHECK-ERROR: instruction requires: sme-b16b1636// CHECK-UNKNOWN: c1655d45 <unknown>37 38bfmla za.h[w11, 7, vgx2], {z13.h, z14.h}, z8.h // 11000001-01101000-01111101-1010011139// CHECK-INST: bfmla za.h[w11, 7, vgx2], { z13.h, z14.h }, z8.h40// CHECK-ENCODING: [0xa7,0x7d,0x68,0xc1]41// CHECK-ERROR: instruction requires: sme-b16b1642// CHECK-UNKNOWN: c1687da7 <unknown>43 44bfmla za.h[w11, 7], {z13.h - z14.h}, z8.h // 11000001-01101000-01111101-1010011145// CHECK-INST: bfmla za.h[w11, 7, vgx2], { z13.h, z14.h }, z8.h46// CHECK-ENCODING: [0xa7,0x7d,0x68,0xc1]47// CHECK-ERROR: instruction requires: sme-b16b1648// CHECK-UNKNOWN: c1687da7 <unknown>49 50bfmla za.h[w11, 7, vgx2], {z31.h, z0.h}, z15.h // 11000001-01101111-01111111-1110011151// CHECK-INST: bfmla za.h[w11, 7, vgx2], { z31.h, z0.h }, z15.h52// CHECK-ENCODING: [0xe7,0x7f,0x6f,0xc1]53// CHECK-ERROR: instruction requires: sme-b16b1654// CHECK-UNKNOWN: c16f7fe7 <unknown>55 56bfmla za.h[w11, 7], {z31.h - z0.h}, z15.h // 11000001-01101111-01111111-1110011157// CHECK-INST: bfmla za.h[w11, 7, vgx2], { z31.h, z0.h }, z15.h58// CHECK-ENCODING: [0xe7,0x7f,0x6f,0xc1]59// CHECK-ERROR: instruction requires: sme-b16b1660// CHECK-UNKNOWN: c16f7fe7 <unknown>61 62bfmla za.h[w8, 5, vgx2], {z17.h, z18.h}, z0.h // 11000001-01100000-00011110-0010010163// CHECK-INST: bfmla za.h[w8, 5, vgx2], { z17.h, z18.h }, z0.h64// CHECK-ENCODING: [0x25,0x1e,0x60,0xc1]65// CHECK-ERROR: instruction requires: sme-b16b1666// CHECK-UNKNOWN: c1601e25 <unknown>67 68bfmla za.h[w8, 5], {z17.h - z18.h}, z0.h // 11000001-01100000-00011110-0010010169// CHECK-INST: bfmla za.h[w8, 5, vgx2], { z17.h, z18.h }, z0.h70// CHECK-ENCODING: [0x25,0x1e,0x60,0xc1]71// CHECK-ERROR: instruction requires: sme-b16b1672// CHECK-UNKNOWN: c1601e25 <unknown>73 74bfmla za.h[w8, 1, vgx2], {z1.h, z2.h}, z14.h // 11000001-01101110-00011100-0010000175// CHECK-INST: bfmla za.h[w8, 1, vgx2], { z1.h, z2.h }, z14.h76// CHECK-ENCODING: [0x21,0x1c,0x6e,0xc1]77// CHECK-ERROR: instruction requires: sme-b16b1678// CHECK-UNKNOWN: c16e1c21 <unknown>79 80bfmla za.h[w8, 1], {z1.h - z2.h}, z14.h // 11000001-01101110-00011100-0010000181// CHECK-INST: bfmla za.h[w8, 1, vgx2], { z1.h, z2.h }, z14.h82// CHECK-ENCODING: [0x21,0x1c,0x6e,0xc1]83// CHECK-ERROR: instruction requires: sme-b16b1684// CHECK-UNKNOWN: c16e1c21 <unknown>85 86bfmla za.h[w10, 0, vgx2], {z19.h, z20.h}, z4.h // 11000001-01100100-01011110-0110000087// CHECK-INST: bfmla za.h[w10, 0, vgx2], { z19.h, z20.h }, z4.h88// CHECK-ENCODING: [0x60,0x5e,0x64,0xc1]89// CHECK-ERROR: instruction requires: sme-b16b1690// CHECK-UNKNOWN: c1645e60 <unknown>91 92bfmla za.h[w10, 0], {z19.h - z20.h}, z4.h // 11000001-01100100-01011110-0110000093// CHECK-INST: bfmla za.h[w10, 0, vgx2], { z19.h, z20.h }, z4.h94// CHECK-ENCODING: [0x60,0x5e,0x64,0xc1]95// CHECK-ERROR: instruction requires: sme-b16b1696// CHECK-UNKNOWN: c1645e60 <unknown>97 98bfmla za.h[w8, 0, vgx2], {z12.h, z13.h}, z2.h // 11000001-01100010-00011101-1000000099// CHECK-INST: bfmla za.h[w8, 0, vgx2], { z12.h, z13.h }, z2.h100// CHECK-ENCODING: [0x80,0x1d,0x62,0xc1]101// CHECK-ERROR: instruction requires: sme-b16b16102// CHECK-UNKNOWN: c1621d80 <unknown>103 104bfmla za.h[w8, 0], {z12.h - z13.h}, z2.h // 11000001-01100010-00011101-10000000105// CHECK-INST: bfmla za.h[w8, 0, vgx2], { z12.h, z13.h }, z2.h106// CHECK-ENCODING: [0x80,0x1d,0x62,0xc1]107// CHECK-ERROR: instruction requires: sme-b16b16108// CHECK-UNKNOWN: c1621d80 <unknown>109 110bfmla za.h[w10, 1, vgx2], {z1.h, z2.h}, z10.h // 11000001-01101010-01011100-00100001111// CHECK-INST: bfmla za.h[w10, 1, vgx2], { z1.h, z2.h }, z10.h112// CHECK-ENCODING: [0x21,0x5c,0x6a,0xc1]113// CHECK-ERROR: instruction requires: sme-b16b16114// CHECK-UNKNOWN: c16a5c21 <unknown>115 116bfmla za.h[w10, 1], {z1.h - z2.h}, z10.h // 11000001-01101010-01011100-00100001117// CHECK-INST: bfmla za.h[w10, 1, vgx2], { z1.h, z2.h }, z10.h118// CHECK-ENCODING: [0x21,0x5c,0x6a,0xc1]119// CHECK-ERROR: instruction requires: sme-b16b16120// CHECK-UNKNOWN: c16a5c21 <unknown>121 122bfmla za.h[w8, 5, vgx2], {z22.h, z23.h}, z14.h // 11000001-01101110-00011110-11000101123// CHECK-INST: bfmla za.h[w8, 5, vgx2], { z22.h, z23.h }, z14.h124// CHECK-ENCODING: [0xc5,0x1e,0x6e,0xc1]125// CHECK-ERROR: instruction requires: sme-b16b16126// CHECK-UNKNOWN: c16e1ec5 <unknown>127 128bfmla za.h[w8, 5], {z22.h - z23.h}, z14.h // 11000001-01101110-00011110-11000101129// CHECK-INST: bfmla za.h[w8, 5, vgx2], { z22.h, z23.h }, z14.h130// CHECK-ENCODING: [0xc5,0x1e,0x6e,0xc1]131// CHECK-ERROR: instruction requires: sme-b16b16132// CHECK-UNKNOWN: c16e1ec5 <unknown>133 134bfmla za.h[w11, 2, vgx2], {z9.h, z10.h}, z1.h // 11000001-01100001-01111101-00100010135// CHECK-INST: bfmla za.h[w11, 2, vgx2], { z9.h, z10.h }, z1.h136// CHECK-ENCODING: [0x22,0x7d,0x61,0xc1]137// CHECK-ERROR: instruction requires: sme-b16b16138// CHECK-UNKNOWN: c1617d22 <unknown>139 140bfmla za.h[w11, 2], {z9.h - z10.h}, z1.h // 11000001-01100001-01111101-00100010141// CHECK-INST: bfmla za.h[w11, 2, vgx2], { z9.h, z10.h }, z1.h142// CHECK-ENCODING: [0x22,0x7d,0x61,0xc1]143// CHECK-ERROR: instruction requires: sme-b16b16144// CHECK-UNKNOWN: c1617d22 <unknown>145 146bfmla za.h[w9, 7, vgx2], {z12.h, z13.h}, z11.h // 11000001-01101011-00111101-10000111147// CHECK-INST: bfmla za.h[w9, 7, vgx2], { z12.h, z13.h }, z11.h148// CHECK-ENCODING: [0x87,0x3d,0x6b,0xc1]149// CHECK-ERROR: instruction requires: sme-b16b16150// CHECK-UNKNOWN: c16b3d87 <unknown>151 152bfmla za.h[w9, 7], {z12.h - z13.h}, z11.h // 11000001-01101011-00111101-10000111153// CHECK-INST: bfmla za.h[w9, 7, vgx2], { z12.h, z13.h }, z11.h154// CHECK-ENCODING: [0x87,0x3d,0x6b,0xc1]155// CHECK-ERROR: instruction requires: sme-b16b16156// CHECK-UNKNOWN: c16b3d87 <unknown>157 158bfmla za.h[w8, 0, vgx2], {z0.h, z1.h}, z0.h[0] // 11000001-00010000-00010000-00100000159// CHECK-INST: bfmla za.h[w8, 0, vgx2], { z0.h, z1.h }, z0.h[0]160// CHECK-ENCODING: [0x20,0x10,0x10,0xc1]161// CHECK-ERROR: instruction requires: sme-b16b16162// CHECK-UNKNOWN: c1101020 <unknown>163 164bfmla za.h[w8, 0], {z0.h - z1.h}, z0.h[0] // 11000001-00010000-00010000-00100000165// CHECK-INST: bfmla za.h[w8, 0, vgx2], { z0.h, z1.h }, z0.h[0]166// CHECK-ENCODING: [0x20,0x10,0x10,0xc1]167// CHECK-ERROR: instruction requires: sme-b16b16168// CHECK-UNKNOWN: c1101020 <unknown>169 170bfmla za.h[w10, 5, vgx2], {z10.h, z11.h}, z5.h[2] // 11000001-00010101-01010101-01100101171// CHECK-INST: bfmla za.h[w10, 5, vgx2], { z10.h, z11.h }, z5.h[2]172// CHECK-ENCODING: [0x65,0x55,0x15,0xc1]173// CHECK-ERROR: instruction requires: sme-b16b16174// CHECK-UNKNOWN: c1155565 <unknown>175 176bfmla za.h[w10, 5], {z10.h - z11.h}, z5.h[2] // 11000001-00010101-01010101-01100101177// CHECK-INST: bfmla za.h[w10, 5, vgx2], { z10.h, z11.h }, z5.h[2]178// CHECK-ENCODING: [0x65,0x55,0x15,0xc1]179// CHECK-ERROR: instruction requires: sme-b16b16180// CHECK-UNKNOWN: c1155565 <unknown>181 182bfmla za.h[w11, 7, vgx2], {z12.h, z13.h}, z8.h[6] // 11000001-00011000-01111101-10100111183// CHECK-INST: bfmla za.h[w11, 7, vgx2], { z12.h, z13.h }, z8.h[6]184// CHECK-ENCODING: [0xa7,0x7d,0x18,0xc1]185// CHECK-ERROR: instruction requires: sme-b16b16186// CHECK-UNKNOWN: c1187da7 <unknown>187 188bfmla za.h[w11, 7], {z12.h - z13.h}, z8.h[6] // 11000001-00011000-01111101-10100111189// CHECK-INST: bfmla za.h[w11, 7, vgx2], { z12.h, z13.h }, z8.h[6]190// CHECK-ENCODING: [0xa7,0x7d,0x18,0xc1]191// CHECK-ERROR: instruction requires: sme-b16b16192// CHECK-UNKNOWN: c1187da7 <unknown>193 194bfmla za.h[w11, 7, vgx2], {z30.h, z31.h}, z15.h[7] // 11000001-00011111-01111111-11101111195// CHECK-INST: bfmla za.h[w11, 7, vgx2], { z30.h, z31.h }, z15.h[7]196// CHECK-ENCODING: [0xef,0x7f,0x1f,0xc1]197// CHECK-ERROR: instruction requires: sme-b16b16198// CHECK-UNKNOWN: c11f7fef <unknown>199 200bfmla za.h[w11, 7], {z30.h - z31.h}, z15.h[7] // 11000001-00011111-01111111-11101111201// CHECK-INST: bfmla za.h[w11, 7, vgx2], { z30.h, z31.h }, z15.h[7]202// CHECK-ENCODING: [0xef,0x7f,0x1f,0xc1]203// CHECK-ERROR: instruction requires: sme-b16b16204// CHECK-UNKNOWN: c11f7fef <unknown>205 206bfmla za.h[w8, 5, vgx2], {z16.h, z17.h}, z0.h[6] // 11000001-00010000-00011110-00100101207// CHECK-INST: bfmla za.h[w8, 5, vgx2], { z16.h, z17.h }, z0.h[6]208// CHECK-ENCODING: [0x25,0x1e,0x10,0xc1]209// CHECK-ERROR: instruction requires: sme-b16b16210// CHECK-UNKNOWN: c1101e25 <unknown>211 212bfmla za.h[w8, 5], {z16.h - z17.h}, z0.h[6] // 11000001-00010000-00011110-00100101213// CHECK-INST: bfmla za.h[w8, 5, vgx2], { z16.h, z17.h }, z0.h[6]214// CHECK-ENCODING: [0x25,0x1e,0x10,0xc1]215// CHECK-ERROR: instruction requires: sme-b16b16216// CHECK-UNKNOWN: c1101e25 <unknown>217 218bfmla za.h[w8, 1, vgx2], {z0.h, z1.h}, z14.h[2] // 11000001-00011110-00010100-00100001219// CHECK-INST: bfmla za.h[w8, 1, vgx2], { z0.h, z1.h }, z14.h[2]220// CHECK-ENCODING: [0x21,0x14,0x1e,0xc1]221// CHECK-ERROR: instruction requires: sme-b16b16222// CHECK-UNKNOWN: c11e1421 <unknown>223 224bfmla za.h[w8, 1], {z0.h - z1.h}, z14.h[2] // 11000001-00011110-00010100-00100001225// CHECK-INST: bfmla za.h[w8, 1, vgx2], { z0.h, z1.h }, z14.h[2]226// CHECK-ENCODING: [0x21,0x14,0x1e,0xc1]227// CHECK-ERROR: instruction requires: sme-b16b16228// CHECK-UNKNOWN: c11e1421 <unknown>229 230bfmla za.h[w10, 0, vgx2], {z18.h, z19.h}, z4.h[3] // 11000001-00010100-01010110-01101000231// CHECK-INST: bfmla za.h[w10, 0, vgx2], { z18.h, z19.h }, z4.h[3]232// CHECK-ENCODING: [0x68,0x56,0x14,0xc1]233// CHECK-ERROR: instruction requires: sme-b16b16234// CHECK-UNKNOWN: c1145668 <unknown>235 236bfmla za.h[w10, 0], {z18.h - z19.h}, z4.h[3] // 11000001-00010100-01010110-01101000237// CHECK-INST: bfmla za.h[w10, 0, vgx2], { z18.h, z19.h }, z4.h[3]238// CHECK-ENCODING: [0x68,0x56,0x14,0xc1]239// CHECK-ERROR: instruction requires: sme-b16b16240// CHECK-UNKNOWN: c1145668 <unknown>241 242bfmla za.h[w8, 0, vgx2], {z12.h, z13.h}, z2.h[4] // 11000001-00010010-00011001-10100000243// CHECK-INST: bfmla za.h[w8, 0, vgx2], { z12.h, z13.h }, z2.h[4]244// CHECK-ENCODING: [0xa0,0x19,0x12,0xc1]245// CHECK-ERROR: instruction requires: sme-b16b16246// CHECK-UNKNOWN: c11219a0 <unknown>247 248bfmla za.h[w8, 0], {z12.h - z13.h}, z2.h[4] // 11000001-00010010-00011001-10100000249// CHECK-INST: bfmla za.h[w8, 0, vgx2], { z12.h, z13.h }, z2.h[4]250// CHECK-ENCODING: [0xa0,0x19,0x12,0xc1]251// CHECK-ERROR: instruction requires: sme-b16b16252// CHECK-UNKNOWN: c11219a0 <unknown>253 254bfmla za.h[w10, 1, vgx2], {z0.h, z1.h}, z10.h[4] // 11000001-00011010-01011000-00100001255// CHECK-INST: bfmla za.h[w10, 1, vgx2], { z0.h, z1.h }, z10.h[4]256// CHECK-ENCODING: [0x21,0x58,0x1a,0xc1]257// CHECK-ERROR: instruction requires: sme-b16b16258// CHECK-UNKNOWN: c11a5821 <unknown>259 260bfmla za.h[w10, 1], {z0.h - z1.h}, z10.h[4] // 11000001-00011010-01011000-00100001261// CHECK-INST: bfmla za.h[w10, 1, vgx2], { z0.h, z1.h }, z10.h[4]262// CHECK-ENCODING: [0x21,0x58,0x1a,0xc1]263// CHECK-ERROR: instruction requires: sme-b16b16264// CHECK-UNKNOWN: c11a5821 <unknown>265 266bfmla za.h[w8, 5, vgx2], {z22.h, z23.h}, z14.h[5] // 11000001-00011110-00011010-11101101267// CHECK-INST: bfmla za.h[w8, 5, vgx2], { z22.h, z23.h }, z14.h[5]268// CHECK-ENCODING: [0xed,0x1a,0x1e,0xc1]269// CHECK-ERROR: instruction requires: sme-b16b16270// CHECK-UNKNOWN: c11e1aed <unknown>271 272bfmla za.h[w8, 5], {z22.h - z23.h}, z14.h[5] // 11000001-00011110-00011010-11101101273// CHECK-INST: bfmla za.h[w8, 5, vgx2], { z22.h, z23.h }, z14.h[5]274// CHECK-ENCODING: [0xed,0x1a,0x1e,0xc1]275// CHECK-ERROR: instruction requires: sme-b16b16276// CHECK-UNKNOWN: c11e1aed <unknown>277 278bfmla za.h[w11, 2, vgx2], {z8.h, z9.h}, z1.h[2] // 11000001-00010001-01110101-00100010279// CHECK-INST: bfmla za.h[w11, 2, vgx2], { z8.h, z9.h }, z1.h[2]280// CHECK-ENCODING: [0x22,0x75,0x11,0xc1]281// CHECK-ERROR: instruction requires: sme-b16b16282// CHECK-UNKNOWN: c1117522 <unknown>283 284bfmla za.h[w11, 2], {z8.h - z9.h}, z1.h[2] // 11000001-00010001-01110101-00100010285// CHECK-INST: bfmla za.h[w11, 2, vgx2], { z8.h, z9.h }, z1.h[2]286// CHECK-ENCODING: [0x22,0x75,0x11,0xc1]287// CHECK-ERROR: instruction requires: sme-b16b16288// CHECK-UNKNOWN: c1117522 <unknown>289 290bfmla za.h[w9, 7, vgx2], {z12.h, z13.h}, z11.h[4] // 11000001-00011011-00111001-10100111291// CHECK-INST: bfmla za.h[w9, 7, vgx2], { z12.h, z13.h }, z11.h[4]292// CHECK-ENCODING: [0xa7,0x39,0x1b,0xc1]293// CHECK-ERROR: instruction requires: sme-b16b16294// CHECK-UNKNOWN: c11b39a7 <unknown>295 296bfmla za.h[w9, 7], {z12.h - z13.h}, z11.h[4] // 11000001-00011011-00111001-10100111297// CHECK-INST: bfmla za.h[w9, 7, vgx2], { z12.h, z13.h }, z11.h[4]298// CHECK-ENCODING: [0xa7,0x39,0x1b,0xc1]299// CHECK-ERROR: instruction requires: sme-b16b16300// CHECK-UNKNOWN: c11b39a7 <unknown>301 302bfmla za.h[w8, 0, vgx2], {z0.h, z1.h}, {z0.h, z1.h} // 11000001, 11100000-00010000-00001000303// CHECK-INST: bfmla za.h[w8, 0, vgx2], { z0.h, z1.h }, { z0.h, z1.h }304// CHECK-ENCODING: [0x08,0x10,0xe0,0xc1]305// CHECK-ERROR: instruction requires: sme-b16b16306// CHECK-UNKNOWN: c1e01008 <unknown>307 308bfmla za.h[w8, 0], {z0.h - z1.h}, {z0.h - z1.h} // 11000001-11100000-00010000-00001000309// CHECK-INST: bfmla za.h[w8, 0, vgx2], { z0.h, z1.h }, { z0.h, z1.h }310// CHECK-ENCODING: [0x08,0x10,0xe0,0xc1]311// CHECK-ERROR: instruction requires: sme-b16b16312// CHECK-UNKNOWN: c1e01008 <unknown>313 314bfmla za.h[w10, 5, vgx2], {z10.h, z11.h}, {z20.h, z21.h} // 11000001, 11110100-01010001-01001101315// CHECK-INST: bfmla za.h[w10, 5, vgx2], { z10.h, z11.h }, { z20.h, z21.h }316// CHECK-ENCODING: [0x4d,0x51,0xf4,0xc1]317// CHECK-ERROR: instruction requires: sme-b16b16318// CHECK-UNKNOWN: c1f4514d <unknown>319 320bfmla za.h[w10, 5], {z10.h - z11.h}, {z20.h - z21.h} // 11000001-11110100-01010001-01001101321// CHECK-INST: bfmla za.h[w10, 5, vgx2], { z10.h, z11.h }, { z20.h, z21.h }322// CHECK-ENCODING: [0x4d,0x51,0xf4,0xc1]323// CHECK-ERROR: instruction requires: sme-b16b16324// CHECK-UNKNOWN: c1f4514d <unknown>325 326bfmla za.h[w11, 7, vgx2], {z12.h, z13.h}, {z8.h, z9.h} // 11000001, 11101000-01110001-10001111327// CHECK-INST: bfmla za.h[w11, 7, vgx2], { z12.h, z13.h }, { z8.h, z9.h }328// CHECK-ENCODING: [0x8f,0x71,0xe8,0xc1]329// CHECK-ERROR: instruction requires: sme-b16b16330// CHECK-UNKNOWN: c1e8718f <unknown>331 332bfmla za.h[w11, 7], {z12.h - z13.h}, {z8.h - z9.h} // 11000001-11101000-01110001-10001111333// CHECK-INST: bfmla za.h[w11, 7, vgx2], { z12.h, z13.h }, { z8.h, z9.h }334// CHECK-ENCODING: [0x8f,0x71,0xe8,0xc1]335// CHECK-ERROR: instruction requires: sme-b16b16336// CHECK-UNKNOWN: c1e8718f <unknown>337 338bfmla za.h[w11, 7, vgx2], {z30.h, z31.h}, {z30.h, z31.h} // 11000001, 11111110-01110011-11001111339// CHECK-INST: bfmla za.h[w11, 7, vgx2], { z30.h, z31.h }, { z30.h, z31.h }340// CHECK-ENCODING: [0xcf,0x73,0xfe,0xc1]341// CHECK-ERROR: instruction requires: sme-b16b16342// CHECK-UNKNOWN: c1fe73cf <unknown>343 344bfmla za.h[w11, 7], {z30.h - z31.h}, {z30.h - z31.h} // 11000001-11111110-01110011-11001111345// CHECK-INST: bfmla za.h[w11, 7, vgx2], { z30.h, z31.h }, { z30.h, z31.h }346// CHECK-ENCODING: [0xcf,0x73,0xfe,0xc1]347// CHECK-ERROR: instruction requires: sme-b16b16348// CHECK-UNKNOWN: c1fe73cf <unknown>349 350bfmla za.h[w8, 5, vgx2], {z16.h, z17.h}, {z16.h, z17.h} // 11000001, 11110000-00010010-00001101351// CHECK-INST: bfmla za.h[w8, 5, vgx2], { z16.h, z17.h }, { z16.h, z17.h }352// CHECK-ENCODING: [0x0d,0x12,0xf0,0xc1]353// CHECK-ERROR: instruction requires: sme-b16b16354// CHECK-UNKNOWN: c1f0120d <unknown>355 356bfmla za.h[w8, 5], {z16.h - z17.h}, {z16.h - z17.h} // 11000001-11110000-00010010-00001101357// CHECK-INST: bfmla za.h[w8, 5, vgx2], { z16.h, z17.h }, { z16.h, z17.h }358// CHECK-ENCODING: [0x0d,0x12,0xf0,0xc1]359// CHECK-ERROR: instruction requires: sme-b16b16360// CHECK-UNKNOWN: c1f0120d <unknown>361 362bfmla za.h[w8, 1, vgx2], {z0.h, z1.h}, {z30.h, z31.h} // 11000001, 11111110-00010000-00001001363// CHECK-INST: bfmla za.h[w8, 1, vgx2], { z0.h, z1.h }, { z30.h, z31.h }364// CHECK-ENCODING: [0x09,0x10,0xfe,0xc1]365// CHECK-ERROR: instruction requires: sme-b16b16366// CHECK-UNKNOWN: c1fe1009 <unknown>367 368bfmla za.h[w8, 1], {z0.h - z1.h}, {z30.h - z31.h} // 11000001-11111110-00010000-00001001369// CHECK-INST: bfmla za.h[w8, 1, vgx2], { z0.h, z1.h }, { z30.h, z31.h }370// CHECK-ENCODING: [0x09,0x10,0xfe,0xc1]371// CHECK-ERROR: instruction requires: sme-b16b16372// CHECK-UNKNOWN: c1fe1009 <unknown>373 374bfmla za.h[w10, 0, vgx2], {z18.h, z19.h}, {z20.h, z21.h} // 11000001, 11110100-01010010-01001000375// CHECK-INST: bfmla za.h[w10, 0, vgx2], { z18.h, z19.h }, { z20.h, z21.h }376// CHECK-ENCODING: [0x48,0x52,0xf4,0xc1]377// CHECK-ERROR: instruction requires: sme-b16b16378// CHECK-UNKNOWN: c1f45248 <unknown>379 380bfmla za.h[w10, 0], {z18.h - z19.h}, {z20.h - z21.h} // 11000001-11110100-01010010-01001000381// CHECK-INST: bfmla za.h[w10, 0, vgx2], { z18.h, z19.h }, { z20.h, z21.h }382// CHECK-ENCODING: [0x48,0x52,0xf4,0xc1]383// CHECK-ERROR: instruction requires: sme-b16b16384// CHECK-UNKNOWN: c1f45248 <unknown>385 386bfmla za.h[w8, 0, vgx2], {z12.h, z13.h}, {z2.h, z3.h} // 11000001, 11100010-00010001-10001000387// CHECK-INST: bfmla za.h[w8, 0, vgx2], { z12.h, z13.h }, { z2.h, z3.h }388// CHECK-ENCODING: [0x88,0x11,0xe2,0xc1]389// CHECK-ERROR: instruction requires: sme-b16b16390// CHECK-UNKNOWN: c1e21188 <unknown>391 392bfmla za.h[w8, 0], {z12.h - z13.h}, {z2.h - z3.h} // 11000001-11100010-00010001-10001000393// CHECK-INST: bfmla za.h[w8, 0, vgx2], { z12.h, z13.h }, { z2.h, z3.h }394// CHECK-ENCODING: [0x88,0x11,0xe2,0xc1]395// CHECK-ERROR: instruction requires: sme-b16b16396// CHECK-UNKNOWN: c1e21188 <unknown>397 398bfmla za.h[w10, 1, vgx2], {z0.h, z1.h}, {z26.h, z27.h} // 11000001, 11111010-01010000-00001001399// CHECK-INST: bfmla za.h[w10, 1, vgx2], { z0.h, z1.h }, { z26.h, z27.h }400// CHECK-ENCODING: [0x09,0x50,0xfa,0xc1]401// CHECK-ERROR: instruction requires: sme-b16b16402// CHECK-UNKNOWN: c1fa5009 <unknown>403 404bfmla za.h[w10, 1], {z0.h - z1.h}, {z26.h - z27.h} // 11000001-11111010-01010000-00001001405// CHECK-INST: bfmla za.h[w10, 1, vgx2], { z0.h, z1.h }, { z26.h, z27.h }406// CHECK-ENCODING: [0x09,0x50,0xfa,0xc1]407// CHECK-ERROR: instruction requires: sme-b16b16408// CHECK-UNKNOWN: c1fa5009 <unknown>409 410bfmla za.h[w8, 5, vgx2], {z22.h, z23.h}, {z30.h, z31.h} // 11000001, 11111110-00010010-11001101411// CHECK-INST: bfmla za.h[w8, 5, vgx2], { z22.h, z23.h }, { z30.h, z31.h }412// CHECK-ENCODING: [0xcd,0x12,0xfe,0xc1]413// CHECK-ERROR: instruction requires: sme-b16b16414// CHECK-UNKNOWN: c1fe12cd <unknown>415 416bfmla za.h[w8, 5], {z22.h - z23.h}, {z30.h - z31.h} // 11000001-11111110-00010010-11001101417// CHECK-INST: bfmla za.h[w8, 5, vgx2], { z22.h, z23.h }, { z30.h, z31.h }418// CHECK-ENCODING: [0xcd,0x12,0xfe,0xc1]419// CHECK-ERROR: instruction requires: sme-b16b16420// CHECK-UNKNOWN: c1fe12cd <unknown>421 422bfmla za.h[w11, 2, vgx2], {z8.h, z9.h}, {z0.h, z1.h} // 11000001, 11100000-01110001-00001010423// CHECK-INST: bfmla za.h[w11, 2, vgx2], { z8.h, z9.h }, { z0.h, z1.h }424// CHECK-ENCODING: [0x0a,0x71,0xe0,0xc1]425// CHECK-ERROR: instruction requires: sme-b16b16426// CHECK-UNKNOWN: c1e0710a <unknown>427 428bfmla za.h[w11, 2], {z8.h - z9.h}, {z0.h - z1.h} // 11000001-11100000-01110001-00001010429// CHECK-INST: bfmla za.h[w11, 2, vgx2], { z8.h, z9.h }, { z0.h, z1.h }430// CHECK-ENCODING: [0x0a,0x71,0xe0,0xc1]431// CHECK-ERROR: instruction requires: sme-b16b16432// CHECK-UNKNOWN: c1e0710a <unknown>433 434bfmla za.h[w9, 7, vgx2], {z12.h, z13.h}, {z10.h, z11.h} // 11000001, 11101010-00110001-10001111435// CHECK-INST: bfmla za.h[w9, 7, vgx2], { z12.h, z13.h }, { z10.h, z11.h }436// CHECK-ENCODING: [0x8f,0x31,0xea,0xc1]437// CHECK-ERROR: instruction requires: sme-b16b16438// CHECK-UNKNOWN: c1ea318f <unknown>439 440bfmla za.h[w9, 7], {z12.h - z13.h}, {z10.h - z11.h} // 11000001-11101010-00110001-10001111441// CHECK-INST: bfmla za.h[w9, 7, vgx2], { z12.h, z13.h }, { z10.h, z11.h }442// CHECK-ENCODING: [0x8f,0x31,0xea,0xc1]443// CHECK-ERROR: instruction requires: sme-b16b16444// CHECK-UNKNOWN: c1ea318f <unknown>445 446bfmla za.h[w8, 0, vgx4], {z0.h - z3.h}, z0.h // 11000001-01110000-00011100-00000000447// CHECK-INST: bfmla za.h[w8, 0, vgx4], { z0.h - z3.h }, z0.h448// CHECK-ENCODING: [0x00,0x1c,0x70,0xc1]449// CHECK-ERROR: instruction requires: sme-b16b16450// CHECK-UNKNOWN: c1701c00 <unknown>451 452bfmla za.h[w8, 0], {z0.h - z3.h}, z0.h // 11000001-01110000-00011100-00000000453// CHECK-INST: bfmla za.h[w8, 0, vgx4], { z0.h - z3.h }, z0.h454// CHECK-ENCODING: [0x00,0x1c,0x70,0xc1]455// CHECK-ERROR: instruction requires: sme-b16b16456// CHECK-UNKNOWN: c1701c00 <unknown>457 458bfmla za.h[w10, 5, vgx4], {z10.h - z13.h}, z5.h // 11000001-01110101-01011101-01000101459// CHECK-INST: bfmla za.h[w10, 5, vgx4], { z10.h - z13.h }, z5.h460// CHECK-ENCODING: [0x45,0x5d,0x75,0xc1]461// CHECK-ERROR: instruction requires: sme-b16b16462// CHECK-UNKNOWN: c1755d45 <unknown>463 464bfmla za.h[w10, 5], {z10.h - z13.h}, z5.h // 11000001-01110101-01011101-01000101465// CHECK-INST: bfmla za.h[w10, 5, vgx4], { z10.h - z13.h }, z5.h466// CHECK-ENCODING: [0x45,0x5d,0x75,0xc1]467// CHECK-ERROR: instruction requires: sme-b16b16468// CHECK-UNKNOWN: c1755d45 <unknown>469 470bfmla za.h[w11, 7, vgx4], {z13.h - z16.h}, z8.h // 11000001-01111000-01111101-10100111471// CHECK-INST: bfmla za.h[w11, 7, vgx4], { z13.h - z16.h }, z8.h472// CHECK-ENCODING: [0xa7,0x7d,0x78,0xc1]473// CHECK-ERROR: instruction requires: sme-b16b16474// CHECK-UNKNOWN: c1787da7 <unknown>475 476bfmla za.h[w11, 7], {z13.h - z16.h}, z8.h // 11000001-01111000-01111101-10100111477// CHECK-INST: bfmla za.h[w11, 7, vgx4], { z13.h - z16.h }, z8.h478// CHECK-ENCODING: [0xa7,0x7d,0x78,0xc1]479// CHECK-ERROR: instruction requires: sme-b16b16480// CHECK-UNKNOWN: c1787da7 <unknown>481 482bfmla za.h[w11, 7, vgx4], {z31.h, z0.h, z1.h, z2.h}, z15.h // 11000001-01111111-01111111-11100111483// CHECK-INST: bfmla za.h[w11, 7, vgx4], { z31.h, z0.h, z1.h, z2.h }, z15.h484// CHECK-ENCODING: [0xe7,0x7f,0x7f,0xc1]485// CHECK-ERROR: instruction requires: sme-b16b16486// CHECK-UNKNOWN: c17f7fe7 <unknown>487 488bfmla za.h[w11, 7], {z31.h, z0.h, z1.h, z2.h}, z15.h // 11000001-01111111-01111111-11100111489// CHECK-INST: bfmla za.h[w11, 7, vgx4], { z31.h, z0.h, z1.h, z2.h }, z15.h490// CHECK-ENCODING: [0xe7,0x7f,0x7f,0xc1]491// CHECK-ERROR: instruction requires: sme-b16b16492// CHECK-UNKNOWN: c17f7fe7 <unknown>493 494bfmla za.h[w8, 5, vgx4], {z17.h - z20.h}, z0.h // 11000001-01110000-00011110-00100101495// CHECK-INST: bfmla za.h[w8, 5, vgx4], { z17.h - z20.h }, z0.h496// CHECK-ENCODING: [0x25,0x1e,0x70,0xc1]497// CHECK-ERROR: instruction requires: sme-b16b16498// CHECK-UNKNOWN: c1701e25 <unknown>499 500bfmla za.h[w8, 5], {z17.h - z20.h}, z0.h // 11000001-01110000-00011110-00100101501// CHECK-INST: bfmla za.h[w8, 5, vgx4], { z17.h - z20.h }, z0.h502// CHECK-ENCODING: [0x25,0x1e,0x70,0xc1]503// CHECK-ERROR: instruction requires: sme-b16b16504// CHECK-UNKNOWN: c1701e25 <unknown>505 506bfmla za.h[w8, 1, vgx4], {z1.h - z4.h}, z14.h // 11000001-01111110-00011100-00100001507// CHECK-INST: bfmla za.h[w8, 1, vgx4], { z1.h - z4.h }, z14.h508// CHECK-ENCODING: [0x21,0x1c,0x7e,0xc1]509// CHECK-ERROR: instruction requires: sme-b16b16510// CHECK-UNKNOWN: c17e1c21 <unknown>511 512bfmla za.h[w8, 1], {z1.h - z4.h}, z14.h // 11000001-01111110-00011100-00100001513// CHECK-INST: bfmla za.h[w8, 1, vgx4], { z1.h - z4.h }, z14.h514// CHECK-ENCODING: [0x21,0x1c,0x7e,0xc1]515// CHECK-ERROR: instruction requires: sme-b16b16516// CHECK-UNKNOWN: c17e1c21 <unknown>517 518bfmla za.h[w10, 0, vgx4], {z19.h - z22.h}, z4.h // 11000001-01110100-01011110-01100000519// CHECK-INST: bfmla za.h[w10, 0, vgx4], { z19.h - z22.h }, z4.h520// CHECK-ENCODING: [0x60,0x5e,0x74,0xc1]521// CHECK-ERROR: instruction requires: sme-b16b16522// CHECK-UNKNOWN: c1745e60 <unknown>523 524bfmla za.h[w10, 0], {z19.h - z22.h}, z4.h // 11000001-01110100-01011110-01100000525// CHECK-INST: bfmla za.h[w10, 0, vgx4], { z19.h - z22.h }, z4.h526// CHECK-ENCODING: [0x60,0x5e,0x74,0xc1]527// CHECK-ERROR: instruction requires: sme-b16b16528// CHECK-UNKNOWN: c1745e60 <unknown>529 530bfmla za.h[w8, 0, vgx4], {z12.h - z15.h}, z2.h // 11000001-01110010-00011101-10000000531// CHECK-INST: bfmla za.h[w8, 0, vgx4], { z12.h - z15.h }, z2.h532// CHECK-ENCODING: [0x80,0x1d,0x72,0xc1]533// CHECK-ERROR: instruction requires: sme-b16b16534// CHECK-UNKNOWN: c1721d80 <unknown>535 536bfmla za.h[w8, 0], {z12.h - z15.h}, z2.h // 11000001-01110010-00011101-10000000537// CHECK-INST: bfmla za.h[w8, 0, vgx4], { z12.h - z15.h }, z2.h538// CHECK-ENCODING: [0x80,0x1d,0x72,0xc1]539// CHECK-ERROR: instruction requires: sme-b16b16540// CHECK-UNKNOWN: c1721d80 <unknown>541 542bfmla za.h[w10, 1, vgx4], {z1.h - z4.h}, z10.h // 11000001-01111010-01011100-00100001543// CHECK-INST: bfmla za.h[w10, 1, vgx4], { z1.h - z4.h }, z10.h544// CHECK-ENCODING: [0x21,0x5c,0x7a,0xc1]545// CHECK-ERROR: instruction requires: sme-b16b16546// CHECK-UNKNOWN: c17a5c21 <unknown>547 548bfmla za.h[w10, 1], {z1.h - z4.h}, z10.h // 11000001-01111010-01011100-00100001549// CHECK-INST: bfmla za.h[w10, 1, vgx4], { z1.h - z4.h }, z10.h550// CHECK-ENCODING: [0x21,0x5c,0x7a,0xc1]551// CHECK-ERROR: instruction requires: sme-b16b16552// CHECK-UNKNOWN: c17a5c21 <unknown>553 554bfmla za.h[w8, 5, vgx4], {z22.h - z25.h}, z14.h // 11000001-01111110-00011110-11000101555// CHECK-INST: bfmla za.h[w8, 5, vgx4], { z22.h - z25.h }, z14.h556// CHECK-ENCODING: [0xc5,0x1e,0x7e,0xc1]557// CHECK-ERROR: instruction requires: sme-b16b16558// CHECK-UNKNOWN: c17e1ec5 <unknown>559 560bfmla za.h[w8, 5], {z22.h - z25.h}, z14.h // 11000001-01111110-00011110-11000101561// CHECK-INST: bfmla za.h[w8, 5, vgx4], { z22.h - z25.h }, z14.h562// CHECK-ENCODING: [0xc5,0x1e,0x7e,0xc1]563// CHECK-ERROR: instruction requires: sme-b16b16564// CHECK-UNKNOWN: c17e1ec5 <unknown>565 566bfmla za.h[w11, 2, vgx4], {z9.h - z12.h}, z1.h // 11000001-01110001-01111101-00100010567// CHECK-INST: bfmla za.h[w11, 2, vgx4], { z9.h - z12.h }, z1.h568// CHECK-ENCODING: [0x22,0x7d,0x71,0xc1]569// CHECK-ERROR: instruction requires: sme-b16b16570// CHECK-UNKNOWN: c1717d22 <unknown>571 572bfmla za.h[w11, 2], {z9.h - z12.h}, z1.h // 11000001-01110001-01111101-00100010573// CHECK-INST: bfmla za.h[w11, 2, vgx4], { z9.h - z12.h }, z1.h574// CHECK-ENCODING: [0x22,0x7d,0x71,0xc1]575// CHECK-ERROR: instruction requires: sme-b16b16576// CHECK-UNKNOWN: c1717d22 <unknown>577 578bfmla za.h[w9, 7, vgx4], {z12.h - z15.h}, z11.h // 11000001-01111011-00111101-10000111579// CHECK-INST: bfmla za.h[w9, 7, vgx4], { z12.h - z15.h }, z11.h580// CHECK-ENCODING: [0x87,0x3d,0x7b,0xc1]581// CHECK-ERROR: instruction requires: sme-b16b16582// CHECK-UNKNOWN: c17b3d87 <unknown>583 584bfmla za.h[w9, 7], {z12.h - z15.h}, z11.h // 11000001-01111011-00111101-10000111585// CHECK-INST: bfmla za.h[w9, 7, vgx4], { z12.h - z15.h }, z11.h586// CHECK-ENCODING: [0x87,0x3d,0x7b,0xc1]587// CHECK-ERROR: instruction requires: sme-b16b16588// CHECK-UNKNOWN: c17b3d87 <unknown>589 590bfmla za.h[w8, 0, vgx4], {z0.h - z3.h}, z0.h[0] // 11000001-00010000-10010000-00100000591// CHECK-INST: bfmla za.h[w8, 0, vgx4], { z0.h - z3.h }, z0.h[0]592// CHECK-ENCODING: [0x20,0x90,0x10,0xc1]593// CHECK-ERROR: instruction requires: sme-b16b16594// CHECK-UNKNOWN: c1109020 <unknown>595 596bfmla za.h[w8, 0], {z0.h - z3.h}, z0.h[0] // 11000001-00010000-10010000-00100000597// CHECK-INST: bfmla za.h[w8, 0, vgx4], { z0.h - z3.h }, z0.h[0]598// CHECK-ENCODING: [0x20,0x90,0x10,0xc1]599// CHECK-ERROR: instruction requires: sme-b16b16600// CHECK-UNKNOWN: c1109020 <unknown>601 602bfmla za.h[w10, 5, vgx4], {z8.h - z11.h}, z5.h[2] // 11000001-00010101-11010101-00100101603// CHECK-INST: bfmla za.h[w10, 5, vgx4], { z8.h - z11.h }, z5.h[2]604// CHECK-ENCODING: [0x25,0xd5,0x15,0xc1]605// CHECK-ERROR: instruction requires: sme-b16b16606// CHECK-UNKNOWN: c115d525 <unknown>607 608bfmla za.h[w10, 5], {z8.h - z11.h}, z5.h[2] // 11000001-00010101-11010101-00100101609// CHECK-INST: bfmla za.h[w10, 5, vgx4], { z8.h - z11.h }, z5.h[2]610// CHECK-ENCODING: [0x25,0xd5,0x15,0xc1]611// CHECK-ERROR: instruction requires: sme-b16b16612// CHECK-UNKNOWN: c115d525 <unknown>613 614bfmla za.h[w11, 7, vgx4], {z12.h - z15.h}, z8.h[6] // 11000001-00011000-11111101-10100111615// CHECK-INST: bfmla za.h[w11, 7, vgx4], { z12.h - z15.h }, z8.h[6]616// CHECK-ENCODING: [0xa7,0xfd,0x18,0xc1]617// CHECK-ERROR: instruction requires: sme-b16b16618// CHECK-UNKNOWN: c118fda7 <unknown>619 620bfmla za.h[w11, 7], {z12.h - z15.h}, z8.h[6] // 11000001-00011000-11111101-10100111621// CHECK-INST: bfmla za.h[w11, 7, vgx4], { z12.h - z15.h }, z8.h[6]622// CHECK-ENCODING: [0xa7,0xfd,0x18,0xc1]623// CHECK-ERROR: instruction requires: sme-b16b16624// CHECK-UNKNOWN: c118fda7 <unknown>625 626bfmla za.h[w11, 7, vgx4], {z28.h - z31.h}, z15.h[7] // 11000001-00011111-11111111-10101111627// CHECK-INST: bfmla za.h[w11, 7, vgx4], { z28.h - z31.h }, z15.h[7]628// CHECK-ENCODING: [0xaf,0xff,0x1f,0xc1]629// CHECK-ERROR: instruction requires: sme-b16b16630// CHECK-UNKNOWN: c11fffaf <unknown>631 632bfmla za.h[w11, 7], {z28.h - z31.h}, z15.h[7] // 11000001-00011111-11111111-10101111633// CHECK-INST: bfmla za.h[w11, 7, vgx4], { z28.h - z31.h }, z15.h[7]634// CHECK-ENCODING: [0xaf,0xff,0x1f,0xc1]635// CHECK-ERROR: instruction requires: sme-b16b16636// CHECK-UNKNOWN: c11fffaf <unknown>637 638bfmla za.h[w8, 5, vgx4], {z16.h - z19.h}, z0.h[6] // 11000001-00010000-10011110-00100101639// CHECK-INST: bfmla za.h[w8, 5, vgx4], { z16.h - z19.h }, z0.h[6]640// CHECK-ENCODING: [0x25,0x9e,0x10,0xc1]641// CHECK-ERROR: instruction requires: sme-b16b16642// CHECK-UNKNOWN: c1109e25 <unknown>643 644bfmla za.h[w8, 5], {z16.h - z19.h}, z0.h[6] // 11000001-00010000-10011110-00100101645// CHECK-INST: bfmla za.h[w8, 5, vgx4], { z16.h - z19.h }, z0.h[6]646// CHECK-ENCODING: [0x25,0x9e,0x10,0xc1]647// CHECK-ERROR: instruction requires: sme-b16b16648// CHECK-UNKNOWN: c1109e25 <unknown>649 650bfmla za.h[w8, 1, vgx4], {z0.h - z3.h}, z14.h[2] // 11000001-00011110-10010100-00100001651// CHECK-INST: bfmla za.h[w8, 1, vgx4], { z0.h - z3.h }, z14.h[2]652// CHECK-ENCODING: [0x21,0x94,0x1e,0xc1]653// CHECK-ERROR: instruction requires: sme-b16b16654// CHECK-UNKNOWN: c11e9421 <unknown>655 656bfmla za.h[w8, 1], {z0.h - z3.h}, z14.h[2] // 11000001-00011110-10010100-00100001657// CHECK-INST: bfmla za.h[w8, 1, vgx4], { z0.h - z3.h }, z14.h[2]658// CHECK-ENCODING: [0x21,0x94,0x1e,0xc1]659// CHECK-ERROR: instruction requires: sme-b16b16660// CHECK-UNKNOWN: c11e9421 <unknown>661 662bfmla za.h[w10, 0, vgx4], {z16.h - z19.h}, z4.h[3] // 11000001-00010100-11010110-00101000663// CHECK-INST: bfmla za.h[w10, 0, vgx4], { z16.h - z19.h }, z4.h[3]664// CHECK-ENCODING: [0x28,0xd6,0x14,0xc1]665// CHECK-ERROR: instruction requires: sme-b16b16666// CHECK-UNKNOWN: c114d628 <unknown>667 668bfmla za.h[w10, 0], {z16.h - z19.h}, z4.h[3] // 11000001-00010100-11010110-00101000669// CHECK-INST: bfmla za.h[w10, 0, vgx4], { z16.h - z19.h }, z4.h[3]670// CHECK-ENCODING: [0x28,0xd6,0x14,0xc1]671// CHECK-ERROR: instruction requires: sme-b16b16672// CHECK-UNKNOWN: c114d628 <unknown>673 674bfmla za.h[w8, 0, vgx4], {z12.h - z15.h}, z2.h[4] // 11000001-00010010-10011001-10100000675// CHECK-INST: bfmla za.h[w8, 0, vgx4], { z12.h - z15.h }, z2.h[4]676// CHECK-ENCODING: [0xa0,0x99,0x12,0xc1]677// CHECK-ERROR: instruction requires: sme-b16b16678// CHECK-UNKNOWN: c11299a0 <unknown>679 680bfmla za.h[w8, 0], {z12.h - z15.h}, z2.h[4] // 11000001-00010010-10011001-10100000681// CHECK-INST: bfmla za.h[w8, 0, vgx4], { z12.h - z15.h }, z2.h[4]682// CHECK-ENCODING: [0xa0,0x99,0x12,0xc1]683// CHECK-ERROR: instruction requires: sme-b16b16684// CHECK-UNKNOWN: c11299a0 <unknown>685 686bfmla za.h[w10, 1, vgx4], {z0.h - z3.h}, z10.h[4] // 11000001-00011010-11011000-00100001687// CHECK-INST: bfmla za.h[w10, 1, vgx4], { z0.h - z3.h }, z10.h[4]688// CHECK-ENCODING: [0x21,0xd8,0x1a,0xc1]689// CHECK-ERROR: instruction requires: sme-b16b16690// CHECK-UNKNOWN: c11ad821 <unknown>691 692bfmla za.h[w10, 1], {z0.h - z3.h}, z10.h[4] // 11000001-00011010-11011000-00100001693// CHECK-INST: bfmla za.h[w10, 1, vgx4], { z0.h - z3.h }, z10.h[4]694// CHECK-ENCODING: [0x21,0xd8,0x1a,0xc1]695// CHECK-ERROR: instruction requires: sme-b16b16696// CHECK-UNKNOWN: c11ad821 <unknown>697 698bfmla za.h[w8, 5, vgx4], {z20.h - z23.h}, z14.h[5] // 11000001-00011110-10011010-10101101699// CHECK-INST: bfmla za.h[w8, 5, vgx4], { z20.h - z23.h }, z14.h[5]700// CHECK-ENCODING: [0xad,0x9a,0x1e,0xc1]701// CHECK-ERROR: instruction requires: sme-b16b16702// CHECK-UNKNOWN: c11e9aad <unknown>703 704bfmla za.h[w8, 5], {z20.h - z23.h}, z14.h[5] // 11000001-00011110-10011010-10101101705// CHECK-INST: bfmla za.h[w8, 5, vgx4], { z20.h - z23.h }, z14.h[5]706// CHECK-ENCODING: [0xad,0x9a,0x1e,0xc1]707// CHECK-ERROR: instruction requires: sme-b16b16708// CHECK-UNKNOWN: c11e9aad <unknown>709 710bfmla za.h[w11, 2, vgx4], {z8.h - z11.h}, z1.h[2] // 11000001-00010001-11110101-00100010711// CHECK-INST: bfmla za.h[w11, 2, vgx4], { z8.h - z11.h }, z1.h[2]712// CHECK-ENCODING: [0x22,0xf5,0x11,0xc1]713// CHECK-ERROR: instruction requires: sme-b16b16714// CHECK-UNKNOWN: c111f522 <unknown>715 716bfmla za.h[w11, 2], {z8.h - z11.h}, z1.h[2] // 11000001-00010001-11110101-00100010717// CHECK-INST: bfmla za.h[w11, 2, vgx4], { z8.h - z11.h }, z1.h[2]718// CHECK-ENCODING: [0x22,0xf5,0x11,0xc1]719// CHECK-ERROR: instruction requires: sme-b16b16720// CHECK-UNKNOWN: c111f522 <unknown>721 722bfmla za.h[w9, 7, vgx4], {z12.h - z15.h}, z11.h[4] // 11000001-00011011-10111001-10100111723// CHECK-INST: bfmla za.h[w9, 7, vgx4], { z12.h - z15.h }, z11.h[4]724// CHECK-ENCODING: [0xa7,0xb9,0x1b,0xc1]725// CHECK-ERROR: instruction requires: sme-b16b16726// CHECK-UNKNOWN: c11bb9a7 <unknown>727 728bfmla za.h[w9, 7], {z12.h - z15.h}, z11.h[4] // 11000001-00011011-10111001-10100111729// CHECK-INST: bfmla za.h[w9, 7, vgx4], { z12.h - z15.h }, z11.h[4]730// CHECK-ENCODING: [0xa7,0xb9,0x1b,0xc1]731// CHECK-ERROR: instruction requires: sme-b16b16732// CHECK-UNKNOWN: c11bb9a7 <unknown>733 734bfmla za.h[w8, 0, vgx4], {z0.h - z3.h}, {z0.h - z3.h} // 11000001-11100001-00010000-00001000735// CHECK-INST: bfmla za.h[w8, 0, vgx4], { z0.h - z3.h }, { z0.h - z3.h }736// CHECK-ENCODING: [0x08,0x10,0xe1,0xc1]737// CHECK-ERROR: instruction requires: sme-b16b16738// CHECK-UNKNOWN: c1e11008 <unknown>739 740bfmla za.h[w8, 0], {z0.h - z3.h}, {z0.h - z3.h} // 11000001-11100001-00010000-00001000741// CHECK-INST: bfmla za.h[w8, 0, vgx4], { z0.h - z3.h }, { z0.h - z3.h }742// CHECK-ENCODING: [0x08,0x10,0xe1,0xc1]743// CHECK-ERROR: instruction requires: sme-b16b16744// CHECK-UNKNOWN: c1e11008 <unknown>745 746bfmla za.h[w10, 5, vgx4], {z8.h - z11.h}, {z20.h - z23.h} // 11000001-11110101-01010001-00001101747// CHECK-INST: bfmla za.h[w10, 5, vgx4], { z8.h - z11.h }, { z20.h - z23.h }748// CHECK-ENCODING: [0x0d,0x51,0xf5,0xc1]749// CHECK-ERROR: instruction requires: sme-b16b16750// CHECK-UNKNOWN: c1f5510d <unknown>751 752bfmla za.h[w10, 5], {z8.h - z11.h}, {z20.h - z23.h} // 11000001-11110101-01010001-00001101753// CHECK-INST: bfmla za.h[w10, 5, vgx4], { z8.h - z11.h }, { z20.h - z23.h }754// CHECK-ENCODING: [0x0d,0x51,0xf5,0xc1]755// CHECK-ERROR: instruction requires: sme-b16b16756// CHECK-UNKNOWN: c1f5510d <unknown>757 758bfmla za.h[w11, 7, vgx4], {z12.h - z15.h}, {z8.h - z11.h} // 11000001-11101001-01110001-10001111759// CHECK-INST: bfmla za.h[w11, 7, vgx4], { z12.h - z15.h }, { z8.h - z11.h }760// CHECK-ENCODING: [0x8f,0x71,0xe9,0xc1]761// CHECK-ERROR: instruction requires: sme-b16b16762// CHECK-UNKNOWN: c1e9718f <unknown>763 764bfmla za.h[w11, 7], {z12.h - z15.h}, {z8.h - z11.h} // 11000001-11101001-01110001-10001111765// CHECK-INST: bfmla za.h[w11, 7, vgx4], { z12.h - z15.h }, { z8.h - z11.h }766// CHECK-ENCODING: [0x8f,0x71,0xe9,0xc1]767// CHECK-ERROR: instruction requires: sme-b16b16768// CHECK-UNKNOWN: c1e9718f <unknown>769 770bfmla za.h[w11, 7, vgx4], {z28.h - z31.h}, {z28.h - z31.h} // 11000001-11111101-01110011-10001111771// CHECK-INST: bfmla za.h[w11, 7, vgx4], { z28.h - z31.h }, { z28.h - z31.h }772// CHECK-ENCODING: [0x8f,0x73,0xfd,0xc1]773// CHECK-ERROR: instruction requires: sme-b16b16774// CHECK-UNKNOWN: c1fd738f <unknown>775 776bfmla za.h[w11, 7], {z28.h - z31.h}, {z28.h - z31.h} // 11000001-11111101-01110011-10001111777// CHECK-INST: bfmla za.h[w11, 7, vgx4], { z28.h - z31.h }, { z28.h - z31.h }778// CHECK-ENCODING: [0x8f,0x73,0xfd,0xc1]779// CHECK-ERROR: instruction requires: sme-b16b16780// CHECK-UNKNOWN: c1fd738f <unknown>781 782bfmla za.h[w8, 5, vgx4], {z16.h - z19.h}, {z16.h - z19.h} // 11000001-11110001-00010010-00001101783// CHECK-INST: bfmla za.h[w8, 5, vgx4], { z16.h - z19.h }, { z16.h - z19.h }784// CHECK-ENCODING: [0x0d,0x12,0xf1,0xc1]785// CHECK-ERROR: instruction requires: sme-b16b16786// CHECK-UNKNOWN: c1f1120d <unknown>787 788bfmla za.h[w8, 5], {z16.h - z19.h}, {z16.h - z19.h} // 11000001-11110001-00010010-00001101789// CHECK-INST: bfmla za.h[w8, 5, vgx4], { z16.h - z19.h }, { z16.h - z19.h }790// CHECK-ENCODING: [0x0d,0x12,0xf1,0xc1]791// CHECK-ERROR: instruction requires: sme-b16b16792// CHECK-UNKNOWN: c1f1120d <unknown>793 794bfmla za.h[w8, 1, vgx4], {z0.h - z3.h}, {z28.h - z31.h} // 11000001-11111101-00010000-00001001795// CHECK-INST: bfmla za.h[w8, 1, vgx4], { z0.h - z3.h }, { z28.h - z31.h }796// CHECK-ENCODING: [0x09,0x10,0xfd,0xc1]797// CHECK-ERROR: instruction requires: sme-b16b16798// CHECK-UNKNOWN: c1fd1009 <unknown>799 800bfmla za.h[w8, 1], {z0.h - z3.h}, {z28.h - z31.h} // 11000001-11111101-00010000-00001001801// CHECK-INST: bfmla za.h[w8, 1, vgx4], { z0.h - z3.h }, { z28.h - z31.h }802// CHECK-ENCODING: [0x09,0x10,0xfd,0xc1]803// CHECK-ERROR: instruction requires: sme-b16b16804// CHECK-UNKNOWN: c1fd1009 <unknown>805 806bfmla za.h[w10, 0, vgx4], {z16.h - z19.h}, {z20.h - z23.h} // 11000001-11110101-01010010-00001000807// CHECK-INST: bfmla za.h[w10, 0, vgx4], { z16.h - z19.h }, { z20.h - z23.h }808// CHECK-ENCODING: [0x08,0x52,0xf5,0xc1]809// CHECK-ERROR: instruction requires: sme-b16b16810// CHECK-UNKNOWN: c1f55208 <unknown>811 812bfmla za.h[w10, 0], {z16.h - z19.h}, {z20.h - z23.h} // 11000001-11110101-01010010-00001000813// CHECK-INST: bfmla za.h[w10, 0, vgx4], { z16.h - z19.h }, { z20.h - z23.h }814// CHECK-ENCODING: [0x08,0x52,0xf5,0xc1]815// CHECK-ERROR: instruction requires: sme-b16b16816// CHECK-UNKNOWN: c1f55208 <unknown>817 818bfmla za.h[w8, 0, vgx4], {z12.h - z15.h}, {z0.h - z3.h} // 11000001-11100001-00010001-10001000819// CHECK-INST: bfmla za.h[w8, 0, vgx4], { z12.h - z15.h }, { z0.h - z3.h }820// CHECK-ENCODING: [0x88,0x11,0xe1,0xc1]821// CHECK-ERROR: instruction requires: sme-b16b16822// CHECK-UNKNOWN: c1e11188 <unknown>823 824bfmla za.h[w8, 0], {z12.h - z15.h}, {z0.h - z3.h} // 11000001-11100001-00010001-10001000825// CHECK-INST: bfmla za.h[w8, 0, vgx4], { z12.h - z15.h }, { z0.h - z3.h }826// CHECK-ENCODING: [0x88,0x11,0xe1,0xc1]827// CHECK-ERROR: instruction requires: sme-b16b16828// CHECK-UNKNOWN: c1e11188 <unknown>829 830bfmla za.h[w10, 1, vgx4], {z0.h - z3.h}, {z24.h - z27.h} // 11000001-11111001-01010000-00001001831// CHECK-INST: bfmla za.h[w10, 1, vgx4], { z0.h - z3.h }, { z24.h - z27.h }832// CHECK-ENCODING: [0x09,0x50,0xf9,0xc1]833// CHECK-ERROR: instruction requires: sme-b16b16834// CHECK-UNKNOWN: c1f95009 <unknown>835 836bfmla za.h[w10, 1], {z0.h - z3.h}, {z24.h - z27.h} // 11000001-11111001-01010000-00001001837// CHECK-INST: bfmla za.h[w10, 1, vgx4], { z0.h - z3.h }, { z24.h - z27.h }838// CHECK-ENCODING: [0x09,0x50,0xf9,0xc1]839// CHECK-ERROR: instruction requires: sme-b16b16840// CHECK-UNKNOWN: c1f95009 <unknown>841 842bfmla za.h[w8, 5, vgx4], {z20.h - z23.h}, {z28.h - z31.h} // 11000001-11111101-00010010-10001101843// CHECK-INST: bfmla za.h[w8, 5, vgx4], { z20.h - z23.h }, { z28.h - z31.h }844// CHECK-ENCODING: [0x8d,0x12,0xfd,0xc1]845// CHECK-ERROR: instruction requires: sme-b16b16846// CHECK-UNKNOWN: c1fd128d <unknown>847 848bfmla za.h[w8, 5], {z20.h - z23.h}, {z28.h - z31.h} // 11000001-11111101-00010010-10001101849// CHECK-INST: bfmla za.h[w8, 5, vgx4], { z20.h - z23.h }, { z28.h - z31.h }850// CHECK-ENCODING: [0x8d,0x12,0xfd,0xc1]851// CHECK-ERROR: instruction requires: sme-b16b16852// CHECK-UNKNOWN: c1fd128d <unknown>853 854bfmla za.h[w11, 2, vgx4], {z8.h - z11.h}, {z0.h - z3.h} // 11000001-11100001-01110001-00001010855// CHECK-INST: bfmla za.h[w11, 2, vgx4], { z8.h - z11.h }, { z0.h - z3.h }856// CHECK-ENCODING: [0x0a,0x71,0xe1,0xc1]857// CHECK-ERROR: instruction requires: sme-b16b16858// CHECK-UNKNOWN: c1e1710a <unknown>859 860bfmla za.h[w11, 2], {z8.h - z11.h}, {z0.h - z3.h} // 11000001-11100001-01110001-00001010861// CHECK-INST: bfmla za.h[w11, 2, vgx4], { z8.h - z11.h }, { z0.h - z3.h }862// CHECK-ENCODING: [0x0a,0x71,0xe1,0xc1]863// CHECK-ERROR: instruction requires: sme-b16b16864// CHECK-UNKNOWN: c1e1710a <unknown>865 866bfmla za.h[w9, 7, vgx4], {z12.h - z15.h}, {z8.h - z11.h} // 11000001-11101001-00110001-10001111867// CHECK-INST: bfmla za.h[w9, 7, vgx4], { z12.h - z15.h }, { z8.h - z11.h }868// CHECK-ENCODING: [0x8f,0x31,0xe9,0xc1]869// CHECK-ERROR: instruction requires: sme-b16b16870// CHECK-UNKNOWN: c1e9318f <unknown>871 872bfmla za.h[w9, 7], {z12.h - z15.h}, {z8.h - z11.h} // 11000001-11101001-00110001-10001111873// CHECK-INST: bfmla za.h[w9, 7, vgx4], { z12.h - z15.h }, { z8.h - z11.h }874// CHECK-ENCODING: [0x8f,0x31,0xe9,0xc1]875// CHECK-ERROR: instruction requires: sme-b16b16876// CHECK-UNKNOWN: c1e9318f <unknown>877