[Frontend] Remove unused includes (NFC) (#116927)
[llvm-project.git] / llvm / test / MC / AArch64 / SME2 / bfmla.s
blobb6e1bc11bcd7fc19228c7facb1fbd91813a9b7f3
1 // RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme-b16b16 < %s \
2 // RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
3 // RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \
4 // RUN: | FileCheck %s --check-prefix=CHECK-ERROR
5 // RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-b16b16 < %s \
6 // RUN: | llvm-objdump -d --mattr=+sme-b16b16 - | FileCheck %s --check-prefix=CHECK-INST
7 // RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme-b16b16 < %s \
8 // RUN: | llvm-objdump -d --mattr=-sme2 - | FileCheck %s --check-prefix=CHECK-UNKNOWN
9 // 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-INST
14 bfmla za.h[w8, 0, vgx2], {z0.h, z1.h}, z0.h // 11000001-01100000-00011100-00000000
15 // CHECK-INST: bfmla za.h[w8, 0, vgx2], { z0.h, z1.h }, z0.h
16 // CHECK-ENCODING: [0x00,0x1c,0x60,0xc1]
17 // CHECK-ERROR: instruction requires: sme-b16b16
18 // CHECK-UNKNOWN: c1601c00 <unknown>
20 bfmla za.h[w8, 0], {z0.h - z1.h}, z0.h // 11000001-01100000-00011100-00000000
21 // CHECK-INST: bfmla za.h[w8, 0, vgx2], { z0.h, z1.h }, z0.h
22 // CHECK-ENCODING: [0x00,0x1c,0x60,0xc1]
23 // CHECK-ERROR: instruction requires: sme-b16b16
24 // CHECK-UNKNOWN: c1601c00 <unknown>
26 bfmla za.h[w10, 5, vgx2], {z10.h, z11.h}, z5.h // 11000001-01100101-01011101-01000101
27 // CHECK-INST: bfmla za.h[w10, 5, vgx2], { z10.h, z11.h }, z5.h
28 // CHECK-ENCODING: [0x45,0x5d,0x65,0xc1]
29 // CHECK-ERROR: instruction requires: sme-b16b16
30 // CHECK-UNKNOWN: c1655d45 <unknown>
32 bfmla za.h[w10, 5], {z10.h - z11.h}, z5.h // 11000001-01100101-01011101-01000101
33 // CHECK-INST: bfmla za.h[w10, 5, vgx2], { z10.h, z11.h }, z5.h
34 // CHECK-ENCODING: [0x45,0x5d,0x65,0xc1]
35 // CHECK-ERROR: instruction requires: sme-b16b16
36 // CHECK-UNKNOWN: c1655d45 <unknown>
38 bfmla za.h[w11, 7, vgx2], {z13.h, z14.h}, z8.h // 11000001-01101000-01111101-10100111
39 // CHECK-INST: bfmla za.h[w11, 7, vgx2], { z13.h, z14.h }, z8.h
40 // CHECK-ENCODING: [0xa7,0x7d,0x68,0xc1]
41 // CHECK-ERROR: instruction requires: sme-b16b16
42 // CHECK-UNKNOWN: c1687da7 <unknown>
44 bfmla za.h[w11, 7], {z13.h - z14.h}, z8.h // 11000001-01101000-01111101-10100111
45 // CHECK-INST: bfmla za.h[w11, 7, vgx2], { z13.h, z14.h }, z8.h
46 // CHECK-ENCODING: [0xa7,0x7d,0x68,0xc1]
47 // CHECK-ERROR: instruction requires: sme-b16b16
48 // CHECK-UNKNOWN: c1687da7 <unknown>
50 bfmla za.h[w11, 7, vgx2], {z31.h, z0.h}, z15.h // 11000001-01101111-01111111-11100111
51 // CHECK-INST: bfmla za.h[w11, 7, vgx2], { z31.h, z0.h }, z15.h
52 // CHECK-ENCODING: [0xe7,0x7f,0x6f,0xc1]
53 // CHECK-ERROR: instruction requires: sme-b16b16
54 // CHECK-UNKNOWN: c16f7fe7 <unknown>
56 bfmla za.h[w11, 7], {z31.h - z0.h}, z15.h // 11000001-01101111-01111111-11100111
57 // CHECK-INST: bfmla za.h[w11, 7, vgx2], { z31.h, z0.h }, z15.h
58 // CHECK-ENCODING: [0xe7,0x7f,0x6f,0xc1]
59 // CHECK-ERROR: instruction requires: sme-b16b16
60 // CHECK-UNKNOWN: c16f7fe7 <unknown>
62 bfmla za.h[w8, 5, vgx2], {z17.h, z18.h}, z0.h // 11000001-01100000-00011110-00100101
63 // CHECK-INST: bfmla za.h[w8, 5, vgx2], { z17.h, z18.h }, z0.h
64 // CHECK-ENCODING: [0x25,0x1e,0x60,0xc1]
65 // CHECK-ERROR: instruction requires: sme-b16b16
66 // CHECK-UNKNOWN: c1601e25 <unknown>
68 bfmla za.h[w8, 5], {z17.h - z18.h}, z0.h // 11000001-01100000-00011110-00100101
69 // CHECK-INST: bfmla za.h[w8, 5, vgx2], { z17.h, z18.h }, z0.h
70 // CHECK-ENCODING: [0x25,0x1e,0x60,0xc1]
71 // CHECK-ERROR: instruction requires: sme-b16b16
72 // CHECK-UNKNOWN: c1601e25 <unknown>
74 bfmla za.h[w8, 1, vgx2], {z1.h, z2.h}, z14.h // 11000001-01101110-00011100-00100001
75 // CHECK-INST: bfmla za.h[w8, 1, vgx2], { z1.h, z2.h }, z14.h
76 // CHECK-ENCODING: [0x21,0x1c,0x6e,0xc1]
77 // CHECK-ERROR: instruction requires: sme-b16b16
78 // CHECK-UNKNOWN: c16e1c21 <unknown>
80 bfmla za.h[w8, 1], {z1.h - z2.h}, z14.h // 11000001-01101110-00011100-00100001
81 // CHECK-INST: bfmla za.h[w8, 1, vgx2], { z1.h, z2.h }, z14.h
82 // CHECK-ENCODING: [0x21,0x1c,0x6e,0xc1]
83 // CHECK-ERROR: instruction requires: sme-b16b16
84 // CHECK-UNKNOWN: c16e1c21 <unknown>
86 bfmla za.h[w10, 0, vgx2], {z19.h, z20.h}, z4.h // 11000001-01100100-01011110-01100000
87 // CHECK-INST: bfmla za.h[w10, 0, vgx2], { z19.h, z20.h }, z4.h
88 // CHECK-ENCODING: [0x60,0x5e,0x64,0xc1]
89 // CHECK-ERROR: instruction requires: sme-b16b16
90 // CHECK-UNKNOWN: c1645e60 <unknown>
92 bfmla za.h[w10, 0], {z19.h - z20.h}, z4.h // 11000001-01100100-01011110-01100000
93 // CHECK-INST: bfmla za.h[w10, 0, vgx2], { z19.h, z20.h }, z4.h
94 // CHECK-ENCODING: [0x60,0x5e,0x64,0xc1]
95 // CHECK-ERROR: instruction requires: sme-b16b16
96 // CHECK-UNKNOWN: c1645e60 <unknown>
98 bfmla za.h[w8, 0, vgx2], {z12.h, z13.h}, z2.h // 11000001-01100010-00011101-10000000
99 // CHECK-INST: bfmla za.h[w8, 0, vgx2], { z12.h, z13.h }, z2.h
100 // CHECK-ENCODING: [0x80,0x1d,0x62,0xc1]
101 // CHECK-ERROR: instruction requires: sme-b16b16
102 // CHECK-UNKNOWN: c1621d80 <unknown>
104 bfmla za.h[w8, 0], {z12.h - z13.h}, z2.h // 11000001-01100010-00011101-10000000
105 // CHECK-INST: bfmla za.h[w8, 0, vgx2], { z12.h, z13.h }, z2.h
106 // CHECK-ENCODING: [0x80,0x1d,0x62,0xc1]
107 // CHECK-ERROR: instruction requires: sme-b16b16
108 // CHECK-UNKNOWN: c1621d80 <unknown>
110 bfmla za.h[w10, 1, vgx2], {z1.h, z2.h}, z10.h // 11000001-01101010-01011100-00100001
111 // CHECK-INST: bfmla za.h[w10, 1, vgx2], { z1.h, z2.h }, z10.h
112 // CHECK-ENCODING: [0x21,0x5c,0x6a,0xc1]
113 // CHECK-ERROR: instruction requires: sme-b16b16
114 // CHECK-UNKNOWN: c16a5c21 <unknown>
116 bfmla za.h[w10, 1], {z1.h - z2.h}, z10.h // 11000001-01101010-01011100-00100001
117 // CHECK-INST: bfmla za.h[w10, 1, vgx2], { z1.h, z2.h }, z10.h
118 // CHECK-ENCODING: [0x21,0x5c,0x6a,0xc1]
119 // CHECK-ERROR: instruction requires: sme-b16b16
120 // CHECK-UNKNOWN: c16a5c21 <unknown>
122 bfmla za.h[w8, 5, vgx2], {z22.h, z23.h}, z14.h // 11000001-01101110-00011110-11000101
123 // CHECK-INST: bfmla za.h[w8, 5, vgx2], { z22.h, z23.h }, z14.h
124 // CHECK-ENCODING: [0xc5,0x1e,0x6e,0xc1]
125 // CHECK-ERROR: instruction requires: sme-b16b16
126 // CHECK-UNKNOWN: c16e1ec5 <unknown>
128 bfmla za.h[w8, 5], {z22.h - z23.h}, z14.h // 11000001-01101110-00011110-11000101
129 // CHECK-INST: bfmla za.h[w8, 5, vgx2], { z22.h, z23.h }, z14.h
130 // CHECK-ENCODING: [0xc5,0x1e,0x6e,0xc1]
131 // CHECK-ERROR: instruction requires: sme-b16b16
132 // CHECK-UNKNOWN: c16e1ec5 <unknown>
134 bfmla za.h[w11, 2, vgx2], {z9.h, z10.h}, z1.h // 11000001-01100001-01111101-00100010
135 // CHECK-INST: bfmla za.h[w11, 2, vgx2], { z9.h, z10.h }, z1.h
136 // CHECK-ENCODING: [0x22,0x7d,0x61,0xc1]
137 // CHECK-ERROR: instruction requires: sme-b16b16
138 // CHECK-UNKNOWN: c1617d22 <unknown>
140 bfmla za.h[w11, 2], {z9.h - z10.h}, z1.h // 11000001-01100001-01111101-00100010
141 // CHECK-INST: bfmla za.h[w11, 2, vgx2], { z9.h, z10.h }, z1.h
142 // CHECK-ENCODING: [0x22,0x7d,0x61,0xc1]
143 // CHECK-ERROR: instruction requires: sme-b16b16
144 // CHECK-UNKNOWN: c1617d22 <unknown>
146 bfmla za.h[w9, 7, vgx2], {z12.h, z13.h}, z11.h // 11000001-01101011-00111101-10000111
147 // CHECK-INST: bfmla za.h[w9, 7, vgx2], { z12.h, z13.h }, z11.h
148 // CHECK-ENCODING: [0x87,0x3d,0x6b,0xc1]
149 // CHECK-ERROR: instruction requires: sme-b16b16
150 // CHECK-UNKNOWN: c16b3d87 <unknown>
152 bfmla za.h[w9, 7], {z12.h - z13.h}, z11.h // 11000001-01101011-00111101-10000111
153 // CHECK-INST: bfmla za.h[w9, 7, vgx2], { z12.h, z13.h }, z11.h
154 // CHECK-ENCODING: [0x87,0x3d,0x6b,0xc1]
155 // CHECK-ERROR: instruction requires: sme-b16b16
156 // CHECK-UNKNOWN: c16b3d87 <unknown>
158 bfmla za.h[w8, 0, vgx2], {z0.h, z1.h}, z0.h[0] // 11000001-00010000-00010000-00100000
159 // 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-b16b16
162 // CHECK-UNKNOWN: c1101020 <unknown>
164 bfmla za.h[w8, 0], {z0.h - z1.h}, z0.h[0] // 11000001-00010000-00010000-00100000
165 // 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-b16b16
168 // CHECK-UNKNOWN: c1101020 <unknown>
170 bfmla za.h[w10, 5, vgx2], {z10.h, z11.h}, z5.h[2] // 11000001-00010101-01010101-01100101
171 // 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-b16b16
174 // CHECK-UNKNOWN: c1155565 <unknown>
176 bfmla za.h[w10, 5], {z10.h - z11.h}, z5.h[2] // 11000001-00010101-01010101-01100101
177 // 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-b16b16
180 // CHECK-UNKNOWN: c1155565 <unknown>
182 bfmla za.h[w11, 7, vgx2], {z12.h, z13.h}, z8.h[6] // 11000001-00011000-01111101-10100111
183 // 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-b16b16
186 // CHECK-UNKNOWN: c1187da7 <unknown>
188 bfmla za.h[w11, 7], {z12.h - z13.h}, z8.h[6] // 11000001-00011000-01111101-10100111
189 // 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-b16b16
192 // CHECK-UNKNOWN: c1187da7 <unknown>
194 bfmla za.h[w11, 7, vgx2], {z30.h, z31.h}, z15.h[7] // 11000001-00011111-01111111-11101111
195 // 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-b16b16
198 // CHECK-UNKNOWN: c11f7fef <unknown>
200 bfmla za.h[w11, 7], {z30.h - z31.h}, z15.h[7] // 11000001-00011111-01111111-11101111
201 // 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-b16b16
204 // CHECK-UNKNOWN: c11f7fef <unknown>
206 bfmla za.h[w8, 5, vgx2], {z16.h, z17.h}, z0.h[6] // 11000001-00010000-00011110-00100101
207 // 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-b16b16
210 // CHECK-UNKNOWN: c1101e25 <unknown>
212 bfmla za.h[w8, 5], {z16.h - z17.h}, z0.h[6] // 11000001-00010000-00011110-00100101
213 // 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-b16b16
216 // CHECK-UNKNOWN: c1101e25 <unknown>
218 bfmla za.h[w8, 1, vgx2], {z0.h, z1.h}, z14.h[2] // 11000001-00011110-00010100-00100001
219 // 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-b16b16
222 // CHECK-UNKNOWN: c11e1421 <unknown>
224 bfmla za.h[w8, 1], {z0.h - z1.h}, z14.h[2] // 11000001-00011110-00010100-00100001
225 // 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-b16b16
228 // CHECK-UNKNOWN: c11e1421 <unknown>
230 bfmla za.h[w10, 0, vgx2], {z18.h, z19.h}, z4.h[3] // 11000001-00010100-01010110-01101000
231 // 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-b16b16
234 // CHECK-UNKNOWN: c1145668 <unknown>
236 bfmla za.h[w10, 0], {z18.h - z19.h}, z4.h[3] // 11000001-00010100-01010110-01101000
237 // 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-b16b16
240 // CHECK-UNKNOWN: c1145668 <unknown>
242 bfmla za.h[w8, 0, vgx2], {z12.h, z13.h}, z2.h[4] // 11000001-00010010-00011001-10100000
243 // 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-b16b16
246 // CHECK-UNKNOWN: c11219a0 <unknown>
248 bfmla za.h[w8, 0], {z12.h - z13.h}, z2.h[4] // 11000001-00010010-00011001-10100000
249 // 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-b16b16
252 // CHECK-UNKNOWN: c11219a0 <unknown>
254 bfmla za.h[w10, 1, vgx2], {z0.h, z1.h}, z10.h[4] // 11000001-00011010-01011000-00100001
255 // 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-b16b16
258 // CHECK-UNKNOWN: c11a5821 <unknown>
260 bfmla za.h[w10, 1], {z0.h - z1.h}, z10.h[4] // 11000001-00011010-01011000-00100001
261 // 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-b16b16
264 // CHECK-UNKNOWN: c11a5821 <unknown>
266 bfmla za.h[w8, 5, vgx2], {z22.h, z23.h}, z14.h[5] // 11000001-00011110-00011010-11101101
267 // 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-b16b16
270 // CHECK-UNKNOWN: c11e1aed <unknown>
272 bfmla za.h[w8, 5], {z22.h - z23.h}, z14.h[5] // 11000001-00011110-00011010-11101101
273 // 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-b16b16
276 // CHECK-UNKNOWN: c11e1aed <unknown>
278 bfmla za.h[w11, 2, vgx2], {z8.h, z9.h}, z1.h[2] // 11000001-00010001-01110101-00100010
279 // 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-b16b16
282 // CHECK-UNKNOWN: c1117522 <unknown>
284 bfmla za.h[w11, 2], {z8.h - z9.h}, z1.h[2] // 11000001-00010001-01110101-00100010
285 // 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-b16b16
288 // CHECK-UNKNOWN: c1117522 <unknown>
290 bfmla za.h[w9, 7, vgx2], {z12.h, z13.h}, z11.h[4] // 11000001-00011011-00111001-10100111
291 // 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-b16b16
294 // CHECK-UNKNOWN: c11b39a7 <unknown>
296 bfmla za.h[w9, 7], {z12.h - z13.h}, z11.h[4] // 11000001-00011011-00111001-10100111
297 // 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-b16b16
300 // CHECK-UNKNOWN: c11b39a7 <unknown>
302 bfmla za.h[w8, 0, vgx2], {z0.h, z1.h}, {z0.h, z1.h} // 11000001, 11100000-00010000-00001000
303 // 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-b16b16
306 // CHECK-UNKNOWN: c1e01008 <unknown>
308 bfmla za.h[w8, 0], {z0.h - z1.h}, {z0.h - z1.h} // 11000001-11100000-00010000-00001000
309 // 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-b16b16
312 // CHECK-UNKNOWN: c1e01008 <unknown>
314 bfmla za.h[w10, 5, vgx2], {z10.h, z11.h}, {z20.h, z21.h} // 11000001, 11110100-01010001-01001101
315 // 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-b16b16
318 // CHECK-UNKNOWN: c1f4514d <unknown>
320 bfmla za.h[w10, 5], {z10.h - z11.h}, {z20.h - z21.h} // 11000001-11110100-01010001-01001101
321 // 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-b16b16
324 // CHECK-UNKNOWN: c1f4514d <unknown>
326 bfmla za.h[w11, 7, vgx2], {z12.h, z13.h}, {z8.h, z9.h} // 11000001, 11101000-01110001-10001111
327 // 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-b16b16
330 // CHECK-UNKNOWN: c1e8718f <unknown>
332 bfmla za.h[w11, 7], {z12.h - z13.h}, {z8.h - z9.h} // 11000001-11101000-01110001-10001111
333 // 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-b16b16
336 // CHECK-UNKNOWN: c1e8718f <unknown>
338 bfmla za.h[w11, 7, vgx2], {z30.h, z31.h}, {z30.h, z31.h} // 11000001, 11111110-01110011-11001111
339 // 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-b16b16
342 // CHECK-UNKNOWN: c1fe73cf <unknown>
344 bfmla za.h[w11, 7], {z30.h - z31.h}, {z30.h - z31.h} // 11000001-11111110-01110011-11001111
345 // 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-b16b16
348 // CHECK-UNKNOWN: c1fe73cf <unknown>
350 bfmla za.h[w8, 5, vgx2], {z16.h, z17.h}, {z16.h, z17.h} // 11000001, 11110000-00010010-00001101
351 // 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-b16b16
354 // CHECK-UNKNOWN: c1f0120d <unknown>
356 bfmla za.h[w8, 5], {z16.h - z17.h}, {z16.h - z17.h} // 11000001-11110000-00010010-00001101
357 // 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-b16b16
360 // CHECK-UNKNOWN: c1f0120d <unknown>
362 bfmla za.h[w8, 1, vgx2], {z0.h, z1.h}, {z30.h, z31.h} // 11000001, 11111110-00010000-00001001
363 // 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-b16b16
366 // CHECK-UNKNOWN: c1fe1009 <unknown>
368 bfmla za.h[w8, 1], {z0.h - z1.h}, {z30.h - z31.h} // 11000001-11111110-00010000-00001001
369 // 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-b16b16
372 // CHECK-UNKNOWN: c1fe1009 <unknown>
374 bfmla za.h[w10, 0, vgx2], {z18.h, z19.h}, {z20.h, z21.h} // 11000001, 11110100-01010010-01001000
375 // 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-b16b16
378 // CHECK-UNKNOWN: c1f45248 <unknown>
380 bfmla za.h[w10, 0], {z18.h - z19.h}, {z20.h - z21.h} // 11000001-11110100-01010010-01001000
381 // 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-b16b16
384 // CHECK-UNKNOWN: c1f45248 <unknown>
386 bfmla za.h[w8, 0, vgx2], {z12.h, z13.h}, {z2.h, z3.h} // 11000001, 11100010-00010001-10001000
387 // 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-b16b16
390 // CHECK-UNKNOWN: c1e21188 <unknown>
392 bfmla za.h[w8, 0], {z12.h - z13.h}, {z2.h - z3.h} // 11000001-11100010-00010001-10001000
393 // 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-b16b16
396 // CHECK-UNKNOWN: c1e21188 <unknown>
398 bfmla za.h[w10, 1, vgx2], {z0.h, z1.h}, {z26.h, z27.h} // 11000001, 11111010-01010000-00001001
399 // 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-b16b16
402 // CHECK-UNKNOWN: c1fa5009 <unknown>
404 bfmla za.h[w10, 1], {z0.h - z1.h}, {z26.h - z27.h} // 11000001-11111010-01010000-00001001
405 // 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-b16b16
408 // CHECK-UNKNOWN: c1fa5009 <unknown>
410 bfmla za.h[w8, 5, vgx2], {z22.h, z23.h}, {z30.h, z31.h} // 11000001, 11111110-00010010-11001101
411 // 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-b16b16
414 // CHECK-UNKNOWN: c1fe12cd <unknown>
416 bfmla za.h[w8, 5], {z22.h - z23.h}, {z30.h - z31.h} // 11000001-11111110-00010010-11001101
417 // 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-b16b16
420 // CHECK-UNKNOWN: c1fe12cd <unknown>
422 bfmla za.h[w11, 2, vgx2], {z8.h, z9.h}, {z0.h, z1.h} // 11000001, 11100000-01110001-00001010
423 // 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-b16b16
426 // CHECK-UNKNOWN: c1e0710a <unknown>
428 bfmla za.h[w11, 2], {z8.h - z9.h}, {z0.h - z1.h} // 11000001-11100000-01110001-00001010
429 // 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-b16b16
432 // CHECK-UNKNOWN: c1e0710a <unknown>
434 bfmla za.h[w9, 7, vgx2], {z12.h, z13.h}, {z10.h, z11.h} // 11000001, 11101010-00110001-10001111
435 // 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-b16b16
438 // CHECK-UNKNOWN: c1ea318f <unknown>
440 bfmla za.h[w9, 7], {z12.h - z13.h}, {z10.h - z11.h} // 11000001-11101010-00110001-10001111
441 // 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-b16b16
444 // CHECK-UNKNOWN: c1ea318f <unknown>
446 bfmla za.h[w8, 0, vgx4], {z0.h - z3.h}, z0.h // 11000001-01110000-00011100-00000000
447 // CHECK-INST: bfmla za.h[w8, 0, vgx4], { z0.h - z3.h }, z0.h
448 // CHECK-ENCODING: [0x00,0x1c,0x70,0xc1]
449 // CHECK-ERROR: instruction requires: sme-b16b16
450 // CHECK-UNKNOWN: c1701c00 <unknown>
452 bfmla za.h[w8, 0], {z0.h - z3.h}, z0.h // 11000001-01110000-00011100-00000000
453 // CHECK-INST: bfmla za.h[w8, 0, vgx4], { z0.h - z3.h }, z0.h
454 // CHECK-ENCODING: [0x00,0x1c,0x70,0xc1]
455 // CHECK-ERROR: instruction requires: sme-b16b16
456 // CHECK-UNKNOWN: c1701c00 <unknown>
458 bfmla za.h[w10, 5, vgx4], {z10.h - z13.h}, z5.h // 11000001-01110101-01011101-01000101
459 // CHECK-INST: bfmla za.h[w10, 5, vgx4], { z10.h - z13.h }, z5.h
460 // CHECK-ENCODING: [0x45,0x5d,0x75,0xc1]
461 // CHECK-ERROR: instruction requires: sme-b16b16
462 // CHECK-UNKNOWN: c1755d45 <unknown>
464 bfmla za.h[w10, 5], {z10.h - z13.h}, z5.h // 11000001-01110101-01011101-01000101
465 // CHECK-INST: bfmla za.h[w10, 5, vgx4], { z10.h - z13.h }, z5.h
466 // CHECK-ENCODING: [0x45,0x5d,0x75,0xc1]
467 // CHECK-ERROR: instruction requires: sme-b16b16
468 // CHECK-UNKNOWN: c1755d45 <unknown>
470 bfmla za.h[w11, 7, vgx4], {z13.h - z16.h}, z8.h // 11000001-01111000-01111101-10100111
471 // CHECK-INST: bfmla za.h[w11, 7, vgx4], { z13.h - z16.h }, z8.h
472 // CHECK-ENCODING: [0xa7,0x7d,0x78,0xc1]
473 // CHECK-ERROR: instruction requires: sme-b16b16
474 // CHECK-UNKNOWN: c1787da7 <unknown>
476 bfmla za.h[w11, 7], {z13.h - z16.h}, z8.h // 11000001-01111000-01111101-10100111
477 // CHECK-INST: bfmla za.h[w11, 7, vgx4], { z13.h - z16.h }, z8.h
478 // CHECK-ENCODING: [0xa7,0x7d,0x78,0xc1]
479 // CHECK-ERROR: instruction requires: sme-b16b16
480 // CHECK-UNKNOWN: c1787da7 <unknown>
482 bfmla za.h[w11, 7, vgx4], {z31.h, z0.h, z1.h, z2.h}, z15.h // 11000001-01111111-01111111-11100111
483 // CHECK-INST: bfmla za.h[w11, 7, vgx4], { z31.h, z0.h, z1.h, z2.h }, z15.h
484 // CHECK-ENCODING: [0xe7,0x7f,0x7f,0xc1]
485 // CHECK-ERROR: instruction requires: sme-b16b16
486 // CHECK-UNKNOWN: c17f7fe7 <unknown>
488 bfmla za.h[w11, 7], {z31.h, z0.h, z1.h, z2.h}, z15.h // 11000001-01111111-01111111-11100111
489 // CHECK-INST: bfmla za.h[w11, 7, vgx4], { z31.h, z0.h, z1.h, z2.h }, z15.h
490 // CHECK-ENCODING: [0xe7,0x7f,0x7f,0xc1]
491 // CHECK-ERROR: instruction requires: sme-b16b16
492 // CHECK-UNKNOWN: c17f7fe7 <unknown>
494 bfmla za.h[w8, 5, vgx4], {z17.h - z20.h}, z0.h // 11000001-01110000-00011110-00100101
495 // CHECK-INST: bfmla za.h[w8, 5, vgx4], { z17.h - z20.h }, z0.h
496 // CHECK-ENCODING: [0x25,0x1e,0x70,0xc1]
497 // CHECK-ERROR: instruction requires: sme-b16b16
498 // CHECK-UNKNOWN: c1701e25 <unknown>
500 bfmla za.h[w8, 5], {z17.h - z20.h}, z0.h // 11000001-01110000-00011110-00100101
501 // CHECK-INST: bfmla za.h[w8, 5, vgx4], { z17.h - z20.h }, z0.h
502 // CHECK-ENCODING: [0x25,0x1e,0x70,0xc1]
503 // CHECK-ERROR: instruction requires: sme-b16b16
504 // CHECK-UNKNOWN: c1701e25 <unknown>
506 bfmla za.h[w8, 1, vgx4], {z1.h - z4.h}, z14.h // 11000001-01111110-00011100-00100001
507 // CHECK-INST: bfmla za.h[w8, 1, vgx4], { z1.h - z4.h }, z14.h
508 // CHECK-ENCODING: [0x21,0x1c,0x7e,0xc1]
509 // CHECK-ERROR: instruction requires: sme-b16b16
510 // CHECK-UNKNOWN: c17e1c21 <unknown>
512 bfmla za.h[w8, 1], {z1.h - z4.h}, z14.h // 11000001-01111110-00011100-00100001
513 // CHECK-INST: bfmla za.h[w8, 1, vgx4], { z1.h - z4.h }, z14.h
514 // CHECK-ENCODING: [0x21,0x1c,0x7e,0xc1]
515 // CHECK-ERROR: instruction requires: sme-b16b16
516 // CHECK-UNKNOWN: c17e1c21 <unknown>
518 bfmla za.h[w10, 0, vgx4], {z19.h - z22.h}, z4.h // 11000001-01110100-01011110-01100000
519 // CHECK-INST: bfmla za.h[w10, 0, vgx4], { z19.h - z22.h }, z4.h
520 // CHECK-ENCODING: [0x60,0x5e,0x74,0xc1]
521 // CHECK-ERROR: instruction requires: sme-b16b16
522 // CHECK-UNKNOWN: c1745e60 <unknown>
524 bfmla za.h[w10, 0], {z19.h - z22.h}, z4.h // 11000001-01110100-01011110-01100000
525 // CHECK-INST: bfmla za.h[w10, 0, vgx4], { z19.h - z22.h }, z4.h
526 // CHECK-ENCODING: [0x60,0x5e,0x74,0xc1]
527 // CHECK-ERROR: instruction requires: sme-b16b16
528 // CHECK-UNKNOWN: c1745e60 <unknown>
530 bfmla za.h[w8, 0, vgx4], {z12.h - z15.h}, z2.h // 11000001-01110010-00011101-10000000
531 // CHECK-INST: bfmla za.h[w8, 0, vgx4], { z12.h - z15.h }, z2.h
532 // CHECK-ENCODING: [0x80,0x1d,0x72,0xc1]
533 // CHECK-ERROR: instruction requires: sme-b16b16
534 // CHECK-UNKNOWN: c1721d80 <unknown>
536 bfmla za.h[w8, 0], {z12.h - z15.h}, z2.h // 11000001-01110010-00011101-10000000
537 // CHECK-INST: bfmla za.h[w8, 0, vgx4], { z12.h - z15.h }, z2.h
538 // CHECK-ENCODING: [0x80,0x1d,0x72,0xc1]
539 // CHECK-ERROR: instruction requires: sme-b16b16
540 // CHECK-UNKNOWN: c1721d80 <unknown>
542 bfmla za.h[w10, 1, vgx4], {z1.h - z4.h}, z10.h // 11000001-01111010-01011100-00100001
543 // CHECK-INST: bfmla za.h[w10, 1, vgx4], { z1.h - z4.h }, z10.h
544 // CHECK-ENCODING: [0x21,0x5c,0x7a,0xc1]
545 // CHECK-ERROR: instruction requires: sme-b16b16
546 // CHECK-UNKNOWN: c17a5c21 <unknown>
548 bfmla za.h[w10, 1], {z1.h - z4.h}, z10.h // 11000001-01111010-01011100-00100001
549 // CHECK-INST: bfmla za.h[w10, 1, vgx4], { z1.h - z4.h }, z10.h
550 // CHECK-ENCODING: [0x21,0x5c,0x7a,0xc1]
551 // CHECK-ERROR: instruction requires: sme-b16b16
552 // CHECK-UNKNOWN: c17a5c21 <unknown>
554 bfmla za.h[w8, 5, vgx4], {z22.h - z25.h}, z14.h // 11000001-01111110-00011110-11000101
555 // CHECK-INST: bfmla za.h[w8, 5, vgx4], { z22.h - z25.h }, z14.h
556 // CHECK-ENCODING: [0xc5,0x1e,0x7e,0xc1]
557 // CHECK-ERROR: instruction requires: sme-b16b16
558 // CHECK-UNKNOWN: c17e1ec5 <unknown>
560 bfmla za.h[w8, 5], {z22.h - z25.h}, z14.h // 11000001-01111110-00011110-11000101
561 // CHECK-INST: bfmla za.h[w8, 5, vgx4], { z22.h - z25.h }, z14.h
562 // CHECK-ENCODING: [0xc5,0x1e,0x7e,0xc1]
563 // CHECK-ERROR: instruction requires: sme-b16b16
564 // CHECK-UNKNOWN: c17e1ec5 <unknown>
566 bfmla za.h[w11, 2, vgx4], {z9.h - z12.h}, z1.h // 11000001-01110001-01111101-00100010
567 // CHECK-INST: bfmla za.h[w11, 2, vgx4], { z9.h - z12.h }, z1.h
568 // CHECK-ENCODING: [0x22,0x7d,0x71,0xc1]
569 // CHECK-ERROR: instruction requires: sme-b16b16
570 // CHECK-UNKNOWN: c1717d22 <unknown>
572 bfmla za.h[w11, 2], {z9.h - z12.h}, z1.h // 11000001-01110001-01111101-00100010
573 // CHECK-INST: bfmla za.h[w11, 2, vgx4], { z9.h - z12.h }, z1.h
574 // CHECK-ENCODING: [0x22,0x7d,0x71,0xc1]
575 // CHECK-ERROR: instruction requires: sme-b16b16
576 // CHECK-UNKNOWN: c1717d22 <unknown>
578 bfmla za.h[w9, 7, vgx4], {z12.h - z15.h}, z11.h // 11000001-01111011-00111101-10000111
579 // CHECK-INST: bfmla za.h[w9, 7, vgx4], { z12.h - z15.h }, z11.h
580 // CHECK-ENCODING: [0x87,0x3d,0x7b,0xc1]
581 // CHECK-ERROR: instruction requires: sme-b16b16
582 // CHECK-UNKNOWN: c17b3d87 <unknown>
584 bfmla za.h[w9, 7], {z12.h - z15.h}, z11.h // 11000001-01111011-00111101-10000111
585 // CHECK-INST: bfmla za.h[w9, 7, vgx4], { z12.h - z15.h }, z11.h
586 // CHECK-ENCODING: [0x87,0x3d,0x7b,0xc1]
587 // CHECK-ERROR: instruction requires: sme-b16b16
588 // CHECK-UNKNOWN: c17b3d87 <unknown>
590 bfmla za.h[w8, 0, vgx4], {z0.h - z3.h}, z0.h[0] // 11000001-00010000-10010000-00100000
591 // 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-b16b16
594 // CHECK-UNKNOWN: c1109020 <unknown>
596 bfmla za.h[w8, 0], {z0.h - z3.h}, z0.h[0] // 11000001-00010000-10010000-00100000
597 // 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-b16b16
600 // CHECK-UNKNOWN: c1109020 <unknown>
602 bfmla za.h[w10, 5, vgx4], {z8.h - z11.h}, z5.h[2] // 11000001-00010101-11010101-00100101
603 // 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-b16b16
606 // CHECK-UNKNOWN: c115d525 <unknown>
608 bfmla za.h[w10, 5], {z8.h - z11.h}, z5.h[2] // 11000001-00010101-11010101-00100101
609 // 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-b16b16
612 // CHECK-UNKNOWN: c115d525 <unknown>
614 bfmla za.h[w11, 7, vgx4], {z12.h - z15.h}, z8.h[6] // 11000001-00011000-11111101-10100111
615 // 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-b16b16
618 // CHECK-UNKNOWN: c118fda7 <unknown>
620 bfmla za.h[w11, 7], {z12.h - z15.h}, z8.h[6] // 11000001-00011000-11111101-10100111
621 // 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-b16b16
624 // CHECK-UNKNOWN: c118fda7 <unknown>
626 bfmla za.h[w11, 7, vgx4], {z28.h - z31.h}, z15.h[7] // 11000001-00011111-11111111-10101111
627 // 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-b16b16
630 // CHECK-UNKNOWN: c11fffaf <unknown>
632 bfmla za.h[w11, 7], {z28.h - z31.h}, z15.h[7] // 11000001-00011111-11111111-10101111
633 // 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-b16b16
636 // CHECK-UNKNOWN: c11fffaf <unknown>
638 bfmla za.h[w8, 5, vgx4], {z16.h - z19.h}, z0.h[6] // 11000001-00010000-10011110-00100101
639 // 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-b16b16
642 // CHECK-UNKNOWN: c1109e25 <unknown>
644 bfmla za.h[w8, 5], {z16.h - z19.h}, z0.h[6] // 11000001-00010000-10011110-00100101
645 // 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-b16b16
648 // CHECK-UNKNOWN: c1109e25 <unknown>
650 bfmla za.h[w8, 1, vgx4], {z0.h - z3.h}, z14.h[2] // 11000001-00011110-10010100-00100001
651 // 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-b16b16
654 // CHECK-UNKNOWN: c11e9421 <unknown>
656 bfmla za.h[w8, 1], {z0.h - z3.h}, z14.h[2] // 11000001-00011110-10010100-00100001
657 // 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-b16b16
660 // CHECK-UNKNOWN: c11e9421 <unknown>
662 bfmla za.h[w10, 0, vgx4], {z16.h - z19.h}, z4.h[3] // 11000001-00010100-11010110-00101000
663 // 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-b16b16
666 // CHECK-UNKNOWN: c114d628 <unknown>
668 bfmla za.h[w10, 0], {z16.h - z19.h}, z4.h[3] // 11000001-00010100-11010110-00101000
669 // 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-b16b16
672 // CHECK-UNKNOWN: c114d628 <unknown>
674 bfmla za.h[w8, 0, vgx4], {z12.h - z15.h}, z2.h[4] // 11000001-00010010-10011001-10100000
675 // 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-b16b16
678 // CHECK-UNKNOWN: c11299a0 <unknown>
680 bfmla za.h[w8, 0], {z12.h - z15.h}, z2.h[4] // 11000001-00010010-10011001-10100000
681 // 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-b16b16
684 // CHECK-UNKNOWN: c11299a0 <unknown>
686 bfmla za.h[w10, 1, vgx4], {z0.h - z3.h}, z10.h[4] // 11000001-00011010-11011000-00100001
687 // 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-b16b16
690 // CHECK-UNKNOWN: c11ad821 <unknown>
692 bfmla za.h[w10, 1], {z0.h - z3.h}, z10.h[4] // 11000001-00011010-11011000-00100001
693 // 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-b16b16
696 // CHECK-UNKNOWN: c11ad821 <unknown>
698 bfmla za.h[w8, 5, vgx4], {z20.h - z23.h}, z14.h[5] // 11000001-00011110-10011010-10101101
699 // 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-b16b16
702 // CHECK-UNKNOWN: c11e9aad <unknown>
704 bfmla za.h[w8, 5], {z20.h - z23.h}, z14.h[5] // 11000001-00011110-10011010-10101101
705 // 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-b16b16
708 // CHECK-UNKNOWN: c11e9aad <unknown>
710 bfmla za.h[w11, 2, vgx4], {z8.h - z11.h}, z1.h[2] // 11000001-00010001-11110101-00100010
711 // 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-b16b16
714 // CHECK-UNKNOWN: c111f522 <unknown>
716 bfmla za.h[w11, 2], {z8.h - z11.h}, z1.h[2] // 11000001-00010001-11110101-00100010
717 // 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-b16b16
720 // CHECK-UNKNOWN: c111f522 <unknown>
722 bfmla za.h[w9, 7, vgx4], {z12.h - z15.h}, z11.h[4] // 11000001-00011011-10111001-10100111
723 // 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-b16b16
726 // CHECK-UNKNOWN: c11bb9a7 <unknown>
728 bfmla za.h[w9, 7], {z12.h - z15.h}, z11.h[4] // 11000001-00011011-10111001-10100111
729 // 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-b16b16
732 // CHECK-UNKNOWN: c11bb9a7 <unknown>
734 bfmla za.h[w8, 0, vgx4], {z0.h - z3.h}, {z0.h - z3.h} // 11000001-11100001-00010000-00001000
735 // 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-b16b16
738 // CHECK-UNKNOWN: c1e11008 <unknown>
740 bfmla za.h[w8, 0], {z0.h - z3.h}, {z0.h - z3.h} // 11000001-11100001-00010000-00001000
741 // 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-b16b16
744 // CHECK-UNKNOWN: c1e11008 <unknown>
746 bfmla za.h[w10, 5, vgx4], {z8.h - z11.h}, {z20.h - z23.h} // 11000001-11110101-01010001-00001101
747 // 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-b16b16
750 // CHECK-UNKNOWN: c1f5510d <unknown>
752 bfmla za.h[w10, 5], {z8.h - z11.h}, {z20.h - z23.h} // 11000001-11110101-01010001-00001101
753 // 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-b16b16
756 // CHECK-UNKNOWN: c1f5510d <unknown>
758 bfmla za.h[w11, 7, vgx4], {z12.h - z15.h}, {z8.h - z11.h} // 11000001-11101001-01110001-10001111
759 // 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-b16b16
762 // CHECK-UNKNOWN: c1e9718f <unknown>
764 bfmla za.h[w11, 7], {z12.h - z15.h}, {z8.h - z11.h} // 11000001-11101001-01110001-10001111
765 // 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-b16b16
768 // CHECK-UNKNOWN: c1e9718f <unknown>
770 bfmla za.h[w11, 7, vgx4], {z28.h - z31.h}, {z28.h - z31.h} // 11000001-11111101-01110011-10001111
771 // 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-b16b16
774 // CHECK-UNKNOWN: c1fd738f <unknown>
776 bfmla za.h[w11, 7], {z28.h - z31.h}, {z28.h - z31.h} // 11000001-11111101-01110011-10001111
777 // 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-b16b16
780 // CHECK-UNKNOWN: c1fd738f <unknown>
782 bfmla za.h[w8, 5, vgx4], {z16.h - z19.h}, {z16.h - z19.h} // 11000001-11110001-00010010-00001101
783 // 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-b16b16
786 // CHECK-UNKNOWN: c1f1120d <unknown>
788 bfmla za.h[w8, 5], {z16.h - z19.h}, {z16.h - z19.h} // 11000001-11110001-00010010-00001101
789 // 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-b16b16
792 // CHECK-UNKNOWN: c1f1120d <unknown>
794 bfmla za.h[w8, 1, vgx4], {z0.h - z3.h}, {z28.h - z31.h} // 11000001-11111101-00010000-00001001
795 // 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-b16b16
798 // CHECK-UNKNOWN: c1fd1009 <unknown>
800 bfmla za.h[w8, 1], {z0.h - z3.h}, {z28.h - z31.h} // 11000001-11111101-00010000-00001001
801 // 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-b16b16
804 // CHECK-UNKNOWN: c1fd1009 <unknown>
806 bfmla za.h[w10, 0, vgx4], {z16.h - z19.h}, {z20.h - z23.h} // 11000001-11110101-01010010-00001000
807 // 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-b16b16
810 // CHECK-UNKNOWN: c1f55208 <unknown>
812 bfmla za.h[w10, 0], {z16.h - z19.h}, {z20.h - z23.h} // 11000001-11110101-01010010-00001000
813 // 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-b16b16
816 // CHECK-UNKNOWN: c1f55208 <unknown>
818 bfmla za.h[w8, 0, vgx4], {z12.h - z15.h}, {z0.h - z3.h} // 11000001-11100001-00010001-10001000
819 // 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-b16b16
822 // CHECK-UNKNOWN: c1e11188 <unknown>
824 bfmla za.h[w8, 0], {z12.h - z15.h}, {z0.h - z3.h} // 11000001-11100001-00010001-10001000
825 // 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-b16b16
828 // CHECK-UNKNOWN: c1e11188 <unknown>
830 bfmla za.h[w10, 1, vgx4], {z0.h - z3.h}, {z24.h - z27.h} // 11000001-11111001-01010000-00001001
831 // 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-b16b16
834 // CHECK-UNKNOWN: c1f95009 <unknown>
836 bfmla za.h[w10, 1], {z0.h - z3.h}, {z24.h - z27.h} // 11000001-11111001-01010000-00001001
837 // 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-b16b16
840 // CHECK-UNKNOWN: c1f95009 <unknown>
842 bfmla za.h[w8, 5, vgx4], {z20.h - z23.h}, {z28.h - z31.h} // 11000001-11111101-00010010-10001101
843 // 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-b16b16
846 // CHECK-UNKNOWN: c1fd128d <unknown>
848 bfmla za.h[w8, 5], {z20.h - z23.h}, {z28.h - z31.h} // 11000001-11111101-00010010-10001101
849 // 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-b16b16
852 // CHECK-UNKNOWN: c1fd128d <unknown>
854 bfmla za.h[w11, 2, vgx4], {z8.h - z11.h}, {z0.h - z3.h} // 11000001-11100001-01110001-00001010
855 // 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-b16b16
858 // CHECK-UNKNOWN: c1e1710a <unknown>
860 bfmla za.h[w11, 2], {z8.h - z11.h}, {z0.h - z3.h} // 11000001-11100001-01110001-00001010
861 // 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-b16b16
864 // CHECK-UNKNOWN: c1e1710a <unknown>
866 bfmla za.h[w9, 7, vgx4], {z12.h - z15.h}, {z8.h - z11.h} // 11000001-11101001-00110001-10001111
867 // 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-b16b16
870 // CHECK-UNKNOWN: c1e9318f <unknown>
872 bfmla za.h[w9, 7], {z12.h - z15.h}, {z8.h - z11.h} // 11000001-11101001-00110001-10001111
873 // 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-b16b16
876 // CHECK-UNKNOWN: c1e9318f <unknown>