brintos

brintos / llvm-project-archived public Read only

0
0
Text · 41.5 KiB · be7d21a Raw
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 14bfmls   za.h[w8, 0, vgx2], {z0.h, z1.h}, z0.h  // 11000001-01100000-00011100-0000100015// CHECK-INST: bfmls   za.h[w8, 0, vgx2], { z0.h, z1.h }, z0.h16// CHECK-ENCODING: [0x08,0x1c,0x60,0xc1]17// CHECK-ERROR: instruction requires: sme-b16b1618// CHECK-UNKNOWN: c1601c08 <unknown>19 20bfmls   za.h[w8, 0], {z0.h - z1.h}, z0.h  // 11000001-01100000-00011100-0000100021// CHECK-INST: bfmls   za.h[w8, 0, vgx2], { z0.h, z1.h }, z0.h22// CHECK-ENCODING: [0x08,0x1c,0x60,0xc1]23// CHECK-ERROR: instruction requires: sme-b16b1624// CHECK-UNKNOWN: c1601c08 <unknown>25 26bfmls   za.h[w10, 5, vgx2], {z10.h, z11.h}, z5.h  // 11000001-01100101-01011101-0100110127// CHECK-INST: bfmls   za.h[w10, 5, vgx2], { z10.h, z11.h }, z5.h28// CHECK-ENCODING: [0x4d,0x5d,0x65,0xc1]29// CHECK-ERROR: instruction requires: sme-b16b1630// CHECK-UNKNOWN: c1655d4d <unknown>31 32bfmls   za.h[w10, 5], {z10.h - z11.h}, z5.h  // 11000001-01100101-01011101-0100110133// CHECK-INST: bfmls   za.h[w10, 5, vgx2], { z10.h, z11.h }, z5.h34// CHECK-ENCODING: [0x4d,0x5d,0x65,0xc1]35// CHECK-ERROR: instruction requires: sme-b16b1636// CHECK-UNKNOWN: c1655d4d <unknown>37 38bfmls   za.h[w11, 7, vgx2], {z13.h, z14.h}, z8.h  // 11000001-01101000-01111101-1010111139// CHECK-INST: bfmls   za.h[w11, 7, vgx2], { z13.h, z14.h }, z8.h40// CHECK-ENCODING: [0xaf,0x7d,0x68,0xc1]41// CHECK-ERROR: instruction requires: sme-b16b1642// CHECK-UNKNOWN: c1687daf <unknown>43 44bfmls   za.h[w11, 7], {z13.h - z14.h}, z8.h  // 11000001-01101000-01111101-1010111145// CHECK-INST: bfmls   za.h[w11, 7, vgx2], { z13.h, z14.h }, z8.h46// CHECK-ENCODING: [0xaf,0x7d,0x68,0xc1]47// CHECK-ERROR: instruction requires: sme-b16b1648// CHECK-UNKNOWN: c1687daf <unknown>49 50bfmls   za.h[w11, 7, vgx2], {z31.h, z0.h}, z15.h  // 11000001-01101111-01111111-1110111151// CHECK-INST: bfmls   za.h[w11, 7, vgx2], { z31.h, z0.h }, z15.h52// CHECK-ENCODING: [0xef,0x7f,0x6f,0xc1]53// CHECK-ERROR: instruction requires: sme-b16b1654// CHECK-UNKNOWN: c16f7fef <unknown>55 56bfmls   za.h[w11, 7], {z31.h - z0.h}, z15.h  // 11000001-01101111-01111111-1110111157// CHECK-INST: bfmls   za.h[w11, 7, vgx2], { z31.h, z0.h }, z15.h58// CHECK-ENCODING: [0xef,0x7f,0x6f,0xc1]59// CHECK-ERROR: instruction requires: sme-b16b1660// CHECK-UNKNOWN: c16f7fef <unknown>61 62bfmls   za.h[w8, 5, vgx2], {z17.h, z18.h}, z0.h  // 11000001-01100000-00011110-0010110163// CHECK-INST: bfmls   za.h[w8, 5, vgx2], { z17.h, z18.h }, z0.h64// CHECK-ENCODING: [0x2d,0x1e,0x60,0xc1]65// CHECK-ERROR: instruction requires: sme-b16b1666// CHECK-UNKNOWN: c1601e2d <unknown>67 68bfmls   za.h[w8, 5], {z17.h - z18.h}, z0.h  // 11000001-01100000-00011110-0010110169// CHECK-INST: bfmls   za.h[w8, 5, vgx2], { z17.h, z18.h }, z0.h70// CHECK-ENCODING: [0x2d,0x1e,0x60,0xc1]71// CHECK-ERROR: instruction requires: sme-b16b1672// CHECK-UNKNOWN: c1601e2d <unknown>73 74bfmls   za.h[w8, 1, vgx2], {z1.h, z2.h}, z14.h  // 11000001-01101110-00011100-0010100175// CHECK-INST: bfmls   za.h[w8, 1, vgx2], { z1.h, z2.h }, z14.h76// CHECK-ENCODING: [0x29,0x1c,0x6e,0xc1]77// CHECK-ERROR: instruction requires: sme-b16b1678// CHECK-UNKNOWN: c16e1c29 <unknown>79 80bfmls   za.h[w8, 1], {z1.h - z2.h}, z14.h  // 11000001-01101110-00011100-0010100181// CHECK-INST: bfmls   za.h[w8, 1, vgx2], { z1.h, z2.h }, z14.h82// CHECK-ENCODING: [0x29,0x1c,0x6e,0xc1]83// CHECK-ERROR: instruction requires: sme-b16b1684// CHECK-UNKNOWN: c16e1c29 <unknown>85 86bfmls   za.h[w10, 0, vgx2], {z19.h, z20.h}, z4.h  // 11000001-01100100-01011110-0110100087// CHECK-INST: bfmls   za.h[w10, 0, vgx2], { z19.h, z20.h }, z4.h88// CHECK-ENCODING: [0x68,0x5e,0x64,0xc1]89// CHECK-ERROR: instruction requires: sme-b16b1690// CHECK-UNKNOWN: c1645e68 <unknown>91 92bfmls   za.h[w10, 0], {z19.h - z20.h}, z4.h  // 11000001-01100100-01011110-0110100093// CHECK-INST: bfmls   za.h[w10, 0, vgx2], { z19.h, z20.h }, z4.h94// CHECK-ENCODING: [0x68,0x5e,0x64,0xc1]95// CHECK-ERROR: instruction requires: sme-b16b1696// CHECK-UNKNOWN: c1645e68 <unknown>97 98bfmls   za.h[w8, 0, vgx2], {z12.h, z13.h}, z2.h  // 11000001-01100010-00011101-1000100099// CHECK-INST: bfmls   za.h[w8, 0, vgx2], { z12.h, z13.h }, z2.h100// CHECK-ENCODING: [0x88,0x1d,0x62,0xc1]101// CHECK-ERROR: instruction requires: sme-b16b16102// CHECK-UNKNOWN: c1621d88 <unknown>103 104bfmls   za.h[w8, 0], {z12.h - z13.h}, z2.h  // 11000001-01100010-00011101-10001000105// CHECK-INST: bfmls   za.h[w8, 0, vgx2], { z12.h, z13.h }, z2.h106// CHECK-ENCODING: [0x88,0x1d,0x62,0xc1]107// CHECK-ERROR: instruction requires: sme-b16b16108// CHECK-UNKNOWN: c1621d88 <unknown>109 110bfmls   za.h[w10, 1, vgx2], {z1.h, z2.h}, z10.h  // 11000001-01101010-01011100-00101001111// CHECK-INST: bfmls   za.h[w10, 1, vgx2], { z1.h, z2.h }, z10.h112// CHECK-ENCODING: [0x29,0x5c,0x6a,0xc1]113// CHECK-ERROR: instruction requires: sme-b16b16114// CHECK-UNKNOWN: c16a5c29 <unknown>115 116bfmls   za.h[w10, 1], {z1.h - z2.h}, z10.h  // 11000001-01101010-01011100-00101001117// CHECK-INST: bfmls   za.h[w10, 1, vgx2], { z1.h, z2.h }, z10.h118// CHECK-ENCODING: [0x29,0x5c,0x6a,0xc1]119// CHECK-ERROR: instruction requires: sme-b16b16120// CHECK-UNKNOWN: c16a5c29 <unknown>121 122bfmls   za.h[w8, 5, vgx2], {z22.h, z23.h}, z14.h  // 11000001-01101110-00011110-11001101123// CHECK-INST: bfmls   za.h[w8, 5, vgx2], { z22.h, z23.h }, z14.h124// CHECK-ENCODING: [0xcd,0x1e,0x6e,0xc1]125// CHECK-ERROR: instruction requires: sme-b16b16126// CHECK-UNKNOWN: c16e1ecd <unknown>127 128bfmls   za.h[w8, 5], {z22.h - z23.h}, z14.h  // 11000001-01101110-00011110-11001101129// CHECK-INST: bfmls   za.h[w8, 5, vgx2], { z22.h, z23.h }, z14.h130// CHECK-ENCODING: [0xcd,0x1e,0x6e,0xc1]131// CHECK-ERROR: instruction requires: sme-b16b16132// CHECK-UNKNOWN: c16e1ecd <unknown>133 134bfmls   za.h[w11, 2, vgx2], {z9.h, z10.h}, z1.h  // 11000001-01100001-01111101-00101010135// CHECK-INST: bfmls   za.h[w11, 2, vgx2], { z9.h, z10.h }, z1.h136// CHECK-ENCODING: [0x2a,0x7d,0x61,0xc1]137// CHECK-ERROR: instruction requires: sme-b16b16138// CHECK-UNKNOWN: c1617d2a <unknown>139 140bfmls   za.h[w11, 2], {z9.h - z10.h}, z1.h  // 11000001-01100001-01111101-00101010141// CHECK-INST: bfmls   za.h[w11, 2, vgx2], { z9.h, z10.h }, z1.h142// CHECK-ENCODING: [0x2a,0x7d,0x61,0xc1]143// CHECK-ERROR: instruction requires: sme-b16b16144// CHECK-UNKNOWN: c1617d2a <unknown>145 146bfmls   za.h[w9, 7, vgx2], {z12.h, z13.h}, z11.h  // 11000001-01101011-00111101-10001111147// CHECK-INST: bfmls   za.h[w9, 7, vgx2], { z12.h, z13.h }, z11.h148// CHECK-ENCODING: [0x8f,0x3d,0x6b,0xc1]149// CHECK-ERROR: instruction requires: sme-b16b16150// CHECK-UNKNOWN: c16b3d8f <unknown>151 152bfmls   za.h[w9, 7], {z12.h - z13.h}, z11.h  // 11000001-01101011-00111101-10001111153// CHECK-INST: bfmls   za.h[w9, 7, vgx2], { z12.h, z13.h }, z11.h154// CHECK-ENCODING: [0x8f,0x3d,0x6b,0xc1]155// CHECK-ERROR: instruction requires: sme-b16b16156// CHECK-UNKNOWN: c16b3d8f <unknown>157 158bfmls   za.h[w8, 0, vgx2], {z0.h, z1.h}, z0.h[0]  // 11000001-00010000-00010000-00110000159// CHECK-INST: bfmls   za.h[w8, 0, vgx2], { z0.h, z1.h }, z0.h[0]160// CHECK-ENCODING: [0x30,0x10,0x10,0xc1]161// CHECK-ERROR: instruction requires: sme-b16b16162// CHECK-UNKNOWN: c1101030 <unknown>163 164bfmls   za.h[w8, 0], {z0.h - z1.h}, z0.h[0]  // 11000001-00010000-00010000-00110000165// CHECK-INST: bfmls   za.h[w8, 0, vgx2], { z0.h, z1.h }, z0.h[0]166// CHECK-ENCODING: [0x30,0x10,0x10,0xc1]167// CHECK-ERROR: instruction requires: sme-b16b16168// CHECK-UNKNOWN: c1101030 <unknown>169 170bfmls   za.h[w10, 5, vgx2], {z10.h, z11.h}, z5.h[2]  // 11000001-00010101-01010101-01110101171// CHECK-INST: bfmls   za.h[w10, 5, vgx2], { z10.h, z11.h }, z5.h[2]172// CHECK-ENCODING: [0x75,0x55,0x15,0xc1]173// CHECK-ERROR: instruction requires: sme-b16b16174// CHECK-UNKNOWN: c1155575 <unknown>175 176bfmls   za.h[w10, 5], {z10.h - z11.h}, z5.h[2]  // 11000001-00010101-01010101-01110101177// CHECK-INST: bfmls   za.h[w10, 5, vgx2], { z10.h, z11.h }, z5.h[2]178// CHECK-ENCODING: [0x75,0x55,0x15,0xc1]179// CHECK-ERROR: instruction requires: sme-b16b16180// CHECK-UNKNOWN: c1155575 <unknown>181 182bfmls   za.h[w11, 7, vgx2], {z12.h, z13.h}, z8.h[6]  // 11000001-00011000-01111101-10110111183// CHECK-INST: bfmls   za.h[w11, 7, vgx2], { z12.h, z13.h }, z8.h[6]184// CHECK-ENCODING: [0xb7,0x7d,0x18,0xc1]185// CHECK-ERROR: instruction requires: sme-b16b16186// CHECK-UNKNOWN: c1187db7 <unknown>187 188bfmls   za.h[w11, 7], {z12.h - z13.h}, z8.h[6]  // 11000001-00011000-01111101-10110111189// CHECK-INST: bfmls   za.h[w11, 7, vgx2], { z12.h, z13.h }, z8.h[6]190// CHECK-ENCODING: [0xb7,0x7d,0x18,0xc1]191// CHECK-ERROR: instruction requires: sme-b16b16192// CHECK-UNKNOWN: c1187db7 <unknown>193 194bfmls   za.h[w11, 7, vgx2], {z30.h, z31.h}, z15.h[7]  // 11000001-00011111-01111111-11111111195// CHECK-INST: bfmls   za.h[w11, 7, vgx2], { z30.h, z31.h }, z15.h[7]196// CHECK-ENCODING: [0xff,0x7f,0x1f,0xc1]197// CHECK-ERROR: instruction requires: sme-b16b16198// CHECK-UNKNOWN: c11f7fff <unknown>199 200bfmls   za.h[w11, 7], {z30.h - z31.h}, z15.h[7]  // 11000001-00011111-01111111-11111111201// CHECK-INST: bfmls   za.h[w11, 7, vgx2], { z30.h, z31.h }, z15.h[7]202// CHECK-ENCODING: [0xff,0x7f,0x1f,0xc1]203// CHECK-ERROR: instruction requires: sme-b16b16204// CHECK-UNKNOWN: c11f7fff <unknown>205 206bfmls   za.h[w8, 5, vgx2], {z16.h, z17.h}, z0.h[6]  // 11000001-00010000-00011110-00110101207// CHECK-INST: bfmls   za.h[w8, 5, vgx2], { z16.h, z17.h }, z0.h[6]208// CHECK-ENCODING: [0x35,0x1e,0x10,0xc1]209// CHECK-ERROR: instruction requires: sme-b16b16210// CHECK-UNKNOWN: c1101e35 <unknown>211 212bfmls   za.h[w8, 5], {z16.h - z17.h}, z0.h[6]  // 11000001-00010000-00011110-00110101213// CHECK-INST: bfmls   za.h[w8, 5, vgx2], { z16.h, z17.h }, z0.h[6]214// CHECK-ENCODING: [0x35,0x1e,0x10,0xc1]215// CHECK-ERROR: instruction requires: sme-b16b16216// CHECK-UNKNOWN: c1101e35 <unknown>217 218bfmls   za.h[w8, 1, vgx2], {z0.h, z1.h}, z14.h[2]  // 11000001-00011110-00010100-00110001219// CHECK-INST: bfmls   za.h[w8, 1, vgx2], { z0.h, z1.h }, z14.h[2]220// CHECK-ENCODING: [0x31,0x14,0x1e,0xc1]221// CHECK-ERROR: instruction requires: sme-b16b16222// CHECK-UNKNOWN: c11e1431 <unknown>223 224bfmls   za.h[w8, 1], {z0.h - z1.h}, z14.h[2]  // 11000001-00011110-00010100-00110001225// CHECK-INST: bfmls   za.h[w8, 1, vgx2], { z0.h, z1.h }, z14.h[2]226// CHECK-ENCODING: [0x31,0x14,0x1e,0xc1]227// CHECK-ERROR: instruction requires: sme-b16b16228// CHECK-UNKNOWN: c11e1431 <unknown>229 230bfmls   za.h[w10, 0, vgx2], {z18.h, z19.h}, z4.h[3]  // 11000001-00010100-01010110-01111000231// CHECK-INST: bfmls   za.h[w10, 0, vgx2], { z18.h, z19.h }, z4.h[3]232// CHECK-ENCODING: [0x78,0x56,0x14,0xc1]233// CHECK-ERROR: instruction requires: sme-b16b16234// CHECK-UNKNOWN: c1145678 <unknown>235 236bfmls   za.h[w10, 0], {z18.h - z19.h}, z4.h[3]  // 11000001-00010100-01010110-01111000237// CHECK-INST: bfmls   za.h[w10, 0, vgx2], { z18.h, z19.h }, z4.h[3]238// CHECK-ENCODING: [0x78,0x56,0x14,0xc1]239// CHECK-ERROR: instruction requires: sme-b16b16240// CHECK-UNKNOWN: c1145678 <unknown>241 242bfmls   za.h[w8, 0, vgx2], {z12.h, z13.h}, z2.h[4]  // 11000001-00010010-00011001-10110000243// CHECK-INST: bfmls   za.h[w8, 0, vgx2], { z12.h, z13.h }, z2.h[4]244// CHECK-ENCODING: [0xb0,0x19,0x12,0xc1]245// CHECK-ERROR: instruction requires: sme-b16b16246// CHECK-UNKNOWN: c11219b0 <unknown>247 248bfmls   za.h[w8, 0], {z12.h - z13.h}, z2.h[4]  // 11000001-00010010-00011001-10110000249// CHECK-INST: bfmls   za.h[w8, 0, vgx2], { z12.h, z13.h }, z2.h[4]250// CHECK-ENCODING: [0xb0,0x19,0x12,0xc1]251// CHECK-ERROR: instruction requires: sme-b16b16252// CHECK-UNKNOWN: c11219b0 <unknown>253 254bfmls   za.h[w10, 1, vgx2], {z0.h, z1.h}, z10.h[4]  // 11000001-00011010-01011000-00110001255// CHECK-INST: bfmls   za.h[w10, 1, vgx2], { z0.h, z1.h }, z10.h[4]256// CHECK-ENCODING: [0x31,0x58,0x1a,0xc1]257// CHECK-ERROR: instruction requires: sme-b16b16258// CHECK-UNKNOWN: c11a5831 <unknown>259 260bfmls   za.h[w10, 1], {z0.h - z1.h}, z10.h[4]  // 11000001-00011010-01011000-00110001261// CHECK-INST: bfmls   za.h[w10, 1, vgx2], { z0.h, z1.h }, z10.h[4]262// CHECK-ENCODING: [0x31,0x58,0x1a,0xc1]263// CHECK-ERROR: instruction requires: sme-b16b16264// CHECK-UNKNOWN: c11a5831 <unknown>265 266bfmls   za.h[w8, 5, vgx2], {z22.h, z23.h}, z14.h[5]  // 11000001-00011110-00011010-11111101267// CHECK-INST: bfmls   za.h[w8, 5, vgx2], { z22.h, z23.h }, z14.h[5]268// CHECK-ENCODING: [0xfd,0x1a,0x1e,0xc1]269// CHECK-ERROR: instruction requires: sme-b16b16270// CHECK-UNKNOWN: c11e1afd <unknown>271 272bfmls   za.h[w8, 5], {z22.h - z23.h}, z14.h[5]  // 11000001-00011110-00011010-11111101273// CHECK-INST: bfmls   za.h[w8, 5, vgx2], { z22.h, z23.h }, z14.h[5]274// CHECK-ENCODING: [0xfd,0x1a,0x1e,0xc1]275// CHECK-ERROR: instruction requires: sme-b16b16276// CHECK-UNKNOWN: c11e1afd <unknown>277 278bfmls   za.h[w11, 2, vgx2], {z8.h, z9.h}, z1.h[2]  // 11000001-00010001-01110101-00110010279// CHECK-INST: bfmls   za.h[w11, 2, vgx2], { z8.h, z9.h }, z1.h[2]280// CHECK-ENCODING: [0x32,0x75,0x11,0xc1]281// CHECK-ERROR: instruction requires: sme-b16b16282// CHECK-UNKNOWN: c1117532 <unknown>283 284bfmls   za.h[w11, 2], {z8.h - z9.h}, z1.h[2]  // 11000001-00010001-01110101-00110010285// CHECK-INST: bfmls   za.h[w11, 2, vgx2], { z8.h, z9.h }, z1.h[2]286// CHECK-ENCODING: [0x32,0x75,0x11,0xc1]287// CHECK-ERROR: instruction requires: sme-b16b16288// CHECK-UNKNOWN: c1117532 <unknown>289 290bfmls   za.h[w9, 7, vgx2], {z12.h, z13.h}, z11.h[4]  // 11000001-00011011-00111001-10110111291// CHECK-INST: bfmls   za.h[w9, 7, vgx2], { z12.h, z13.h }, z11.h[4]292// CHECK-ENCODING: [0xb7,0x39,0x1b,0xc1]293// CHECK-ERROR: instruction requires: sme-b16b16294// CHECK-UNKNOWN: c11b39b7 <unknown>295 296bfmls   za.h[w9, 7], {z12.h - z13.h}, z11.h[4]  // 11000001-00011011-00111001-10110111297// CHECK-INST: bfmls   za.h[w9, 7, vgx2], { z12.h, z13.h }, z11.h[4]298// CHECK-ENCODING: [0xb7,0x39,0x1b,0xc1]299// CHECK-ERROR: instruction requires: sme-b16b16300// CHECK-UNKNOWN: c11b39b7 <unknown>301 302bfmls   za.h[w8, 0, vgx2], {z0.h, z1.h}, {z0.h, z1.h}  // 11000001, 11100000-00010000-00011000303// CHECK-INST: bfmls   za.h[w8, 0, vgx2], { z0.h, z1.h }, { z0.h, z1.h }304// CHECK-ENCODING: [0x18,0x10,0xe0,0xc1]305// CHECK-ERROR: instruction requires: sme-b16b16306// CHECK-UNKNOWN: c1e01018 <unknown>307 308bfmls   za.h[w8, 0], {z0.h - z1.h}, {z0.h - z1.h}  // 11000001-11100000-00010000-00011000309// CHECK-INST: bfmls   za.h[w8, 0, vgx2], { z0.h, z1.h }, { z0.h, z1.h }310// CHECK-ENCODING: [0x18,0x10,0xe0,0xc1]311// CHECK-ERROR: instruction requires: sme-b16b16312// CHECK-UNKNOWN: c1e01018 <unknown>313 314bfmls   za.h[w10, 5, vgx2], {z10.h, z11.h}, {z20.h, z21.h}  // 11000001, 11110100-01010001-01011101315// CHECK-INST: bfmls   za.h[w10, 5, vgx2], { z10.h, z11.h }, { z20.h, z21.h }316// CHECK-ENCODING: [0x5d,0x51,0xf4,0xc1]317// CHECK-ERROR: instruction requires: sme-b16b16318// CHECK-UNKNOWN: c1f4515d <unknown>319 320bfmls   za.h[w10, 5], {z10.h - z11.h}, {z20.h - z21.h}  // 11000001-11110100-01010001-01011101321// CHECK-INST: bfmls   za.h[w10, 5, vgx2], { z10.h, z11.h }, { z20.h, z21.h }322// CHECK-ENCODING: [0x5d,0x51,0xf4,0xc1]323// CHECK-ERROR: instruction requires: sme-b16b16324// CHECK-UNKNOWN: c1f4515d <unknown>325 326bfmls   za.h[w11, 7, vgx2], {z12.h, z13.h}, {z8.h, z9.h}  // 11000001, 11101000-01110001-10011111327// CHECK-INST: bfmls   za.h[w11, 7, vgx2], { z12.h, z13.h }, { z8.h, z9.h }328// CHECK-ENCODING: [0x9f,0x71,0xe8,0xc1]329// CHECK-ERROR: instruction requires: sme-b16b16330// CHECK-UNKNOWN: c1e8719f <unknown>331 332bfmls   za.h[w11, 7], {z12.h - z13.h}, {z8.h - z9.h}  // 11000001-11101000-01110001-10011111333// CHECK-INST: bfmls   za.h[w11, 7, vgx2], { z12.h, z13.h }, { z8.h, z9.h }334// CHECK-ENCODING: [0x9f,0x71,0xe8,0xc1]335// CHECK-ERROR: instruction requires: sme-b16b16336// CHECK-UNKNOWN: c1e8719f <unknown>337 338bfmls   za.h[w11, 7, vgx2], {z30.h, z31.h}, {z30.h, z31.h}  // 11000001, 11111110-01110011-11011111339// CHECK-INST: bfmls   za.h[w11, 7, vgx2], { z30.h, z31.h }, { z30.h, z31.h }340// CHECK-ENCODING: [0xdf,0x73,0xfe,0xc1]341// CHECK-ERROR: instruction requires: sme-b16b16342// CHECK-UNKNOWN: c1fe73df <unknown>343 344bfmls   za.h[w11, 7], {z30.h - z31.h}, {z30.h - z31.h}  // 11000001-11111110-01110011-11011111345// CHECK-INST: bfmls   za.h[w11, 7, vgx2], { z30.h, z31.h }, { z30.h, z31.h }346// CHECK-ENCODING: [0xdf,0x73,0xfe,0xc1]347// CHECK-ERROR: instruction requires: sme-b16b16348// CHECK-UNKNOWN: c1fe73df <unknown>349 350bfmls   za.h[w8, 5, vgx2], {z16.h, z17.h}, {z16.h, z17.h}  // 11000001, 11110000-00010010-00011101351// CHECK-INST: bfmls   za.h[w8, 5, vgx2], { z16.h, z17.h }, { z16.h, z17.h }352// CHECK-ENCODING: [0x1d,0x12,0xf0,0xc1]353// CHECK-ERROR: instruction requires: sme-b16b16354// CHECK-UNKNOWN: c1f0121d <unknown>355 356bfmls   za.h[w8, 5], {z16.h - z17.h}, {z16.h - z17.h}  // 11000001-11110000-00010010-00011101357// CHECK-INST: bfmls   za.h[w8, 5, vgx2], { z16.h, z17.h }, { z16.h, z17.h }358// CHECK-ENCODING: [0x1d,0x12,0xf0,0xc1]359// CHECK-ERROR: instruction requires: sme-b16b16360// CHECK-UNKNOWN: c1f0121d <unknown>361 362bfmls   za.h[w8, 1, vgx2], {z0.h, z1.h}, {z30.h, z31.h}  // 11000001, 11111110-00010000-00011001363// CHECK-INST: bfmls   za.h[w8, 1, vgx2], { z0.h, z1.h }, { z30.h, z31.h }364// CHECK-ENCODING: [0x19,0x10,0xfe,0xc1]365// CHECK-ERROR: instruction requires: sme-b16b16366// CHECK-UNKNOWN: c1fe1019 <unknown>367 368bfmls   za.h[w8, 1], {z0.h - z1.h}, {z30.h - z31.h}  // 11000001-11111110-00010000-00011001369// CHECK-INST: bfmls   za.h[w8, 1, vgx2], { z0.h, z1.h }, { z30.h, z31.h }370// CHECK-ENCODING: [0x19,0x10,0xfe,0xc1]371// CHECK-ERROR: instruction requires: sme-b16b16372// CHECK-UNKNOWN: c1fe1019 <unknown>373 374bfmls   za.h[w10, 0, vgx2], {z18.h, z19.h}, {z20.h, z21.h}  // 11000001, 11110100-01010010-01011000375// CHECK-INST: bfmls   za.h[w10, 0, vgx2], { z18.h, z19.h }, { z20.h, z21.h }376// CHECK-ENCODING: [0x58,0x52,0xf4,0xc1]377// CHECK-ERROR: instruction requires: sme-b16b16378// CHECK-UNKNOWN: c1f45258 <unknown>379 380bfmls   za.h[w10, 0], {z18.h - z19.h}, {z20.h - z21.h}  // 11000001-11110100-01010010-01011000381// CHECK-INST: bfmls   za.h[w10, 0, vgx2], { z18.h, z19.h }, { z20.h, z21.h }382// CHECK-ENCODING: [0x58,0x52,0xf4,0xc1]383// CHECK-ERROR: instruction requires: sme-b16b16384// CHECK-UNKNOWN: c1f45258 <unknown>385 386bfmls   za.h[w8, 0, vgx2], {z12.h, z13.h}, {z2.h, z3.h}  // 11000001, 11100010-00010001-10011000387// CHECK-INST: bfmls   za.h[w8, 0, vgx2], { z12.h, z13.h }, { z2.h, z3.h }388// CHECK-ENCODING: [0x98,0x11,0xe2,0xc1]389// CHECK-ERROR: instruction requires: sme-b16b16390// CHECK-UNKNOWN: c1e21198 <unknown>391 392bfmls   za.h[w8, 0], {z12.h - z13.h}, {z2.h - z3.h}  // 11000001-11100010-00010001-10011000393// CHECK-INST: bfmls   za.h[w8, 0, vgx2], { z12.h, z13.h }, { z2.h, z3.h }394// CHECK-ENCODING: [0x98,0x11,0xe2,0xc1]395// CHECK-ERROR: instruction requires: sme-b16b16396// CHECK-UNKNOWN: c1e21198 <unknown>397 398bfmls   za.h[w10, 1, vgx2], {z0.h, z1.h}, {z26.h, z27.h}  // 11000001, 11111010-01010000-00011001399// CHECK-INST: bfmls   za.h[w10, 1, vgx2], { z0.h, z1.h }, { z26.h, z27.h }400// CHECK-ENCODING: [0x19,0x50,0xfa,0xc1]401// CHECK-ERROR: instruction requires: sme-b16b16402// CHECK-UNKNOWN: c1fa5019 <unknown>403 404bfmls   za.h[w10, 1], {z0.h - z1.h}, {z26.h - z27.h}  // 11000001-11111010-01010000-00011001405// CHECK-INST: bfmls   za.h[w10, 1, vgx2], { z0.h, z1.h }, { z26.h, z27.h }406// CHECK-ENCODING: [0x19,0x50,0xfa,0xc1]407// CHECK-ERROR: instruction requires: sme-b16b16408// CHECK-UNKNOWN: c1fa5019 <unknown>409 410bfmls   za.h[w8, 5, vgx2], {z22.h, z23.h}, {z30.h, z31.h}  // 11000001, 11111110-00010010-11011101411// CHECK-INST: bfmls   za.h[w8, 5, vgx2], { z22.h, z23.h }, { z30.h, z31.h }412// CHECK-ENCODING: [0xdd,0x12,0xfe,0xc1]413// CHECK-ERROR: instruction requires: sme-b16b16414// CHECK-UNKNOWN: c1fe12dd <unknown>415 416bfmls   za.h[w8, 5], {z22.h - z23.h}, {z30.h - z31.h}  // 11000001-11111110-00010010-11011101417// CHECK-INST: bfmls   za.h[w8, 5, vgx2], { z22.h, z23.h }, { z30.h, z31.h }418// CHECK-ENCODING: [0xdd,0x12,0xfe,0xc1]419// CHECK-ERROR: instruction requires: sme-b16b16420// CHECK-UNKNOWN: c1fe12dd <unknown>421 422bfmls   za.h[w11, 2, vgx2], {z8.h, z9.h}, {z0.h, z1.h}  // 11000001, 11100000-01110001-00011010423// CHECK-INST: bfmls   za.h[w11, 2, vgx2], { z8.h, z9.h }, { z0.h, z1.h }424// CHECK-ENCODING: [0x1a,0x71,0xe0,0xc1]425// CHECK-ERROR: instruction requires: sme-b16b16426// CHECK-UNKNOWN: c1e0711a <unknown>427 428bfmls   za.h[w11, 2], {z8.h - z9.h}, {z0.h - z1.h}  // 11000001-11100000-01110001-00011010429// CHECK-INST: bfmls   za.h[w11, 2, vgx2], { z8.h, z9.h }, { z0.h, z1.h }430// CHECK-ENCODING: [0x1a,0x71,0xe0,0xc1]431// CHECK-ERROR: instruction requires: sme-b16b16432// CHECK-UNKNOWN: c1e0711a <unknown>433 434bfmls   za.h[w9, 7, vgx2], {z12.h, z13.h}, {z10.h, z11.h}  // 11000001, 11101010-00110001-10011111435// CHECK-INST: bfmls   za.h[w9, 7, vgx2], { z12.h, z13.h }, { z10.h, z11.h }436// CHECK-ENCODING: [0x9f,0x31,0xea,0xc1]437// CHECK-ERROR: instruction requires: sme-b16b16438// CHECK-UNKNOWN: c1ea319f <unknown>439 440bfmls   za.h[w9, 7], {z12.h - z13.h}, {z10.h - z11.h}  // 11000001-11101010-00110001-10011111441// CHECK-INST: bfmls   za.h[w9, 7, vgx2], { z12.h, z13.h }, { z10.h, z11.h }442// CHECK-ENCODING: [0x9f,0x31,0xea,0xc1]443// CHECK-ERROR: instruction requires: sme-b16b16444// CHECK-UNKNOWN: c1ea319f <unknown>445 446bfmls   za.h[w8, 0, vgx4], {z0.h - z3.h}, z0.h  // 11000001-01110000-00011100-00001000447// CHECK-INST: bfmls   za.h[w8, 0, vgx4], { z0.h - z3.h }, z0.h448// CHECK-ENCODING: [0x08,0x1c,0x70,0xc1]449// CHECK-ERROR: instruction requires: sme-b16b16450// CHECK-UNKNOWN: c1701c08 <unknown>451 452bfmls   za.h[w8, 0], {z0.h - z3.h}, z0.h  // 11000001-01110000-00011100-00001000453// CHECK-INST: bfmls   za.h[w8, 0, vgx4], { z0.h - z3.h }, z0.h454// CHECK-ENCODING: [0x08,0x1c,0x70,0xc1]455// CHECK-ERROR: instruction requires: sme-b16b16456// CHECK-UNKNOWN: c1701c08 <unknown>457 458bfmls   za.h[w10, 5, vgx4], {z10.h - z13.h}, z5.h  // 11000001-01110101-01011101-01001101459// CHECK-INST: bfmls   za.h[w10, 5, vgx4], { z10.h - z13.h }, z5.h460// CHECK-ENCODING: [0x4d,0x5d,0x75,0xc1]461// CHECK-ERROR: instruction requires: sme-b16b16462// CHECK-UNKNOWN: c1755d4d <unknown>463 464bfmls   za.h[w10, 5], {z10.h - z13.h}, z5.h  // 11000001-01110101-01011101-01001101465// CHECK-INST: bfmls   za.h[w10, 5, vgx4], { z10.h - z13.h }, z5.h466// CHECK-ENCODING: [0x4d,0x5d,0x75,0xc1]467// CHECK-ERROR: instruction requires: sme-b16b16468// CHECK-UNKNOWN: c1755d4d <unknown>469 470bfmls   za.h[w11, 7, vgx4], {z13.h - z16.h}, z8.h  // 11000001-01111000-01111101-10101111471// CHECK-INST: bfmls   za.h[w11, 7, vgx4], { z13.h - z16.h }, z8.h472// CHECK-ENCODING: [0xaf,0x7d,0x78,0xc1]473// CHECK-ERROR: instruction requires: sme-b16b16474// CHECK-UNKNOWN: c1787daf <unknown>475 476bfmls   za.h[w11, 7], {z13.h - z16.h}, z8.h  // 11000001-01111000-01111101-10101111477// CHECK-INST: bfmls   za.h[w11, 7, vgx4], { z13.h - z16.h }, z8.h478// CHECK-ENCODING: [0xaf,0x7d,0x78,0xc1]479// CHECK-ERROR: instruction requires: sme-b16b16480// CHECK-UNKNOWN: c1787daf <unknown>481 482bfmls   za.h[w11, 7, vgx4], {z31.h, z0.h, z1.h, z2.h}, z15.h  // 11000001-01111111-01111111-11101111483// CHECK-INST: bfmls   za.h[w11, 7, vgx4], { z31.h, z0.h, z1.h, z2.h }, z15.h484// CHECK-ENCODING: [0xef,0x7f,0x7f,0xc1]485// CHECK-ERROR: instruction requires: sme-b16b16486// CHECK-UNKNOWN: c17f7fef <unknown>487 488bfmls   za.h[w11, 7], {z31.h, z0.h, z1.h, z2.h}, z15.h  // 11000001-01111111-01111111-11101111489// CHECK-INST: bfmls   za.h[w11, 7, vgx4], { z31.h, z0.h, z1.h, z2.h }, z15.h490// CHECK-ENCODING: [0xef,0x7f,0x7f,0xc1]491// CHECK-ERROR: instruction requires: sme-b16b16492// CHECK-UNKNOWN: c17f7fef <unknown>493 494bfmls   za.h[w8, 5, vgx4], {z17.h - z20.h}, z0.h  // 11000001-01110000-00011110-00101101495// CHECK-INST: bfmls   za.h[w8, 5, vgx4], { z17.h - z20.h }, z0.h496// CHECK-ENCODING: [0x2d,0x1e,0x70,0xc1]497// CHECK-ERROR: instruction requires: sme-b16b16498// CHECK-UNKNOWN: c1701e2d <unknown>499 500bfmls   za.h[w8, 5], {z17.h - z20.h}, z0.h  // 11000001-01110000-00011110-00101101501// CHECK-INST: bfmls   za.h[w8, 5, vgx4], { z17.h - z20.h }, z0.h502// CHECK-ENCODING: [0x2d,0x1e,0x70,0xc1]503// CHECK-ERROR: instruction requires: sme-b16b16504// CHECK-UNKNOWN: c1701e2d <unknown>505 506bfmls   za.h[w8, 1, vgx4], {z1.h - z4.h}, z14.h  // 11000001-01111110-00011100-00101001507// CHECK-INST: bfmls   za.h[w8, 1, vgx4], { z1.h - z4.h }, z14.h508// CHECK-ENCODING: [0x29,0x1c,0x7e,0xc1]509// CHECK-ERROR: instruction requires: sme-b16b16510// CHECK-UNKNOWN: c17e1c29 <unknown>511 512bfmls   za.h[w8, 1], {z1.h - z4.h}, z14.h  // 11000001-01111110-00011100-00101001513// CHECK-INST: bfmls   za.h[w8, 1, vgx4], { z1.h - z4.h }, z14.h514// CHECK-ENCODING: [0x29,0x1c,0x7e,0xc1]515// CHECK-ERROR: instruction requires: sme-b16b16516// CHECK-UNKNOWN: c17e1c29 <unknown>517 518bfmls   za.h[w10, 0, vgx4], {z19.h - z22.h}, z4.h  // 11000001-01110100-01011110-01101000519// CHECK-INST: bfmls   za.h[w10, 0, vgx4], { z19.h - z22.h }, z4.h520// CHECK-ENCODING: [0x68,0x5e,0x74,0xc1]521// CHECK-ERROR: instruction requires: sme-b16b16522// CHECK-UNKNOWN: c1745e68 <unknown>523 524bfmls   za.h[w10, 0], {z19.h - z22.h}, z4.h  // 11000001-01110100-01011110-01101000525// CHECK-INST: bfmls   za.h[w10, 0, vgx4], { z19.h - z22.h }, z4.h526// CHECK-ENCODING: [0x68,0x5e,0x74,0xc1]527// CHECK-ERROR: instruction requires: sme-b16b16528// CHECK-UNKNOWN: c1745e68 <unknown>529 530bfmls   za.h[w8, 0, vgx4], {z12.h - z15.h}, z2.h  // 11000001-01110010-00011101-10001000531// CHECK-INST: bfmls   za.h[w8, 0, vgx4], { z12.h - z15.h }, z2.h532// CHECK-ENCODING: [0x88,0x1d,0x72,0xc1]533// CHECK-ERROR: instruction requires: sme-b16b16534// CHECK-UNKNOWN: c1721d88 <unknown>535 536bfmls   za.h[w8, 0], {z12.h - z15.h}, z2.h  // 11000001-01110010-00011101-10001000537// CHECK-INST: bfmls   za.h[w8, 0, vgx4], { z12.h - z15.h }, z2.h538// CHECK-ENCODING: [0x88,0x1d,0x72,0xc1]539// CHECK-ERROR: instruction requires: sme-b16b16540// CHECK-UNKNOWN: c1721d88 <unknown>541 542bfmls   za.h[w10, 1, vgx4], {z1.h - z4.h}, z10.h  // 11000001-01111010-01011100-00101001543// CHECK-INST: bfmls   za.h[w10, 1, vgx4], { z1.h - z4.h }, z10.h544// CHECK-ENCODING: [0x29,0x5c,0x7a,0xc1]545// CHECK-ERROR: instruction requires: sme-b16b16546// CHECK-UNKNOWN: c17a5c29 <unknown>547 548bfmls   za.h[w10, 1], {z1.h - z4.h}, z10.h  // 11000001-01111010-01011100-00101001549// CHECK-INST: bfmls   za.h[w10, 1, vgx4], { z1.h - z4.h }, z10.h550// CHECK-ENCODING: [0x29,0x5c,0x7a,0xc1]551// CHECK-ERROR: instruction requires: sme-b16b16552// CHECK-UNKNOWN: c17a5c29 <unknown>553 554bfmls   za.h[w8, 5, vgx4], {z22.h - z25.h}, z14.h  // 11000001-01111110-00011110-11001101555// CHECK-INST: bfmls   za.h[w8, 5, vgx4], { z22.h - z25.h }, z14.h556// CHECK-ENCODING: [0xcd,0x1e,0x7e,0xc1]557// CHECK-ERROR: instruction requires: sme-b16b16558// CHECK-UNKNOWN: c17e1ecd <unknown>559 560bfmls   za.h[w8, 5], {z22.h - z25.h}, z14.h  // 11000001-01111110-00011110-11001101561// CHECK-INST: bfmls   za.h[w8, 5, vgx4], { z22.h - z25.h }, z14.h562// CHECK-ENCODING: [0xcd,0x1e,0x7e,0xc1]563// CHECK-ERROR: instruction requires: sme-b16b16564// CHECK-UNKNOWN: c17e1ecd <unknown>565 566bfmls   za.h[w11, 2, vgx4], {z9.h - z12.h}, z1.h  // 11000001-01110001-01111101-00101010567// CHECK-INST: bfmls   za.h[w11, 2, vgx4], { z9.h - z12.h }, z1.h568// CHECK-ENCODING: [0x2a,0x7d,0x71,0xc1]569// CHECK-ERROR: instruction requires: sme-b16b16570// CHECK-UNKNOWN: c1717d2a <unknown>571 572bfmls   za.h[w11, 2], {z9.h - z12.h}, z1.h  // 11000001-01110001-01111101-00101010573// CHECK-INST: bfmls   za.h[w11, 2, vgx4], { z9.h - z12.h }, z1.h574// CHECK-ENCODING: [0x2a,0x7d,0x71,0xc1]575// CHECK-ERROR: instruction requires: sme-b16b16576// CHECK-UNKNOWN: c1717d2a <unknown>577 578bfmls   za.h[w9, 7, vgx4], {z12.h - z15.h}, z11.h  // 11000001-01111011-00111101-10001111579// CHECK-INST: bfmls   za.h[w9, 7, vgx4], { z12.h - z15.h }, z11.h580// CHECK-ENCODING: [0x8f,0x3d,0x7b,0xc1]581// CHECK-ERROR: instruction requires: sme-b16b16582// CHECK-UNKNOWN: c17b3d8f <unknown>583 584bfmls   za.h[w9, 7], {z12.h - z15.h}, z11.h  // 11000001-01111011-00111101-10001111585// CHECK-INST: bfmls   za.h[w9, 7, vgx4], { z12.h - z15.h }, z11.h586// CHECK-ENCODING: [0x8f,0x3d,0x7b,0xc1]587// CHECK-ERROR: instruction requires: sme-b16b16588// CHECK-UNKNOWN: c17b3d8f <unknown>589 590bfmls   za.h[w8, 0, vgx4], {z0.h - z3.h}, z0.h[0]  // 11000001-00010000-10010000-00110000591// CHECK-INST: bfmls   za.h[w8, 0, vgx4], { z0.h - z3.h }, z0.h[0]592// CHECK-ENCODING: [0x30,0x90,0x10,0xc1]593// CHECK-ERROR: instruction requires: sme-b16b16594// CHECK-UNKNOWN: c1109030 <unknown>595 596bfmls   za.h[w8, 0], {z0.h - z3.h}, z0.h[0]  // 11000001-00010000-10010000-00110000597// CHECK-INST: bfmls   za.h[w8, 0, vgx4], { z0.h - z3.h }, z0.h[0]598// CHECK-ENCODING: [0x30,0x90,0x10,0xc1]599// CHECK-ERROR: instruction requires: sme-b16b16600// CHECK-UNKNOWN: c1109030 <unknown>601 602bfmls   za.h[w10, 5, vgx4], {z8.h - z11.h}, z5.h[2]  // 11000001-00010101-11010101-00110101603// CHECK-INST: bfmls   za.h[w10, 5, vgx4], { z8.h - z11.h }, z5.h[2]604// CHECK-ENCODING: [0x35,0xd5,0x15,0xc1]605// CHECK-ERROR: instruction requires: sme-b16b16606// CHECK-UNKNOWN: c115d535 <unknown>607 608bfmls   za.h[w10, 5], {z8.h - z11.h}, z5.h[2]  // 11000001-00010101-11010101-00110101609// CHECK-INST: bfmls   za.h[w10, 5, vgx4], { z8.h - z11.h }, z5.h[2]610// CHECK-ENCODING: [0x35,0xd5,0x15,0xc1]611// CHECK-ERROR: instruction requires: sme-b16b16612// CHECK-UNKNOWN: c115d535 <unknown>613 614bfmls   za.h[w11, 7, vgx4], {z12.h - z15.h}, z8.h[6]  // 11000001-00011000-11111101-10110111615// CHECK-INST: bfmls   za.h[w11, 7, vgx4], { z12.h - z15.h }, z8.h[6]616// CHECK-ENCODING: [0xb7,0xfd,0x18,0xc1]617// CHECK-ERROR: instruction requires: sme-b16b16618// CHECK-UNKNOWN: c118fdb7 <unknown>619 620bfmls   za.h[w11, 7], {z12.h - z15.h}, z8.h[6]  // 11000001-00011000-11111101-10110111621// CHECK-INST: bfmls   za.h[w11, 7, vgx4], { z12.h - z15.h }, z8.h[6]622// CHECK-ENCODING: [0xb7,0xfd,0x18,0xc1]623// CHECK-ERROR: instruction requires: sme-b16b16624// CHECK-UNKNOWN: c118fdb7 <unknown>625 626bfmls   za.h[w11, 7, vgx4], {z28.h - z31.h}, z15.h[7]  // 11000001-00011111-11111111-10111111627// CHECK-INST: bfmls   za.h[w11, 7, vgx4], { z28.h - z31.h }, z15.h[7]628// CHECK-ENCODING: [0xbf,0xff,0x1f,0xc1]629// CHECK-ERROR: instruction requires: sme-b16b16630// CHECK-UNKNOWN: c11fffbf <unknown>631 632bfmls   za.h[w11, 7], {z28.h - z31.h}, z15.h[7]  // 11000001-00011111-11111111-10111111633// CHECK-INST: bfmls   za.h[w11, 7, vgx4], { z28.h - z31.h }, z15.h[7]634// CHECK-ENCODING: [0xbf,0xff,0x1f,0xc1]635// CHECK-ERROR: instruction requires: sme-b16b16636// CHECK-UNKNOWN: c11fffbf <unknown>637 638bfmls   za.h[w8, 5, vgx4], {z16.h - z19.h}, z0.h[6]  // 11000001-00010000-10011110-00110101639// CHECK-INST: bfmls   za.h[w8, 5, vgx4], { z16.h - z19.h }, z0.h[6]640// CHECK-ENCODING: [0x35,0x9e,0x10,0xc1]641// CHECK-ERROR: instruction requires: sme-b16b16642// CHECK-UNKNOWN: c1109e35 <unknown>643 644bfmls   za.h[w8, 5], {z16.h - z19.h}, z0.h[6]  // 11000001-00010000-10011110-00110101645// CHECK-INST: bfmls   za.h[w8, 5, vgx4], { z16.h - z19.h }, z0.h[6]646// CHECK-ENCODING: [0x35,0x9e,0x10,0xc1]647// CHECK-ERROR: instruction requires: sme-b16b16648// CHECK-UNKNOWN: c1109e35 <unknown>649 650bfmls   za.h[w8, 1, vgx4], {z0.h - z3.h}, z14.h[2]  // 11000001-00011110-10010100-00110001651// CHECK-INST: bfmls   za.h[w8, 1, vgx4], { z0.h - z3.h }, z14.h[2]652// CHECK-ENCODING: [0x31,0x94,0x1e,0xc1]653// CHECK-ERROR: instruction requires: sme-b16b16654// CHECK-UNKNOWN: c11e9431 <unknown>655 656bfmls   za.h[w8, 1], {z0.h - z3.h}, z14.h[2]  // 11000001-00011110-10010100-00110001657// CHECK-INST: bfmls   za.h[w8, 1, vgx4], { z0.h - z3.h }, z14.h[2]658// CHECK-ENCODING: [0x31,0x94,0x1e,0xc1]659// CHECK-ERROR: instruction requires: sme-b16b16660// CHECK-UNKNOWN: c11e9431 <unknown>661 662bfmls   za.h[w10, 0, vgx4], {z16.h - z19.h}, z4.h[3]  // 11000001-00010100-11010110-00111000663// CHECK-INST: bfmls   za.h[w10, 0, vgx4], { z16.h - z19.h }, z4.h[3]664// CHECK-ENCODING: [0x38,0xd6,0x14,0xc1]665// CHECK-ERROR: instruction requires: sme-b16b16666// CHECK-UNKNOWN: c114d638 <unknown>667 668bfmls   za.h[w10, 0], {z16.h - z19.h}, z4.h[3]  // 11000001-00010100-11010110-00111000669// CHECK-INST: bfmls   za.h[w10, 0, vgx4], { z16.h - z19.h }, z4.h[3]670// CHECK-ENCODING: [0x38,0xd6,0x14,0xc1]671// CHECK-ERROR: instruction requires: sme-b16b16672// CHECK-UNKNOWN: c114d638 <unknown>673 674bfmls   za.h[w8, 0, vgx4], {z12.h - z15.h}, z2.h[4]  // 11000001-00010010-10011001-10110000675// CHECK-INST: bfmls   za.h[w8, 0, vgx4], { z12.h - z15.h }, z2.h[4]676// CHECK-ENCODING: [0xb0,0x99,0x12,0xc1]677// CHECK-ERROR: instruction requires: sme-b16b16678// CHECK-UNKNOWN: c11299b0 <unknown>679 680bfmls   za.h[w8, 0], {z12.h - z15.h}, z2.h[4]  // 11000001-00010010-10011001-10110000681// CHECK-INST: bfmls   za.h[w8, 0, vgx4], { z12.h - z15.h }, z2.h[4]682// CHECK-ENCODING: [0xb0,0x99,0x12,0xc1]683// CHECK-ERROR: instruction requires: sme-b16b16684// CHECK-UNKNOWN: c11299b0 <unknown>685 686bfmls   za.h[w10, 1, vgx4], {z0.h - z3.h}, z10.h[4]  // 11000001-00011010-11011000-00110001687// CHECK-INST: bfmls   za.h[w10, 1, vgx4], { z0.h - z3.h }, z10.h[4]688// CHECK-ENCODING: [0x31,0xd8,0x1a,0xc1]689// CHECK-ERROR: instruction requires: sme-b16b16690// CHECK-UNKNOWN: c11ad831 <unknown>691 692bfmls   za.h[w10, 1], {z0.h - z3.h}, z10.h[4]  // 11000001-00011010-11011000-00110001693// CHECK-INST: bfmls   za.h[w10, 1, vgx4], { z0.h - z3.h }, z10.h[4]694// CHECK-ENCODING: [0x31,0xd8,0x1a,0xc1]695// CHECK-ERROR: instruction requires: sme-b16b16696// CHECK-UNKNOWN: c11ad831 <unknown>697 698bfmls   za.h[w8, 5, vgx4], {z20.h - z23.h}, z14.h[5]  // 11000001-00011110-10011010-10111101699// CHECK-INST: bfmls   za.h[w8, 5, vgx4], { z20.h - z23.h }, z14.h[5]700// CHECK-ENCODING: [0xbd,0x9a,0x1e,0xc1]701// CHECK-ERROR: instruction requires: sme-b16b16702// CHECK-UNKNOWN: c11e9abd <unknown>703 704bfmls   za.h[w8, 5], {z20.h - z23.h}, z14.h[5]  // 11000001-00011110-10011010-10111101705// CHECK-INST: bfmls   za.h[w8, 5, vgx4], { z20.h - z23.h }, z14.h[5]706// CHECK-ENCODING: [0xbd,0x9a,0x1e,0xc1]707// CHECK-ERROR: instruction requires: sme-b16b16708// CHECK-UNKNOWN: c11e9abd <unknown>709 710bfmls   za.h[w11, 2, vgx4], {z8.h - z11.h}, z1.h[2]  // 11000001-00010001-11110101-00110010711// CHECK-INST: bfmls   za.h[w11, 2, vgx4], { z8.h - z11.h }, z1.h[2]712// CHECK-ENCODING: [0x32,0xf5,0x11,0xc1]713// CHECK-ERROR: instruction requires: sme-b16b16714// CHECK-UNKNOWN: c111f532 <unknown>715 716bfmls   za.h[w11, 2], {z8.h - z11.h}, z1.h[2]  // 11000001-00010001-11110101-00110010717// CHECK-INST: bfmls   za.h[w11, 2, vgx4], { z8.h - z11.h }, z1.h[2]718// CHECK-ENCODING: [0x32,0xf5,0x11,0xc1]719// CHECK-ERROR: instruction requires: sme-b16b16720// CHECK-UNKNOWN: c111f532 <unknown>721 722bfmls   za.h[w9, 7, vgx4], {z12.h - z15.h}, z11.h[4]  // 11000001-00011011-10111001-10110111723// CHECK-INST: bfmls   za.h[w9, 7, vgx4], { z12.h - z15.h }, z11.h[4]724// CHECK-ENCODING: [0xb7,0xb9,0x1b,0xc1]725// CHECK-ERROR: instruction requires: sme-b16b16726// CHECK-UNKNOWN: c11bb9b7 <unknown>727 728bfmls   za.h[w9, 7], {z12.h - z15.h}, z11.h[4]  // 11000001-00011011-10111001-10110111729// CHECK-INST: bfmls   za.h[w9, 7, vgx4], { z12.h - z15.h }, z11.h[4]730// CHECK-ENCODING: [0xb7,0xb9,0x1b,0xc1]731// CHECK-ERROR: instruction requires: sme-b16b16732// CHECK-UNKNOWN: c11bb9b7 <unknown>733 734bfmls   za.h[w8, 0, vgx4], {z0.h - z3.h}, {z0.h - z3.h}  // 11000001-11100001-00010000-00011000735// CHECK-INST: bfmls   za.h[w8, 0, vgx4], { z0.h - z3.h }, { z0.h - z3.h }736// CHECK-ENCODING: [0x18,0x10,0xe1,0xc1]737// CHECK-ERROR: instruction requires: sme-b16b16738// CHECK-UNKNOWN: c1e11018 <unknown>739 740bfmls   za.h[w8, 0], {z0.h - z3.h}, {z0.h - z3.h}  // 11000001-11100001-00010000-00011000741// CHECK-INST: bfmls   za.h[w8, 0, vgx4], { z0.h - z3.h }, { z0.h - z3.h }742// CHECK-ENCODING: [0x18,0x10,0xe1,0xc1]743// CHECK-ERROR: instruction requires: sme-b16b16744// CHECK-UNKNOWN: c1e11018 <unknown>745 746bfmls   za.h[w10, 5, vgx4], {z8.h - z11.h}, {z20.h - z23.h}  // 11000001-11110101-01010001-00011101747// CHECK-INST: bfmls   za.h[w10, 5, vgx4], { z8.h - z11.h }, { z20.h - z23.h }748// CHECK-ENCODING: [0x1d,0x51,0xf5,0xc1]749// CHECK-ERROR: instruction requires: sme-b16b16750// CHECK-UNKNOWN: c1f5511d <unknown>751 752bfmls   za.h[w10, 5], {z8.h - z11.h}, {z20.h - z23.h}  // 11000001-11110101-01010001-00011101753// CHECK-INST: bfmls   za.h[w10, 5, vgx4], { z8.h - z11.h }, { z20.h - z23.h }754// CHECK-ENCODING: [0x1d,0x51,0xf5,0xc1]755// CHECK-ERROR: instruction requires: sme-b16b16756// CHECK-UNKNOWN: c1f5511d <unknown>757 758bfmls   za.h[w11, 7, vgx4], {z12.h - z15.h}, {z8.h - z11.h}  // 11000001-11101001-01110001-10011111759// CHECK-INST: bfmls   za.h[w11, 7, vgx4], { z12.h - z15.h }, { z8.h - z11.h }760// CHECK-ENCODING: [0x9f,0x71,0xe9,0xc1]761// CHECK-ERROR: instruction requires: sme-b16b16762// CHECK-UNKNOWN: c1e9719f <unknown>763 764bfmls   za.h[w11, 7], {z12.h - z15.h}, {z8.h - z11.h}  // 11000001-11101001-01110001-10011111765// CHECK-INST: bfmls   za.h[w11, 7, vgx4], { z12.h - z15.h }, { z8.h - z11.h }766// CHECK-ENCODING: [0x9f,0x71,0xe9,0xc1]767// CHECK-ERROR: instruction requires: sme-b16b16768// CHECK-UNKNOWN: c1e9719f <unknown>769 770bfmls   za.h[w11, 7, vgx4], {z28.h - z31.h}, {z28.h - z31.h}  // 11000001-11111101-01110011-10011111771// CHECK-INST: bfmls   za.h[w11, 7, vgx4], { z28.h - z31.h }, { z28.h - z31.h }772// CHECK-ENCODING: [0x9f,0x73,0xfd,0xc1]773// CHECK-ERROR: instruction requires: sme-b16b16774// CHECK-UNKNOWN: c1fd739f <unknown>775 776bfmls   za.h[w11, 7], {z28.h - z31.h}, {z28.h - z31.h}  // 11000001-11111101-01110011-10011111777// CHECK-INST: bfmls   za.h[w11, 7, vgx4], { z28.h - z31.h }, { z28.h - z31.h }778// CHECK-ENCODING: [0x9f,0x73,0xfd,0xc1]779// CHECK-ERROR: instruction requires: sme-b16b16780// CHECK-UNKNOWN: c1fd739f <unknown>781 782bfmls   za.h[w8, 5, vgx4], {z16.h - z19.h}, {z16.h - z19.h}  // 11000001-11110001-00010010-00011101783// CHECK-INST: bfmls   za.h[w8, 5, vgx4], { z16.h - z19.h }, { z16.h - z19.h }784// CHECK-ENCODING: [0x1d,0x12,0xf1,0xc1]785// CHECK-ERROR: instruction requires: sme-b16b16786// CHECK-UNKNOWN: c1f1121d <unknown>787 788bfmls   za.h[w8, 5], {z16.h - z19.h}, {z16.h - z19.h}  // 11000001-11110001-00010010-00011101789// CHECK-INST: bfmls   za.h[w8, 5, vgx4], { z16.h - z19.h }, { z16.h - z19.h }790// CHECK-ENCODING: [0x1d,0x12,0xf1,0xc1]791// CHECK-ERROR: instruction requires: sme-b16b16792// CHECK-UNKNOWN: c1f1121d <unknown>793 794bfmls   za.h[w8, 1, vgx4], {z0.h - z3.h}, {z28.h - z31.h}  // 11000001-11111101-00010000-00011001795// CHECK-INST: bfmls   za.h[w8, 1, vgx4], { z0.h - z3.h }, { z28.h - z31.h }796// CHECK-ENCODING: [0x19,0x10,0xfd,0xc1]797// CHECK-ERROR: instruction requires: sme-b16b16798// CHECK-UNKNOWN: c1fd1019 <unknown>799 800bfmls   za.h[w8, 1], {z0.h - z3.h}, {z28.h - z31.h}  // 11000001-11111101-00010000-00011001801// CHECK-INST: bfmls   za.h[w8, 1, vgx4], { z0.h - z3.h }, { z28.h - z31.h }802// CHECK-ENCODING: [0x19,0x10,0xfd,0xc1]803// CHECK-ERROR: instruction requires: sme-b16b16804// CHECK-UNKNOWN: c1fd1019 <unknown>805 806bfmls   za.h[w10, 0, vgx4], {z16.h - z19.h}, {z20.h - z23.h}  // 11000001-11110101-01010010-00011000807// CHECK-INST: bfmls   za.h[w10, 0, vgx4], { z16.h - z19.h }, { z20.h - z23.h }808// CHECK-ENCODING: [0x18,0x52,0xf5,0xc1]809// CHECK-ERROR: instruction requires: sme-b16b16810// CHECK-UNKNOWN: c1f55218 <unknown>811 812bfmls   za.h[w10, 0], {z16.h - z19.h}, {z20.h - z23.h}  // 11000001-11110101-01010010-00011000813// CHECK-INST: bfmls   za.h[w10, 0, vgx4], { z16.h - z19.h }, { z20.h - z23.h }814// CHECK-ENCODING: [0x18,0x52,0xf5,0xc1]815// CHECK-ERROR: instruction requires: sme-b16b16816// CHECK-UNKNOWN: c1f55218 <unknown>817 818bfmls   za.h[w8, 0, vgx4], {z12.h - z15.h}, {z0.h - z3.h}  // 11000001-11100001-00010001-10011000819// CHECK-INST: bfmls   za.h[w8, 0, vgx4], { z12.h - z15.h }, { z0.h - z3.h }820// CHECK-ENCODING: [0x98,0x11,0xe1,0xc1]821// CHECK-ERROR: instruction requires: sme-b16b16822// CHECK-UNKNOWN: c1e11198 <unknown>823 824bfmls   za.h[w8, 0], {z12.h - z15.h}, {z0.h - z3.h}  // 11000001-11100001-00010001-10011000825// CHECK-INST: bfmls   za.h[w8, 0, vgx4], { z12.h - z15.h }, { z0.h - z3.h }826// CHECK-ENCODING: [0x98,0x11,0xe1,0xc1]827// CHECK-ERROR: instruction requires: sme-b16b16828// CHECK-UNKNOWN: c1e11198 <unknown>829 830bfmls   za.h[w10, 1, vgx4], {z0.h - z3.h}, {z24.h - z27.h}  // 11000001-11111001-01010000-00011001831// CHECK-INST: bfmls   za.h[w10, 1, vgx4], { z0.h - z3.h }, { z24.h - z27.h }832// CHECK-ENCODING: [0x19,0x50,0xf9,0xc1]833// CHECK-ERROR: instruction requires: sme-b16b16834// CHECK-UNKNOWN: c1f95019 <unknown>835 836bfmls   za.h[w10, 1], {z0.h - z3.h}, {z24.h - z27.h}  // 11000001-11111001-01010000-00011001837// CHECK-INST: bfmls   za.h[w10, 1, vgx4], { z0.h - z3.h }, { z24.h - z27.h }838// CHECK-ENCODING: [0x19,0x50,0xf9,0xc1]839// CHECK-ERROR: instruction requires: sme-b16b16840// CHECK-UNKNOWN: c1f95019 <unknown>841 842bfmls   za.h[w8, 5, vgx4], {z20.h - z23.h}, {z28.h - z31.h}  // 11000001-11111101-00010010-10011101843// CHECK-INST: bfmls   za.h[w8, 5, vgx4], { z20.h - z23.h }, { z28.h - z31.h }844// CHECK-ENCODING: [0x9d,0x12,0xfd,0xc1]845// CHECK-ERROR: instruction requires: sme-b16b16846// CHECK-UNKNOWN: c1fd129d <unknown>847 848bfmls   za.h[w8, 5], {z20.h - z23.h}, {z28.h - z31.h}  // 11000001-11111101-00010010-10011101849// CHECK-INST: bfmls   za.h[w8, 5, vgx4], { z20.h - z23.h }, { z28.h - z31.h }850// CHECK-ENCODING: [0x9d,0x12,0xfd,0xc1]851// CHECK-ERROR: instruction requires: sme-b16b16852// CHECK-UNKNOWN: c1fd129d <unknown>853 854bfmls   za.h[w11, 2, vgx4], {z8.h - z11.h}, {z0.h - z3.h}  // 11000001-11100001-01110001-00011010855// CHECK-INST: bfmls   za.h[w11, 2, vgx4], { z8.h - z11.h }, { z0.h - z3.h }856// CHECK-ENCODING: [0x1a,0x71,0xe1,0xc1]857// CHECK-ERROR: instruction requires: sme-b16b16858// CHECK-UNKNOWN: c1e1711a <unknown>859 860bfmls   za.h[w11, 2], {z8.h - z11.h}, {z0.h - z3.h}  // 11000001-11100001-01110001-00011010861// CHECK-INST: bfmls   za.h[w11, 2, vgx4], { z8.h - z11.h }, { z0.h - z3.h }862// CHECK-ENCODING: [0x1a,0x71,0xe1,0xc1]863// CHECK-ERROR: instruction requires: sme-b16b16864// CHECK-UNKNOWN: c1e1711a <unknown>865 866bfmls   za.h[w9, 7, vgx4], {z12.h - z15.h}, {z8.h - z11.h}  // 11000001-11101001-00110001-10011111867// CHECK-INST: bfmls   za.h[w9, 7, vgx4], { z12.h - z15.h }, { z8.h - z11.h }868// CHECK-ENCODING: [0x9f,0x31,0xe9,0xc1]869// CHECK-ERROR: instruction requires: sme-b16b16870// CHECK-UNKNOWN: c1e9319f <unknown>871 872bfmls   za.h[w9, 7], {z12.h - z15.h}, {z8.h - z11.h}  // 11000001-11101001-00110001-10011111873// CHECK-INST: bfmls   za.h[w9, 7, vgx4], { z12.h - z15.h }, { z8.h - z11.h }874// CHECK-ENCODING: [0x9f,0x31,0xe9,0xc1]875// CHECK-ERROR: instruction requires: sme-b16b16876// CHECK-UNKNOWN: c1e9319f <unknown>877