Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / MC / AArch64 / SME2 / bfmlal.s
blob08edb9d4a783f379730edaf3b67ca276e69f915a
1 // RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme2 < %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=+sme2 < %s \
6 // RUN: | llvm-objdump --no-print-imm-hex -d --mattr=+sme2 - | FileCheck %s --check-prefix=CHECK-INST
7 // RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme2 < %s \
8 // RUN: | llvm-objdump --no-print-imm-hex -d --mattr=-sme2 - | FileCheck %s --check-prefix=CHECK-UNKNOWN
9 // RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme2 < %s \
10 // RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \
11 // RUN: | llvm-mc -triple=aarch64 -mattr=+sme2 -disassemble -show-encoding \
12 // RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
15 bfmlal za.s[w8, 0:1], z0.h, z0.h // 11000001-00100000-00001100-00010000
16 // CHECK-INST: bfmlal za.s[w8, 0:1], z0.h, z0.h
17 // CHECK-ENCODING: [0x10,0x0c,0x20,0xc1]
18 // CHECK-ERROR: instruction requires: sme2
19 // CHECK-UNKNOWN: c1200c10 <unknown>
21 bfmlal za.s[w10, 10:11], z10.h, z5.h // 11000001-00100101-01001101-01010101
22 // CHECK-INST: bfmlal za.s[w10, 10:11], z10.h, z5.h
23 // CHECK-ENCODING: [0x55,0x4d,0x25,0xc1]
24 // CHECK-ERROR: instruction requires: sme2
25 // CHECK-UNKNOWN: c1254d55 <unknown>
27 bfmlal za.s[w11, 14:15], z13.h, z8.h // 11000001-00101000-01101101-10110111
28 // CHECK-INST: bfmlal za.s[w11, 14:15], z13.h, z8.h
29 // CHECK-ENCODING: [0xb7,0x6d,0x28,0xc1]
30 // CHECK-ERROR: instruction requires: sme2
31 // CHECK-UNKNOWN: c1286db7 <unknown>
33 bfmlal za.s[w11, 14:15], z31.h, z15.h // 11000001-00101111-01101111-11110111
34 // CHECK-INST: bfmlal za.s[w11, 14:15], z31.h, z15.h
35 // CHECK-ENCODING: [0xf7,0x6f,0x2f,0xc1]
36 // CHECK-ERROR: instruction requires: sme2
37 // CHECK-UNKNOWN: c12f6ff7 <unknown>
39 bfmlal za.s[w8, 10:11], z17.h, z0.h // 11000001-00100000-00001110-00110101
40 // CHECK-INST: bfmlal za.s[w8, 10:11], z17.h, z0.h
41 // CHECK-ENCODING: [0x35,0x0e,0x20,0xc1]
42 // CHECK-ERROR: instruction requires: sme2
43 // CHECK-UNKNOWN: c1200e35 <unknown>
45 bfmlal za.s[w8, 2:3], z1.h, z14.h // 11000001-00101110-00001100-00110001
46 // CHECK-INST: bfmlal za.s[w8, 2:3], z1.h, z14.h
47 // CHECK-ENCODING: [0x31,0x0c,0x2e,0xc1]
48 // CHECK-ERROR: instruction requires: sme2
49 // CHECK-UNKNOWN: c12e0c31 <unknown>
51 bfmlal za.s[w10, 0:1], z19.h, z4.h // 11000001-00100100-01001110-01110000
52 // CHECK-INST: bfmlal za.s[w10, 0:1], z19.h, z4.h
53 // CHECK-ENCODING: [0x70,0x4e,0x24,0xc1]
54 // CHECK-ERROR: instruction requires: sme2
55 // CHECK-UNKNOWN: c1244e70 <unknown>
57 bfmlal za.s[w8, 0:1], z12.h, z2.h // 11000001-00100010-00001101-10010000
58 // CHECK-INST: bfmlal za.s[w8, 0:1], z12.h, z2.h
59 // CHECK-ENCODING: [0x90,0x0d,0x22,0xc1]
60 // CHECK-ERROR: instruction requires: sme2
61 // CHECK-UNKNOWN: c1220d90 <unknown>
63 bfmlal za.s[w10, 2:3], z1.h, z10.h // 11000001-00101010-01001100-00110001
64 // CHECK-INST: bfmlal za.s[w10, 2:3], z1.h, z10.h
65 // CHECK-ENCODING: [0x31,0x4c,0x2a,0xc1]
66 // CHECK-ERROR: instruction requires: sme2
67 // CHECK-UNKNOWN: c12a4c31 <unknown>
69 bfmlal za.s[w8, 10:11], z22.h, z14.h // 11000001-00101110-00001110-11010101
70 // CHECK-INST: bfmlal za.s[w8, 10:11], z22.h, z14.h
71 // CHECK-ENCODING: [0xd5,0x0e,0x2e,0xc1]
72 // CHECK-ERROR: instruction requires: sme2
73 // CHECK-UNKNOWN: c12e0ed5 <unknown>
75 bfmlal za.s[w11, 4:5], z9.h, z1.h // 11000001-00100001-01101101-00110010
76 // CHECK-INST: bfmlal za.s[w11, 4:5], z9.h, z1.h
77 // CHECK-ENCODING: [0x32,0x6d,0x21,0xc1]
78 // CHECK-ERROR: instruction requires: sme2
79 // CHECK-UNKNOWN: c1216d32 <unknown>
81 bfmlal za.s[w9, 14:15], z12.h, z11.h // 11000001-00101011-00101101-10010111
82 // CHECK-INST: bfmlal za.s[w9, 14:15], z12.h, z11.h
83 // CHECK-ENCODING: [0x97,0x2d,0x2b,0xc1]
84 // CHECK-ERROR: instruction requires: sme2
85 // CHECK-UNKNOWN: c12b2d97 <unknown>
88 bfmlal za.s[w8, 0:1], z0.h, z0.h[0] // 11000001-10000000-00010000-00010000
89 // CHECK-INST: bfmlal za.s[w8, 0:1], z0.h, z0.h[0]
90 // CHECK-ENCODING: [0x10,0x10,0x80,0xc1]
91 // CHECK-ERROR: instruction requires: sme2
92 // CHECK-UNKNOWN: c1801010 <unknown>
94 bfmlal za.s[w10, 10:11], z10.h, z5.h[1] // 11000001-10000101-01010101-01010101
95 // CHECK-INST: bfmlal za.s[w10, 10:11], z10.h, z5.h[1]
96 // CHECK-ENCODING: [0x55,0x55,0x85,0xc1]
97 // CHECK-ERROR: instruction requires: sme2
98 // CHECK-UNKNOWN: c1855555 <unknown>
100 bfmlal za.s[w11, 14:15], z13.h, z8.h[7] // 11000001-10001000-11111101-10110111
101 // CHECK-INST: bfmlal za.s[w11, 14:15], z13.h, z8.h[7]
102 // CHECK-ENCODING: [0xb7,0xfd,0x88,0xc1]
103 // CHECK-ERROR: instruction requires: sme2
104 // CHECK-UNKNOWN: c188fdb7 <unknown>
106 bfmlal za.s[w11, 14:15], z31.h, z15.h[7] // 11000001-10001111-11111111-11110111
107 // CHECK-INST: bfmlal za.s[w11, 14:15], z31.h, z15.h[7]
108 // CHECK-ENCODING: [0xf7,0xff,0x8f,0xc1]
109 // CHECK-ERROR: instruction requires: sme2
110 // CHECK-UNKNOWN: c18ffff7 <unknown>
112 bfmlal za.s[w8, 10:11], z17.h, z0.h[3] // 11000001-10000000-00011110-00110101
113 // CHECK-INST: bfmlal za.s[w8, 10:11], z17.h, z0.h[3]
114 // CHECK-ENCODING: [0x35,0x1e,0x80,0xc1]
115 // CHECK-ERROR: instruction requires: sme2
116 // CHECK-UNKNOWN: c1801e35 <unknown>
118 bfmlal za.s[w8, 2:3], z1.h, z14.h[5] // 11000001-10001110-10010100-00110001
119 // CHECK-INST: bfmlal za.s[w8, 2:3], z1.h, z14.h[5]
120 // CHECK-ENCODING: [0x31,0x94,0x8e,0xc1]
121 // CHECK-ERROR: instruction requires: sme2
122 // CHECK-UNKNOWN: c18e9431 <unknown>
124 bfmlal za.s[w10, 0:1], z19.h, z4.h[1] // 11000001-10000100-01010110-01110000
125 // CHECK-INST: bfmlal za.s[w10, 0:1], z19.h, z4.h[1]
126 // CHECK-ENCODING: [0x70,0x56,0x84,0xc1]
127 // CHECK-ERROR: instruction requires: sme2
128 // CHECK-UNKNOWN: c1845670 <unknown>
130 bfmlal za.s[w8, 0:1], z12.h, z2.h[2] // 11000001-10000010-00011001-10010000
131 // CHECK-INST: bfmlal za.s[w8, 0:1], z12.h, z2.h[2]
132 // CHECK-ENCODING: [0x90,0x19,0x82,0xc1]
133 // CHECK-ERROR: instruction requires: sme2
134 // CHECK-UNKNOWN: c1821990 <unknown>
136 bfmlal za.s[w10, 2:3], z1.h, z10.h[6] // 11000001-10001010-11011000-00110001
137 // CHECK-INST: bfmlal za.s[w10, 2:3], z1.h, z10.h[6]
138 // CHECK-ENCODING: [0x31,0xd8,0x8a,0xc1]
139 // CHECK-ERROR: instruction requires: sme2
140 // CHECK-UNKNOWN: c18ad831 <unknown>
142 bfmlal za.s[w8, 10:11], z22.h, z14.h[2] // 11000001-10001110-00011010-11010101
143 // CHECK-INST: bfmlal za.s[w8, 10:11], z22.h, z14.h[2]
144 // CHECK-ENCODING: [0xd5,0x1a,0x8e,0xc1]
145 // CHECK-ERROR: instruction requires: sme2
146 // CHECK-UNKNOWN: c18e1ad5 <unknown>
148 bfmlal za.s[w11, 4:5], z9.h, z1.h[5] // 11000001-10000001-11110101-00110010
149 // CHECK-INST: bfmlal za.s[w11, 4:5], z9.h, z1.h[5]
150 // CHECK-ENCODING: [0x32,0xf5,0x81,0xc1]
151 // CHECK-ERROR: instruction requires: sme2
152 // CHECK-UNKNOWN: c181f532 <unknown>
154 bfmlal za.s[w9, 14:15], z12.h, z11.h[6] // 11000001-10001011-10111001-10010111
155 // CHECK-INST: bfmlal za.s[w9, 14:15], z12.h, z11.h[6]
156 // CHECK-ENCODING: [0x97,0xb9,0x8b,0xc1]
157 // CHECK-ERROR: instruction requires: sme2
158 // CHECK-UNKNOWN: c18bb997 <unknown>
161 bfmlal za.s[w8, 0:1, vgx2], {z0.h, z1.h}, z0.h // 11000001-00100000-00001000-00010000
162 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx2], { z0.h, z1.h }, z0.h
163 // CHECK-ENCODING: [0x10,0x08,0x20,0xc1]
164 // CHECK-ERROR: instruction requires: sme2
165 // CHECK-UNKNOWN: c1200810 <unknown>
167 bfmlal za.s[w8, 0:1], {z0.h - z1.h}, z0.h // 11000001-00100000-00001000-00010000
168 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx2], { z0.h, z1.h }, z0.h
169 // CHECK-ENCODING: [0x10,0x08,0x20,0xc1]
170 // CHECK-ERROR: instruction requires: sme2
171 // CHECK-UNKNOWN: c1200810 <unknown>
173 bfmlal za.s[w10, 2:3, vgx2], {z10.h, z11.h}, z5.h // 11000001-00100101-01001001-01010001
174 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx2], { z10.h, z11.h }, z5.h
175 // CHECK-ENCODING: [0x51,0x49,0x25,0xc1]
176 // CHECK-ERROR: instruction requires: sme2
177 // CHECK-UNKNOWN: c1254951 <unknown>
179 bfmlal za.s[w10, 2:3], {z10.h - z11.h}, z5.h // 11000001-00100101-01001001-01010001
180 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx2], { z10.h, z11.h }, z5.h
181 // CHECK-ENCODING: [0x51,0x49,0x25,0xc1]
182 // CHECK-ERROR: instruction requires: sme2
183 // CHECK-UNKNOWN: c1254951 <unknown>
185 bfmlal za.s[w11, 6:7, vgx2], {z13.h, z14.h}, z8.h // 11000001-00101000-01101001-10110011
186 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx2], { z13.h, z14.h }, z8.h
187 // CHECK-ENCODING: [0xb3,0x69,0x28,0xc1]
188 // CHECK-ERROR: instruction requires: sme2
189 // CHECK-UNKNOWN: c12869b3 <unknown>
191 bfmlal za.s[w11, 6:7], {z13.h - z14.h}, z8.h // 11000001-00101000-01101001-10110011
192 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx2], { z13.h, z14.h }, z8.h
193 // CHECK-ENCODING: [0xb3,0x69,0x28,0xc1]
194 // CHECK-ERROR: instruction requires: sme2
195 // CHECK-UNKNOWN: c12869b3 <unknown>
197 bfmlal za.s[w11, 6:7, vgx2], {z31.h, z0.h}, z15.h // 11000001-00101111-01101011-11110011
198 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx2], { z31.h, z0.h }, z15.h
199 // CHECK-ENCODING: [0xf3,0x6b,0x2f,0xc1]
200 // CHECK-ERROR: instruction requires: sme2
201 // CHECK-UNKNOWN: c12f6bf3 <unknown>
203 bfmlal za.s[w11, 6:7], {z31.h - z0.h}, z15.h // 11000001-00101111-01101011-11110011
204 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx2], { z31.h, z0.h }, z15.h
205 // CHECK-ENCODING: [0xf3,0x6b,0x2f,0xc1]
206 // CHECK-ERROR: instruction requires: sme2
207 // CHECK-UNKNOWN: c12f6bf3 <unknown>
209 bfmlal za.s[w8, 2:3, vgx2], {z17.h, z18.h}, z0.h // 11000001-00100000-00001010-00110001
210 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z17.h, z18.h }, z0.h
211 // CHECK-ENCODING: [0x31,0x0a,0x20,0xc1]
212 // CHECK-ERROR: instruction requires: sme2
213 // CHECK-UNKNOWN: c1200a31 <unknown>
215 bfmlal za.s[w8, 2:3], {z17.h - z18.h}, z0.h // 11000001-00100000-00001010-00110001
216 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z17.h, z18.h }, z0.h
217 // CHECK-ENCODING: [0x31,0x0a,0x20,0xc1]
218 // CHECK-ERROR: instruction requires: sme2
219 // CHECK-UNKNOWN: c1200a31 <unknown>
221 bfmlal za.s[w8, 2:3, vgx2], {z1.h, z2.h}, z14.h // 11000001-00101110-00001000-00110001
222 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z1.h, z2.h }, z14.h
223 // CHECK-ENCODING: [0x31,0x08,0x2e,0xc1]
224 // CHECK-ERROR: instruction requires: sme2
225 // CHECK-UNKNOWN: c12e0831 <unknown>
227 bfmlal za.s[w8, 2:3], {z1.h - z2.h}, z14.h // 11000001-00101110-00001000-00110001
228 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z1.h, z2.h }, z14.h
229 // CHECK-ENCODING: [0x31,0x08,0x2e,0xc1]
230 // CHECK-ERROR: instruction requires: sme2
231 // CHECK-UNKNOWN: c12e0831 <unknown>
233 bfmlal za.s[w10, 0:1, vgx2], {z19.h, z20.h}, z4.h // 11000001-00100100-01001010-01110000
234 // CHECK-INST: bfmlal za.s[w10, 0:1, vgx2], { z19.h, z20.h }, z4.h
235 // CHECK-ENCODING: [0x70,0x4a,0x24,0xc1]
236 // CHECK-ERROR: instruction requires: sme2
237 // CHECK-UNKNOWN: c1244a70 <unknown>
239 bfmlal za.s[w10, 0:1], {z19.h - z20.h}, z4.h // 11000001-00100100-01001010-01110000
240 // CHECK-INST: bfmlal za.s[w10, 0:1, vgx2], { z19.h, z20.h }, z4.h
241 // CHECK-ENCODING: [0x70,0x4a,0x24,0xc1]
242 // CHECK-ERROR: instruction requires: sme2
243 // CHECK-UNKNOWN: c1244a70 <unknown>
245 bfmlal za.s[w8, 0:1, vgx2], {z12.h, z13.h}, z2.h // 11000001-00100010-00001001-10010000
246 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx2], { z12.h, z13.h }, z2.h
247 // CHECK-ENCODING: [0x90,0x09,0x22,0xc1]
248 // CHECK-ERROR: instruction requires: sme2
249 // CHECK-UNKNOWN: c1220990 <unknown>
251 bfmlal za.s[w8, 0:1], {z12.h - z13.h}, z2.h // 11000001-00100010-00001001-10010000
252 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx2], { z12.h, z13.h }, z2.h
253 // CHECK-ENCODING: [0x90,0x09,0x22,0xc1]
254 // CHECK-ERROR: instruction requires: sme2
255 // CHECK-UNKNOWN: c1220990 <unknown>
257 bfmlal za.s[w10, 2:3, vgx2], {z1.h, z2.h}, z10.h // 11000001-00101010-01001000-00110001
258 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx2], { z1.h, z2.h }, z10.h
259 // CHECK-ENCODING: [0x31,0x48,0x2a,0xc1]
260 // CHECK-ERROR: instruction requires: sme2
261 // CHECK-UNKNOWN: c12a4831 <unknown>
263 bfmlal za.s[w10, 2:3], {z1.h - z2.h}, z10.h // 11000001-00101010-01001000-00110001
264 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx2], { z1.h, z2.h }, z10.h
265 // CHECK-ENCODING: [0x31,0x48,0x2a,0xc1]
266 // CHECK-ERROR: instruction requires: sme2
267 // CHECK-UNKNOWN: c12a4831 <unknown>
269 bfmlal za.s[w8, 2:3, vgx2], {z22.h, z23.h}, z14.h // 11000001-00101110-00001010-11010001
270 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z22.h, z23.h }, z14.h
271 // CHECK-ENCODING: [0xd1,0x0a,0x2e,0xc1]
272 // CHECK-ERROR: instruction requires: sme2
273 // CHECK-UNKNOWN: c12e0ad1 <unknown>
275 bfmlal za.s[w8, 2:3], {z22.h - z23.h}, z14.h // 11000001-00101110-00001010-11010001
276 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z22.h, z23.h }, z14.h
277 // CHECK-ENCODING: [0xd1,0x0a,0x2e,0xc1]
278 // CHECK-ERROR: instruction requires: sme2
279 // CHECK-UNKNOWN: c12e0ad1 <unknown>
281 bfmlal za.s[w11, 4:5, vgx2], {z9.h, z10.h}, z1.h // 11000001-00100001-01101001-00110010
282 // CHECK-INST: bfmlal za.s[w11, 4:5, vgx2], { z9.h, z10.h }, z1.h
283 // CHECK-ENCODING: [0x32,0x69,0x21,0xc1]
284 // CHECK-ERROR: instruction requires: sme2
285 // CHECK-UNKNOWN: c1216932 <unknown>
287 bfmlal za.s[w11, 4:5], {z9.h - z10.h}, z1.h // 11000001-00100001-01101001-00110010
288 // CHECK-INST: bfmlal za.s[w11, 4:5, vgx2], { z9.h, z10.h }, z1.h
289 // CHECK-ENCODING: [0x32,0x69,0x21,0xc1]
290 // CHECK-ERROR: instruction requires: sme2
291 // CHECK-UNKNOWN: c1216932 <unknown>
293 bfmlal za.s[w9, 6:7, vgx2], {z12.h, z13.h}, z11.h // 11000001-00101011-00101001-10010011
294 // CHECK-INST: bfmlal za.s[w9, 6:7, vgx2], { z12.h, z13.h }, z11.h
295 // CHECK-ENCODING: [0x93,0x29,0x2b,0xc1]
296 // CHECK-ERROR: instruction requires: sme2
297 // CHECK-UNKNOWN: c12b2993 <unknown>
299 bfmlal za.s[w9, 6:7], {z12.h - z13.h}, z11.h // 11000001-00101011-00101001-10010011
300 // CHECK-INST: bfmlal za.s[w9, 6:7, vgx2], { z12.h, z13.h }, z11.h
301 // CHECK-ENCODING: [0x93,0x29,0x2b,0xc1]
302 // CHECK-ERROR: instruction requires: sme2
303 // CHECK-UNKNOWN: c12b2993 <unknown>
306 bfmlal za.s[w8, 0:1, vgx2], {z0.h, z1.h}, z0.h[0] // 11000001-10010000-00010000-00010000
307 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx2], { z0.h, z1.h }, z0.h[0]
308 // CHECK-ENCODING: [0x10,0x10,0x90,0xc1]
309 // CHECK-ERROR: instruction requires: sme2
310 // CHECK-UNKNOWN: c1901010 <unknown>
312 bfmlal za.s[w8, 0:1], {z0.h - z1.h}, z0.h[0] // 11000001-10010000-00010000-00010000
313 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx2], { z0.h, z1.h }, z0.h[0]
314 // CHECK-ENCODING: [0x10,0x10,0x90,0xc1]
315 // CHECK-ERROR: instruction requires: sme2
316 // CHECK-UNKNOWN: c1901010 <unknown>
318 bfmlal za.s[w10, 2:3, vgx2], {z10.h, z11.h}, z5.h[3] // 11000001-10010101-01010101-01010101
319 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx2], { z10.h, z11.h }, z5.h[3]
320 // CHECK-ENCODING: [0x55,0x55,0x95,0xc1]
321 // CHECK-ERROR: instruction requires: sme2
322 // CHECK-UNKNOWN: c1955555 <unknown>
324 bfmlal za.s[w10, 2:3], {z10.h - z11.h}, z5.h[3] // 11000001-10010101-01010101-01010101
325 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx2], { z10.h, z11.h }, z5.h[3]
326 // CHECK-ENCODING: [0x55,0x55,0x95,0xc1]
327 // CHECK-ERROR: instruction requires: sme2
328 // CHECK-UNKNOWN: c1955555 <unknown>
330 bfmlal za.s[w11, 6:7, vgx2], {z12.h, z13.h}, z8.h[7] // 11000001-10011000-01111101-10010111
331 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx2], { z12.h, z13.h }, z8.h[7]
332 // CHECK-ENCODING: [0x97,0x7d,0x98,0xc1]
333 // CHECK-ERROR: instruction requires: sme2
334 // CHECK-UNKNOWN: c1987d97 <unknown>
336 bfmlal za.s[w11, 6:7], {z12.h - z13.h}, z8.h[7] // 11000001-10011000-01111101-10010111
337 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx2], { z12.h, z13.h }, z8.h[7]
338 // CHECK-ENCODING: [0x97,0x7d,0x98,0xc1]
339 // CHECK-ERROR: instruction requires: sme2
340 // CHECK-UNKNOWN: c1987d97 <unknown>
342 bfmlal za.s[w11, 6:7, vgx2], {z30.h, z31.h}, z15.h[7] // 11000001-10011111-01111111-11010111
343 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx2], { z30.h, z31.h }, z15.h[7]
344 // CHECK-ENCODING: [0xd7,0x7f,0x9f,0xc1]
345 // CHECK-ERROR: instruction requires: sme2
346 // CHECK-UNKNOWN: c19f7fd7 <unknown>
348 bfmlal za.s[w11, 6:7], {z30.h - z31.h}, z15.h[7] // 11000001-10011111-01111111-11010111
349 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx2], { z30.h, z31.h }, z15.h[7]
350 // CHECK-ENCODING: [0xd7,0x7f,0x9f,0xc1]
351 // CHECK-ERROR: instruction requires: sme2
352 // CHECK-UNKNOWN: c19f7fd7 <unknown>
354 bfmlal za.s[w8, 2:3, vgx2], {z16.h, z17.h}, z0.h[7] // 11000001-10010000-00011110-00010101
355 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z16.h, z17.h }, z0.h[7]
356 // CHECK-ENCODING: [0x15,0x1e,0x90,0xc1]
357 // CHECK-ERROR: instruction requires: sme2
358 // CHECK-UNKNOWN: c1901e15 <unknown>
360 bfmlal za.s[w8, 2:3], {z16.h - z17.h}, z0.h[7] // 11000001-10010000-00011110-00010101
361 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z16.h, z17.h }, z0.h[7]
362 // CHECK-ENCODING: [0x15,0x1e,0x90,0xc1]
363 // CHECK-ERROR: instruction requires: sme2
364 // CHECK-UNKNOWN: c1901e15 <unknown>
366 bfmlal za.s[w8, 2:3, vgx2], {z0.h, z1.h}, z14.h[2] // 11000001-10011110-00010100-00010001
367 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z0.h, z1.h }, z14.h[2]
368 // CHECK-ENCODING: [0x11,0x14,0x9e,0xc1]
369 // CHECK-ERROR: instruction requires: sme2
370 // CHECK-UNKNOWN: c19e1411 <unknown>
372 bfmlal za.s[w8, 2:3], {z0.h - z1.h}, z14.h[2] // 11000001-10011110-00010100-00010001
373 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z0.h, z1.h }, z14.h[2]
374 // CHECK-ENCODING: [0x11,0x14,0x9e,0xc1]
375 // CHECK-ERROR: instruction requires: sme2
376 // CHECK-UNKNOWN: c19e1411 <unknown>
378 bfmlal za.s[w10, 0:1, vgx2], {z18.h, z19.h}, z4.h[2] // 11000001-10010100-01010110-01010000
379 // CHECK-INST: bfmlal za.s[w10, 0:1, vgx2], { z18.h, z19.h }, z4.h[2]
380 // CHECK-ENCODING: [0x50,0x56,0x94,0xc1]
381 // CHECK-ERROR: instruction requires: sme2
382 // CHECK-UNKNOWN: c1945650 <unknown>
384 bfmlal za.s[w10, 0:1], {z18.h - z19.h}, z4.h[2] // 11000001-10010100-01010110-01010000
385 // CHECK-INST: bfmlal za.s[w10, 0:1, vgx2], { z18.h, z19.h }, z4.h[2]
386 // CHECK-ENCODING: [0x50,0x56,0x94,0xc1]
387 // CHECK-ERROR: instruction requires: sme2
388 // CHECK-UNKNOWN: c1945650 <unknown>
390 bfmlal za.s[w8, 0:1, vgx2], {z12.h, z13.h}, z2.h[4] // 11000001-10010010-00011001-10010000
391 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx2], { z12.h, z13.h }, z2.h[4]
392 // CHECK-ENCODING: [0x90,0x19,0x92,0xc1]
393 // CHECK-ERROR: instruction requires: sme2
394 // CHECK-UNKNOWN: c1921990 <unknown>
396 bfmlal za.s[w8, 0:1], {z12.h - z13.h}, z2.h[4] // 11000001-10010010-00011001-10010000
397 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx2], { z12.h, z13.h }, z2.h[4]
398 // CHECK-ENCODING: [0x90,0x19,0x92,0xc1]
399 // CHECK-ERROR: instruction requires: sme2
400 // CHECK-UNKNOWN: c1921990 <unknown>
402 bfmlal za.s[w10, 2:3, vgx2], {z0.h, z1.h}, z10.h[4] // 11000001-10011010-01011000-00010001
403 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx2], { z0.h, z1.h }, z10.h[4]
404 // CHECK-ENCODING: [0x11,0x58,0x9a,0xc1]
405 // CHECK-ERROR: instruction requires: sme2
406 // CHECK-UNKNOWN: c19a5811 <unknown>
408 bfmlal za.s[w10, 2:3], {z0.h - z1.h}, z10.h[4] // 11000001-10011010-01011000-00010001
409 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx2], { z0.h, z1.h }, z10.h[4]
410 // CHECK-ENCODING: [0x11,0x58,0x9a,0xc1]
411 // CHECK-ERROR: instruction requires: sme2
412 // CHECK-UNKNOWN: c19a5811 <unknown>
414 bfmlal za.s[w8, 2:3, vgx2], {z22.h, z23.h}, z14.h[5] // 11000001-10011110-00011010-11010101
415 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z22.h, z23.h }, z14.h[5]
416 // CHECK-ENCODING: [0xd5,0x1a,0x9e,0xc1]
417 // CHECK-ERROR: instruction requires: sme2
418 // CHECK-UNKNOWN: c19e1ad5 <unknown>
420 bfmlal za.s[w8, 2:3], {z22.h - z23.h}, z14.h[5] // 11000001-10011110-00011010-11010101
421 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z22.h, z23.h }, z14.h[5]
422 // CHECK-ENCODING: [0xd5,0x1a,0x9e,0xc1]
423 // CHECK-ERROR: instruction requires: sme2
424 // CHECK-UNKNOWN: c19e1ad5 <unknown>
426 bfmlal za.s[w11, 4:5, vgx2], {z8.h, z9.h}, z1.h[2] // 11000001-10010001-01110101-00010010
427 // CHECK-INST: bfmlal za.s[w11, 4:5, vgx2], { z8.h, z9.h }, z1.h[2]
428 // CHECK-ENCODING: [0x12,0x75,0x91,0xc1]
429 // CHECK-ERROR: instruction requires: sme2
430 // CHECK-UNKNOWN: c1917512 <unknown>
432 bfmlal za.s[w11, 4:5], {z8.h - z9.h}, z1.h[2] // 11000001-10010001-01110101-00010010
433 // CHECK-INST: bfmlal za.s[w11, 4:5, vgx2], { z8.h, z9.h }, z1.h[2]
434 // CHECK-ENCODING: [0x12,0x75,0x91,0xc1]
435 // CHECK-ERROR: instruction requires: sme2
436 // CHECK-UNKNOWN: c1917512 <unknown>
438 bfmlal za.s[w9, 6:7, vgx2], {z12.h, z13.h}, z11.h[5] // 11000001-10011011-00111001-10010111
439 // CHECK-INST: bfmlal za.s[w9, 6:7, vgx2], { z12.h, z13.h }, z11.h[5]
440 // CHECK-ENCODING: [0x97,0x39,0x9b,0xc1]
441 // CHECK-ERROR: instruction requires: sme2
442 // CHECK-UNKNOWN: c19b3997 <unknown>
444 bfmlal za.s[w9, 6:7], {z12.h - z13.h}, z11.h[5] // 11000001-10011011-00111001-10010111
445 // CHECK-INST: bfmlal za.s[w9, 6:7, vgx2], { z12.h, z13.h }, z11.h[5]
446 // CHECK-ENCODING: [0x97,0x39,0x9b,0xc1]
447 // CHECK-ERROR: instruction requires: sme2
448 // CHECK-UNKNOWN: c19b3997 <unknown>
451 bfmlal za.s[w8, 0:1, vgx2], {z0.h, z1.h}, {z0.h, z1.h} // 11000001-10100000-00001000-00010000
452 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx2], { z0.h, z1.h }, { z0.h, z1.h }
453 // CHECK-ENCODING: [0x10,0x08,0xa0,0xc1]
454 // CHECK-ERROR: instruction requires: sme2
455 // CHECK-UNKNOWN: c1a00810 <unknown>
457 bfmlal za.s[w8, 0:1], {z0.h - z1.h}, {z0.h - z1.h} // 11000001-10100000-00001000-00010000
458 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx2], { z0.h, z1.h }, { z0.h, z1.h }
459 // CHECK-ENCODING: [0x10,0x08,0xa0,0xc1]
460 // CHECK-ERROR: instruction requires: sme2
461 // CHECK-UNKNOWN: c1a00810 <unknown>
463 bfmlal za.s[w10, 2:3, vgx2], {z10.h, z11.h}, {z20.h, z21.h} // 11000001-10110100-01001001-01010001
464 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx2], { z10.h, z11.h }, { z20.h, z21.h }
465 // CHECK-ENCODING: [0x51,0x49,0xb4,0xc1]
466 // CHECK-ERROR: instruction requires: sme2
467 // CHECK-UNKNOWN: c1b44951 <unknown>
469 bfmlal za.s[w10, 2:3], {z10.h - z11.h}, {z20.h - z21.h} // 11000001-10110100-01001001-01010001
470 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx2], { z10.h, z11.h }, { z20.h, z21.h }
471 // CHECK-ENCODING: [0x51,0x49,0xb4,0xc1]
472 // CHECK-ERROR: instruction requires: sme2
473 // CHECK-UNKNOWN: c1b44951 <unknown>
475 bfmlal za.s[w11, 6:7, vgx2], {z12.h, z13.h}, {z8.h, z9.h} // 11000001-10101000-01101001-10010011
476 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx2], { z12.h, z13.h }, { z8.h, z9.h }
477 // CHECK-ENCODING: [0x93,0x69,0xa8,0xc1]
478 // CHECK-ERROR: instruction requires: sme2
479 // CHECK-UNKNOWN: c1a86993 <unknown>
481 bfmlal za.s[w11, 6:7], {z12.h - z13.h}, {z8.h - z9.h} // 11000001-10101000-01101001-10010011
482 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx2], { z12.h, z13.h }, { z8.h, z9.h }
483 // CHECK-ENCODING: [0x93,0x69,0xa8,0xc1]
484 // CHECK-ERROR: instruction requires: sme2
485 // CHECK-UNKNOWN: c1a86993 <unknown>
487 bfmlal za.s[w11, 6:7, vgx2], {z30.h, z31.h}, {z30.h, z31.h} // 11000001-10111110-01101011-11010011
488 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx2], { z30.h, z31.h }, { z30.h, z31.h }
489 // CHECK-ENCODING: [0xd3,0x6b,0xbe,0xc1]
490 // CHECK-ERROR: instruction requires: sme2
491 // CHECK-UNKNOWN: c1be6bd3 <unknown>
493 bfmlal za.s[w11, 6:7], {z30.h - z31.h}, {z30.h - z31.h} // 11000001-10111110-01101011-11010011
494 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx2], { z30.h, z31.h }, { z30.h, z31.h }
495 // CHECK-ENCODING: [0xd3,0x6b,0xbe,0xc1]
496 // CHECK-ERROR: instruction requires: sme2
497 // CHECK-UNKNOWN: c1be6bd3 <unknown>
499 bfmlal za.s[w8, 2:3, vgx2], {z16.h, z17.h}, {z16.h, z17.h} // 11000001-10110000-00001010-00010001
500 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z16.h, z17.h }, { z16.h, z17.h }
501 // CHECK-ENCODING: [0x11,0x0a,0xb0,0xc1]
502 // CHECK-ERROR: instruction requires: sme2
503 // CHECK-UNKNOWN: c1b00a11 <unknown>
505 bfmlal za.s[w8, 2:3], {z16.h - z17.h}, {z16.h - z17.h} // 11000001-10110000-00001010-00010001
506 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z16.h, z17.h }, { z16.h, z17.h }
507 // CHECK-ENCODING: [0x11,0x0a,0xb0,0xc1]
508 // CHECK-ERROR: instruction requires: sme2
509 // CHECK-UNKNOWN: c1b00a11 <unknown>
511 bfmlal za.s[w8, 2:3, vgx2], {z0.h, z1.h}, {z30.h, z31.h} // 11000001-10111110-00001000-00010001
512 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z0.h, z1.h }, { z30.h, z31.h }
513 // CHECK-ENCODING: [0x11,0x08,0xbe,0xc1]
514 // CHECK-ERROR: instruction requires: sme2
515 // CHECK-UNKNOWN: c1be0811 <unknown>
517 bfmlal za.s[w8, 2:3], {z0.h - z1.h}, {z30.h - z31.h} // 11000001-10111110-00001000-00010001
518 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z0.h, z1.h }, { z30.h, z31.h }
519 // CHECK-ENCODING: [0x11,0x08,0xbe,0xc1]
520 // CHECK-ERROR: instruction requires: sme2
521 // CHECK-UNKNOWN: c1be0811 <unknown>
523 bfmlal za.s[w10, 0:1, vgx2], {z18.h, z19.h}, {z20.h, z21.h} // 11000001-10110100-01001010-01010000
524 // CHECK-INST: bfmlal za.s[w10, 0:1, vgx2], { z18.h, z19.h }, { z20.h, z21.h }
525 // CHECK-ENCODING: [0x50,0x4a,0xb4,0xc1]
526 // CHECK-ERROR: instruction requires: sme2
527 // CHECK-UNKNOWN: c1b44a50 <unknown>
529 bfmlal za.s[w10, 0:1], {z18.h - z19.h}, {z20.h - z21.h} // 11000001-10110100-01001010-01010000
530 // CHECK-INST: bfmlal za.s[w10, 0:1, vgx2], { z18.h, z19.h }, { z20.h, z21.h }
531 // CHECK-ENCODING: [0x50,0x4a,0xb4,0xc1]
532 // CHECK-ERROR: instruction requires: sme2
533 // CHECK-UNKNOWN: c1b44a50 <unknown>
535 bfmlal za.s[w8, 0:1, vgx2], {z12.h, z13.h}, {z2.h, z3.h} // 11000001-10100010-00001001-10010000
536 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx2], { z12.h, z13.h }, { z2.h, z3.h }
537 // CHECK-ENCODING: [0x90,0x09,0xa2,0xc1]
538 // CHECK-ERROR: instruction requires: sme2
539 // CHECK-UNKNOWN: c1a20990 <unknown>
541 bfmlal za.s[w8, 0:1], {z12.h - z13.h}, {z2.h - z3.h} // 11000001-10100010-00001001-10010000
542 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx2], { z12.h, z13.h }, { z2.h, z3.h }
543 // CHECK-ENCODING: [0x90,0x09,0xa2,0xc1]
544 // CHECK-ERROR: instruction requires: sme2
545 // CHECK-UNKNOWN: c1a20990 <unknown>
547 bfmlal za.s[w10, 2:3, vgx2], {z0.h, z1.h}, {z26.h, z27.h} // 11000001-10111010-01001000-00010001
548 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx2], { z0.h, z1.h }, { z26.h, z27.h }
549 // CHECK-ENCODING: [0x11,0x48,0xba,0xc1]
550 // CHECK-ERROR: instruction requires: sme2
551 // CHECK-UNKNOWN: c1ba4811 <unknown>
553 bfmlal za.s[w10, 2:3], {z0.h - z1.h}, {z26.h - z27.h} // 11000001-10111010-01001000-00010001
554 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx2], { z0.h, z1.h }, { z26.h, z27.h }
555 // CHECK-ENCODING: [0x11,0x48,0xba,0xc1]
556 // CHECK-ERROR: instruction requires: sme2
557 // CHECK-UNKNOWN: c1ba4811 <unknown>
559 bfmlal za.s[w8, 2:3, vgx2], {z22.h, z23.h}, {z30.h, z31.h} // 11000001-10111110-00001010-11010001
560 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z22.h, z23.h }, { z30.h, z31.h }
561 // CHECK-ENCODING: [0xd1,0x0a,0xbe,0xc1]
562 // CHECK-ERROR: instruction requires: sme2
563 // CHECK-UNKNOWN: c1be0ad1 <unknown>
565 bfmlal za.s[w8, 2:3], {z22.h - z23.h}, {z30.h - z31.h} // 11000001-10111110-00001010-11010001
566 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx2], { z22.h, z23.h }, { z30.h, z31.h }
567 // CHECK-ENCODING: [0xd1,0x0a,0xbe,0xc1]
568 // CHECK-ERROR: instruction requires: sme2
569 // CHECK-UNKNOWN: c1be0ad1 <unknown>
571 bfmlal za.s[w11, 4:5, vgx2], {z8.h, z9.h}, {z0.h, z1.h} // 11000001-10100000-01101001-00010010
572 // CHECK-INST: bfmlal za.s[w11, 4:5, vgx2], { z8.h, z9.h }, { z0.h, z1.h }
573 // CHECK-ENCODING: [0x12,0x69,0xa0,0xc1]
574 // CHECK-ERROR: instruction requires: sme2
575 // CHECK-UNKNOWN: c1a06912 <unknown>
577 bfmlal za.s[w11, 4:5], {z8.h - z9.h}, {z0.h - z1.h} // 11000001-10100000-01101001-00010010
578 // CHECK-INST: bfmlal za.s[w11, 4:5, vgx2], { z8.h, z9.h }, { z0.h, z1.h }
579 // CHECK-ENCODING: [0x12,0x69,0xa0,0xc1]
580 // CHECK-ERROR: instruction requires: sme2
581 // CHECK-UNKNOWN: c1a06912 <unknown>
583 bfmlal za.s[w9, 6:7, vgx2], {z12.h, z13.h}, {z10.h, z11.h} // 11000001-10101010-00101001-10010011
584 // CHECK-INST: bfmlal za.s[w9, 6:7, vgx2], { z12.h, z13.h }, { z10.h, z11.h }
585 // CHECK-ENCODING: [0x93,0x29,0xaa,0xc1]
586 // CHECK-ERROR: instruction requires: sme2
587 // CHECK-UNKNOWN: c1aa2993 <unknown>
589 bfmlal za.s[w9, 6:7], {z12.h - z13.h}, {z10.h - z11.h} // 11000001-10101010-00101001-10010011
590 // CHECK-INST: bfmlal za.s[w9, 6:7, vgx2], { z12.h, z13.h }, { z10.h, z11.h }
591 // CHECK-ENCODING: [0x93,0x29,0xaa,0xc1]
592 // CHECK-ERROR: instruction requires: sme2
593 // CHECK-UNKNOWN: c1aa2993 <unknown>
596 bfmlal za.s[w8, 0:1, vgx4], {z0.h - z3.h}, z0.h // 11000001-00110000-00001000-00010000
597 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx4], { z0.h - z3.h }, z0.h
598 // CHECK-ENCODING: [0x10,0x08,0x30,0xc1]
599 // CHECK-ERROR: instruction requires: sme2
600 // CHECK-UNKNOWN: c1300810 <unknown>
602 bfmlal za.s[w8, 0:1], {z0.h - z3.h}, z0.h // 11000001-00110000-00001000-00010000
603 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx4], { z0.h - z3.h }, z0.h
604 // CHECK-ENCODING: [0x10,0x08,0x30,0xc1]
605 // CHECK-ERROR: instruction requires: sme2
606 // CHECK-UNKNOWN: c1300810 <unknown>
608 bfmlal za.s[w10, 2:3, vgx4], {z10.h - z13.h}, z5.h // 11000001-00110101-01001001-01010001
609 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx4], { z10.h - z13.h }, z5.h
610 // CHECK-ENCODING: [0x51,0x49,0x35,0xc1]
611 // CHECK-ERROR: instruction requires: sme2
612 // CHECK-UNKNOWN: c1354951 <unknown>
614 bfmlal za.s[w10, 2:3], {z10.h - z13.h}, z5.h // 11000001-00110101-01001001-01010001
615 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx4], { z10.h - z13.h }, z5.h
616 // CHECK-ENCODING: [0x51,0x49,0x35,0xc1]
617 // CHECK-ERROR: instruction requires: sme2
618 // CHECK-UNKNOWN: c1354951 <unknown>
620 bfmlal za.s[w11, 6:7, vgx4], {z13.h - z16.h}, z8.h // 11000001-00111000-01101001-10110011
621 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx4], { z13.h - z16.h }, z8.h
622 // CHECK-ENCODING: [0xb3,0x69,0x38,0xc1]
623 // CHECK-ERROR: instruction requires: sme2
624 // CHECK-UNKNOWN: c13869b3 <unknown>
626 bfmlal za.s[w11, 6:7], {z13.h - z16.h}, z8.h // 11000001-00111000-01101001-10110011
627 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx4], { z13.h - z16.h }, z8.h
628 // CHECK-ENCODING: [0xb3,0x69,0x38,0xc1]
629 // CHECK-ERROR: instruction requires: sme2
630 // CHECK-UNKNOWN: c13869b3 <unknown>
632 bfmlal za.s[w11, 6:7, vgx4], {z31.h - z2.h}, z15.h // 11000001-00111111-01101011-11110011
633 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx4], { z31.h, z0.h, z1.h, z2.h }, z15.h
634 // CHECK-ENCODING: [0xf3,0x6b,0x3f,0xc1]
635 // CHECK-ERROR: instruction requires: sme2
636 // CHECK-UNKNOWN: c13f6bf3 <unknown>
638 bfmlal za.s[w11, 6:7], {z31.h - z2.h}, z15.h // 11000001-00111111-01101011-11110011
639 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx4], { z31.h, z0.h, z1.h, z2.h }, z15.h
640 // CHECK-ENCODING: [0xf3,0x6b,0x3f,0xc1]
641 // CHECK-ERROR: instruction requires: sme2
642 // CHECK-UNKNOWN: c13f6bf3 <unknown>
644 bfmlal za.s[w8, 2:3, vgx4], {z17.h - z20.h}, z0.h // 11000001-00110000-00001010-00110001
645 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z17.h - z20.h }, z0.h
646 // CHECK-ENCODING: [0x31,0x0a,0x30,0xc1]
647 // CHECK-ERROR: instruction requires: sme2
648 // CHECK-UNKNOWN: c1300a31 <unknown>
650 bfmlal za.s[w8, 2:3], {z17.h - z20.h}, z0.h // 11000001-00110000-00001010-00110001
651 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z17.h - z20.h }, z0.h
652 // CHECK-ENCODING: [0x31,0x0a,0x30,0xc1]
653 // CHECK-ERROR: instruction requires: sme2
654 // CHECK-UNKNOWN: c1300a31 <unknown>
656 bfmlal za.s[w8, 2:3, vgx4], {z1.h - z4.h}, z14.h // 11000001-00111110-00001000-00110001
657 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z1.h - z4.h }, z14.h
658 // CHECK-ENCODING: [0x31,0x08,0x3e,0xc1]
659 // CHECK-ERROR: instruction requires: sme2
660 // CHECK-UNKNOWN: c13e0831 <unknown>
662 bfmlal za.s[w8, 2:3], {z1.h - z4.h}, z14.h // 11000001-00111110-00001000-00110001
663 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z1.h - z4.h }, z14.h
664 // CHECK-ENCODING: [0x31,0x08,0x3e,0xc1]
665 // CHECK-ERROR: instruction requires: sme2
666 // CHECK-UNKNOWN: c13e0831 <unknown>
668 bfmlal za.s[w10, 0:1, vgx4], {z19.h - z22.h}, z4.h // 11000001-00110100-01001010-01110000
669 // CHECK-INST: bfmlal za.s[w10, 0:1, vgx4], { z19.h - z22.h }, z4.h
670 // CHECK-ENCODING: [0x70,0x4a,0x34,0xc1]
671 // CHECK-ERROR: instruction requires: sme2
672 // CHECK-UNKNOWN: c1344a70 <unknown>
674 bfmlal za.s[w10, 0:1], {z19.h - z22.h}, z4.h // 11000001-00110100-01001010-01110000
675 // CHECK-INST: bfmlal za.s[w10, 0:1, vgx4], { z19.h - z22.h }, z4.h
676 // CHECK-ENCODING: [0x70,0x4a,0x34,0xc1]
677 // CHECK-ERROR: instruction requires: sme2
678 // CHECK-UNKNOWN: c1344a70 <unknown>
680 bfmlal za.s[w8, 0:1, vgx4], {z12.h - z15.h}, z2.h // 11000001-00110010-00001001-10010000
681 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx4], { z12.h - z15.h }, z2.h
682 // CHECK-ENCODING: [0x90,0x09,0x32,0xc1]
683 // CHECK-ERROR: instruction requires: sme2
684 // CHECK-UNKNOWN: c1320990 <unknown>
686 bfmlal za.s[w8, 0:1], {z12.h - z15.h}, z2.h // 11000001-00110010-00001001-10010000
687 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx4], { z12.h - z15.h }, z2.h
688 // CHECK-ENCODING: [0x90,0x09,0x32,0xc1]
689 // CHECK-ERROR: instruction requires: sme2
690 // CHECK-UNKNOWN: c1320990 <unknown>
692 bfmlal za.s[w10, 2:3, vgx4], {z1.h - z4.h}, z10.h // 11000001-00111010-01001000-00110001
693 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx4], { z1.h - z4.h }, z10.h
694 // CHECK-ENCODING: [0x31,0x48,0x3a,0xc1]
695 // CHECK-ERROR: instruction requires: sme2
696 // CHECK-UNKNOWN: c13a4831 <unknown>
698 bfmlal za.s[w10, 2:3], {z1.h - z4.h}, z10.h // 11000001-00111010-01001000-00110001
699 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx4], { z1.h - z4.h }, z10.h
700 // CHECK-ENCODING: [0x31,0x48,0x3a,0xc1]
701 // CHECK-ERROR: instruction requires: sme2
702 // CHECK-UNKNOWN: c13a4831 <unknown>
704 bfmlal za.s[w8, 2:3, vgx4], {z22.h - z25.h}, z14.h // 11000001-00111110-00001010-11010001
705 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z22.h - z25.h }, z14.h
706 // CHECK-ENCODING: [0xd1,0x0a,0x3e,0xc1]
707 // CHECK-ERROR: instruction requires: sme2
708 // CHECK-UNKNOWN: c13e0ad1 <unknown>
710 bfmlal za.s[w8, 2:3], {z22.h - z25.h}, z14.h // 11000001-00111110-00001010-11010001
711 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z22.h - z25.h }, z14.h
712 // CHECK-ENCODING: [0xd1,0x0a,0x3e,0xc1]
713 // CHECK-ERROR: instruction requires: sme2
714 // CHECK-UNKNOWN: c13e0ad1 <unknown>
716 bfmlal za.s[w11, 4:5, vgx4], {z9.h - z12.h}, z1.h // 11000001-00110001-01101001-00110010
717 // CHECK-INST: bfmlal za.s[w11, 4:5, vgx4], { z9.h - z12.h }, z1.h
718 // CHECK-ENCODING: [0x32,0x69,0x31,0xc1]
719 // CHECK-ERROR: instruction requires: sme2
720 // CHECK-UNKNOWN: c1316932 <unknown>
722 bfmlal za.s[w11, 4:5], {z9.h - z12.h}, z1.h // 11000001-00110001-01101001-00110010
723 // CHECK-INST: bfmlal za.s[w11, 4:5, vgx4], { z9.h - z12.h }, z1.h
724 // CHECK-ENCODING: [0x32,0x69,0x31,0xc1]
725 // CHECK-ERROR: instruction requires: sme2
726 // CHECK-UNKNOWN: c1316932 <unknown>
728 bfmlal za.s[w9, 6:7, vgx4], {z12.h - z15.h}, z11.h // 11000001-00111011-00101001-10010011
729 // CHECK-INST: bfmlal za.s[w9, 6:7, vgx4], { z12.h - z15.h }, z11.h
730 // CHECK-ENCODING: [0x93,0x29,0x3b,0xc1]
731 // CHECK-ERROR: instruction requires: sme2
732 // CHECK-UNKNOWN: c13b2993 <unknown>
734 bfmlal za.s[w9, 6:7], {z12.h - z15.h}, z11.h // 11000001-00111011-00101001-10010011
735 // CHECK-INST: bfmlal za.s[w9, 6:7, vgx4], { z12.h - z15.h }, z11.h
736 // CHECK-ENCODING: [0x93,0x29,0x3b,0xc1]
737 // CHECK-ERROR: instruction requires: sme2
738 // CHECK-UNKNOWN: c13b2993 <unknown>
741 bfmlal za.s[w8, 0:1, vgx4], {z0.h - z3.h}, z0.h[0] // 11000001-10010000-10010000-00010000
742 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx4], { z0.h - z3.h }, z0.h[0]
743 // CHECK-ENCODING: [0x10,0x90,0x90,0xc1]
744 // CHECK-ERROR: instruction requires: sme2
745 // CHECK-UNKNOWN: c1909010 <unknown>
747 bfmlal za.s[w8, 0:1], {z0.h - z3.h}, z0.h[0] // 11000001-10010000-10010000-00010000
748 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx4], { z0.h - z3.h }, z0.h[0]
749 // CHECK-ENCODING: [0x10,0x90,0x90,0xc1]
750 // CHECK-ERROR: instruction requires: sme2
751 // CHECK-UNKNOWN: c1909010 <unknown>
753 bfmlal za.s[w10, 2:3, vgx4], {z8.h - z11.h}, z5.h[3] // 11000001-10010101-11010101-00010101
754 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx4], { z8.h - z11.h }, z5.h[3]
755 // CHECK-ENCODING: [0x15,0xd5,0x95,0xc1]
756 // CHECK-ERROR: instruction requires: sme2
757 // CHECK-UNKNOWN: c195d515 <unknown>
759 bfmlal za.s[w10, 2:3], {z8.h - z11.h}, z5.h[3] // 11000001-10010101-11010101-00010101
760 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx4], { z8.h - z11.h }, z5.h[3]
761 // CHECK-ENCODING: [0x15,0xd5,0x95,0xc1]
762 // CHECK-ERROR: instruction requires: sme2
763 // CHECK-UNKNOWN: c195d515 <unknown>
765 bfmlal za.s[w11, 6:7, vgx4], {z12.h - z15.h}, z8.h[7] // 11000001-10011000-11111101-10010111
766 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx4], { z12.h - z15.h }, z8.h[7]
767 // CHECK-ENCODING: [0x97,0xfd,0x98,0xc1]
768 // CHECK-ERROR: instruction requires: sme2
769 // CHECK-UNKNOWN: c198fd97 <unknown>
771 bfmlal za.s[w11, 6:7], {z12.h - z15.h}, z8.h[7] // 11000001-10011000-11111101-10010111
772 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx4], { z12.h - z15.h }, z8.h[7]
773 // CHECK-ENCODING: [0x97,0xfd,0x98,0xc1]
774 // CHECK-ERROR: instruction requires: sme2
775 // CHECK-UNKNOWN: c198fd97 <unknown>
777 bfmlal za.s[w11, 6:7, vgx4], {z28.h - z31.h}, z15.h[7] // 11000001-10011111-11111111-10010111
778 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx4], { z28.h - z31.h }, z15.h[7]
779 // CHECK-ENCODING: [0x97,0xff,0x9f,0xc1]
780 // CHECK-ERROR: instruction requires: sme2
781 // CHECK-UNKNOWN: c19fff97 <unknown>
783 bfmlal za.s[w11, 6:7], {z28.h - z31.h}, z15.h[7] // 11000001-10011111-11111111-10010111
784 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx4], { z28.h - z31.h }, z15.h[7]
785 // CHECK-ENCODING: [0x97,0xff,0x9f,0xc1]
786 // CHECK-ERROR: instruction requires: sme2
787 // CHECK-UNKNOWN: c19fff97 <unknown>
789 bfmlal za.s[w8, 2:3, vgx4], {z16.h - z19.h}, z0.h[7] // 11000001-10010000-10011110-00010101
790 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z16.h - z19.h }, z0.h[7]
791 // CHECK-ENCODING: [0x15,0x9e,0x90,0xc1]
792 // CHECK-ERROR: instruction requires: sme2
793 // CHECK-UNKNOWN: c1909e15 <unknown>
795 bfmlal za.s[w8, 2:3], {z16.h - z19.h}, z0.h[7] // 11000001-10010000-10011110-00010101
796 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z16.h - z19.h }, z0.h[7]
797 // CHECK-ENCODING: [0x15,0x9e,0x90,0xc1]
798 // CHECK-ERROR: instruction requires: sme2
799 // CHECK-UNKNOWN: c1909e15 <unknown>
801 bfmlal za.s[w8, 2:3, vgx4], {z0.h - z3.h}, z14.h[2] // 11000001-10011110-10010100-00010001
802 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z0.h - z3.h }, z14.h[2]
803 // CHECK-ENCODING: [0x11,0x94,0x9e,0xc1]
804 // CHECK-ERROR: instruction requires: sme2
805 // CHECK-UNKNOWN: c19e9411 <unknown>
807 bfmlal za.s[w8, 2:3], {z0.h - z3.h}, z14.h[2] // 11000001-10011110-10010100-00010001
808 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z0.h - z3.h }, z14.h[2]
809 // CHECK-ENCODING: [0x11,0x94,0x9e,0xc1]
810 // CHECK-ERROR: instruction requires: sme2
811 // CHECK-UNKNOWN: c19e9411 <unknown>
813 bfmlal za.s[w10, 0:1, vgx4], {z16.h - z19.h}, z4.h[2] // 11000001-10010100-11010110-00010000
814 // CHECK-INST: bfmlal za.s[w10, 0:1, vgx4], { z16.h - z19.h }, z4.h[2]
815 // CHECK-ENCODING: [0x10,0xd6,0x94,0xc1]
816 // CHECK-ERROR: instruction requires: sme2
817 // CHECK-UNKNOWN: c194d610 <unknown>
819 bfmlal za.s[w10, 0:1], {z16.h - z19.h}, z4.h[2] // 11000001-10010100-11010110-00010000
820 // CHECK-INST: bfmlal za.s[w10, 0:1, vgx4], { z16.h - z19.h }, z4.h[2]
821 // CHECK-ENCODING: [0x10,0xd6,0x94,0xc1]
822 // CHECK-ERROR: instruction requires: sme2
823 // CHECK-UNKNOWN: c194d610 <unknown>
825 bfmlal za.s[w8, 0:1, vgx4], {z12.h - z15.h}, z2.h[4] // 11000001-10010010-10011001-10010000
826 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx4], { z12.h - z15.h }, z2.h[4]
827 // CHECK-ENCODING: [0x90,0x99,0x92,0xc1]
828 // CHECK-ERROR: instruction requires: sme2
829 // CHECK-UNKNOWN: c1929990 <unknown>
831 bfmlal za.s[w8, 0:1], {z12.h - z15.h}, z2.h[4] // 11000001-10010010-10011001-10010000
832 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx4], { z12.h - z15.h }, z2.h[4]
833 // CHECK-ENCODING: [0x90,0x99,0x92,0xc1]
834 // CHECK-ERROR: instruction requires: sme2
835 // CHECK-UNKNOWN: c1929990 <unknown>
837 bfmlal za.s[w10, 2:3, vgx4], {z0.h - z3.h}, z10.h[4] // 11000001-10011010-11011000-00010001
838 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx4], { z0.h - z3.h }, z10.h[4]
839 // CHECK-ENCODING: [0x11,0xd8,0x9a,0xc1]
840 // CHECK-ERROR: instruction requires: sme2
841 // CHECK-UNKNOWN: c19ad811 <unknown>
843 bfmlal za.s[w10, 2:3], {z0.h - z3.h}, z10.h[4] // 11000001-10011010-11011000-00010001
844 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx4], { z0.h - z3.h }, z10.h[4]
845 // CHECK-ENCODING: [0x11,0xd8,0x9a,0xc1]
846 // CHECK-ERROR: instruction requires: sme2
847 // CHECK-UNKNOWN: c19ad811 <unknown>
849 bfmlal za.s[w8, 2:3, vgx4], {z20.h - z23.h}, z14.h[5] // 11000001-10011110-10011010-10010101
850 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z20.h - z23.h }, z14.h[5]
851 // CHECK-ENCODING: [0x95,0x9a,0x9e,0xc1]
852 // CHECK-ERROR: instruction requires: sme2
853 // CHECK-UNKNOWN: c19e9a95 <unknown>
855 bfmlal za.s[w8, 2:3], {z20.h - z23.h}, z14.h[5] // 11000001-10011110-10011010-10010101
856 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z20.h - z23.h }, z14.h[5]
857 // CHECK-ENCODING: [0x95,0x9a,0x9e,0xc1]
858 // CHECK-ERROR: instruction requires: sme2
859 // CHECK-UNKNOWN: c19e9a95 <unknown>
861 bfmlal za.s[w11, 4:5, vgx4], {z8.h - z11.h}, z1.h[2] // 11000001-10010001-11110101-00010010
862 // CHECK-INST: bfmlal za.s[w11, 4:5, vgx4], { z8.h - z11.h }, z1.h[2]
863 // CHECK-ENCODING: [0x12,0xf5,0x91,0xc1]
864 // CHECK-ERROR: instruction requires: sme2
865 // CHECK-UNKNOWN: c191f512 <unknown>
867 bfmlal za.s[w11, 4:5], {z8.h - z11.h}, z1.h[2] // 11000001-10010001-11110101-00010010
868 // CHECK-INST: bfmlal za.s[w11, 4:5, vgx4], { z8.h - z11.h }, z1.h[2]
869 // CHECK-ENCODING: [0x12,0xf5,0x91,0xc1]
870 // CHECK-ERROR: instruction requires: sme2
871 // CHECK-UNKNOWN: c191f512 <unknown>
873 bfmlal za.s[w9, 6:7, vgx4], {z12.h - z15.h}, z11.h[5] // 11000001-10011011-10111001-10010111
874 // CHECK-INST: bfmlal za.s[w9, 6:7, vgx4], { z12.h - z15.h }, z11.h[5]
875 // CHECK-ENCODING: [0x97,0xb9,0x9b,0xc1]
876 // CHECK-ERROR: instruction requires: sme2
877 // CHECK-UNKNOWN: c19bb997 <unknown>
879 bfmlal za.s[w9, 6:7], {z12.h - z15.h}, z11.h[5] // 11000001-10011011-10111001-10010111
880 // CHECK-INST: bfmlal za.s[w9, 6:7, vgx4], { z12.h - z15.h }, z11.h[5]
881 // CHECK-ENCODING: [0x97,0xb9,0x9b,0xc1]
882 // CHECK-ERROR: instruction requires: sme2
883 // CHECK-UNKNOWN: c19bb997 <unknown>
886 bfmlal za.s[w8, 0:1, vgx4], {z0.h - z3.h}, {z0.h - z3.h} // 11000001-10100001-00001000-00010000
887 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx4], { z0.h - z3.h }, { z0.h - z3.h }
888 // CHECK-ENCODING: [0x10,0x08,0xa1,0xc1]
889 // CHECK-ERROR: instruction requires: sme2
890 // CHECK-UNKNOWN: c1a10810 <unknown>
892 bfmlal za.s[w8, 0:1], {z0.h - z3.h}, {z0.h - z3.h} // 11000001-10100001-00001000-00010000
893 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx4], { z0.h - z3.h }, { z0.h - z3.h }
894 // CHECK-ENCODING: [0x10,0x08,0xa1,0xc1]
895 // CHECK-ERROR: instruction requires: sme2
896 // CHECK-UNKNOWN: c1a10810 <unknown>
898 bfmlal za.s[w10, 2:3, vgx4], {z8.h - z11.h}, {z20.h - z23.h} // 11000001-10110101-01001001-00010001
899 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx4], { z8.h - z11.h }, { z20.h - z23.h }
900 // CHECK-ENCODING: [0x11,0x49,0xb5,0xc1]
901 // CHECK-ERROR: instruction requires: sme2
902 // CHECK-UNKNOWN: c1b54911 <unknown>
904 bfmlal za.s[w10, 2:3], {z8.h - z11.h}, {z20.h - z23.h} // 11000001-10110101-01001001-00010001
905 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx4], { z8.h - z11.h }, { z20.h - z23.h }
906 // CHECK-ENCODING: [0x11,0x49,0xb5,0xc1]
907 // CHECK-ERROR: instruction requires: sme2
908 // CHECK-UNKNOWN: c1b54911 <unknown>
910 bfmlal za.s[w11, 6:7, vgx4], {z12.h - z15.h}, {z8.h - z11.h} // 11000001-10101001-01101001-10010011
911 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx4], { z12.h - z15.h }, { z8.h - z11.h }
912 // CHECK-ENCODING: [0x93,0x69,0xa9,0xc1]
913 // CHECK-ERROR: instruction requires: sme2
914 // CHECK-UNKNOWN: c1a96993 <unknown>
916 bfmlal za.s[w11, 6:7], {z12.h - z15.h}, {z8.h - z11.h} // 11000001-10101001-01101001-10010011
917 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx4], { z12.h - z15.h }, { z8.h - z11.h }
918 // CHECK-ENCODING: [0x93,0x69,0xa9,0xc1]
919 // CHECK-ERROR: instruction requires: sme2
920 // CHECK-UNKNOWN: c1a96993 <unknown>
922 bfmlal za.s[w11, 6:7, vgx4], {z28.h - z31.h}, {z28.h - z31.h} // 11000001-10111101-01101011-10010011
923 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx4], { z28.h - z31.h }, { z28.h - z31.h }
924 // CHECK-ENCODING: [0x93,0x6b,0xbd,0xc1]
925 // CHECK-ERROR: instruction requires: sme2
926 // CHECK-UNKNOWN: c1bd6b93 <unknown>
928 bfmlal za.s[w11, 6:7], {z28.h - z31.h}, {z28.h - z31.h} // 11000001-10111101-01101011-10010011
929 // CHECK-INST: bfmlal za.s[w11, 6:7, vgx4], { z28.h - z31.h }, { z28.h - z31.h }
930 // CHECK-ENCODING: [0x93,0x6b,0xbd,0xc1]
931 // CHECK-ERROR: instruction requires: sme2
932 // CHECK-UNKNOWN: c1bd6b93 <unknown>
934 bfmlal za.s[w8, 2:3, vgx4], {z16.h - z19.h}, {z16.h - z19.h} // 11000001-10110001-00001010-00010001
935 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z16.h - z19.h }, { z16.h - z19.h }
936 // CHECK-ENCODING: [0x11,0x0a,0xb1,0xc1]
937 // CHECK-ERROR: instruction requires: sme2
938 // CHECK-UNKNOWN: c1b10a11 <unknown>
940 bfmlal za.s[w8, 2:3], {z16.h - z19.h}, {z16.h - z19.h} // 11000001-10110001-00001010-00010001
941 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z16.h - z19.h }, { z16.h - z19.h }
942 // CHECK-ENCODING: [0x11,0x0a,0xb1,0xc1]
943 // CHECK-ERROR: instruction requires: sme2
944 // CHECK-UNKNOWN: c1b10a11 <unknown>
946 bfmlal za.s[w8, 2:3, vgx4], {z0.h - z3.h}, {z28.h - z31.h} // 11000001-10111101-00001000-00010001
947 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z0.h - z3.h }, { z28.h - z31.h }
948 // CHECK-ENCODING: [0x11,0x08,0xbd,0xc1]
949 // CHECK-ERROR: instruction requires: sme2
950 // CHECK-UNKNOWN: c1bd0811 <unknown>
952 bfmlal za.s[w8, 2:3], {z0.h - z3.h}, {z28.h - z31.h} // 11000001-10111101-00001000-00010001
953 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z0.h - z3.h }, { z28.h - z31.h }
954 // CHECK-ENCODING: [0x11,0x08,0xbd,0xc1]
955 // CHECK-ERROR: instruction requires: sme2
956 // CHECK-UNKNOWN: c1bd0811 <unknown>
958 bfmlal za.s[w10, 0:1, vgx4], {z16.h - z19.h}, {z20.h - z23.h} // 11000001-10110101-01001010-00010000
959 // CHECK-INST: bfmlal za.s[w10, 0:1, vgx4], { z16.h - z19.h }, { z20.h - z23.h }
960 // CHECK-ENCODING: [0x10,0x4a,0xb5,0xc1]
961 // CHECK-ERROR: instruction requires: sme2
962 // CHECK-UNKNOWN: c1b54a10 <unknown>
964 bfmlal za.s[w10, 0:1], {z16.h - z19.h}, {z20.h - z23.h} // 11000001-10110101-01001010-00010000
965 // CHECK-INST: bfmlal za.s[w10, 0:1, vgx4], { z16.h - z19.h }, { z20.h - z23.h }
966 // CHECK-ENCODING: [0x10,0x4a,0xb5,0xc1]
967 // CHECK-ERROR: instruction requires: sme2
968 // CHECK-UNKNOWN: c1b54a10 <unknown>
970 bfmlal za.s[w8, 0:1, vgx4], {z12.h - z15.h}, {z0.h - z3.h} // 11000001-10100001-00001001-10010000
971 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx4], { z12.h - z15.h }, { z0.h - z3.h }
972 // CHECK-ENCODING: [0x90,0x09,0xa1,0xc1]
973 // CHECK-ERROR: instruction requires: sme2
974 // CHECK-UNKNOWN: c1a10990 <unknown>
976 bfmlal za.s[w8, 0:1], {z12.h - z15.h}, {z0.h - z3.h} // 11000001-10100001-00001001-10010000
977 // CHECK-INST: bfmlal za.s[w8, 0:1, vgx4], { z12.h - z15.h }, { z0.h - z3.h }
978 // CHECK-ENCODING: [0x90,0x09,0xa1,0xc1]
979 // CHECK-ERROR: instruction requires: sme2
980 // CHECK-UNKNOWN: c1a10990 <unknown>
982 bfmlal za.s[w10, 2:3, vgx4], {z0.h - z3.h}, {z24.h - z27.h} // 11000001-10111001-01001000-00010001
983 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx4], { z0.h - z3.h }, { z24.h - z27.h }
984 // CHECK-ENCODING: [0x11,0x48,0xb9,0xc1]
985 // CHECK-ERROR: instruction requires: sme2
986 // CHECK-UNKNOWN: c1b94811 <unknown>
988 bfmlal za.s[w10, 2:3], {z0.h - z3.h}, {z24.h - z27.h} // 11000001-10111001-01001000-00010001
989 // CHECK-INST: bfmlal za.s[w10, 2:3, vgx4], { z0.h - z3.h }, { z24.h - z27.h }
990 // CHECK-ENCODING: [0x11,0x48,0xb9,0xc1]
991 // CHECK-ERROR: instruction requires: sme2
992 // CHECK-UNKNOWN: c1b94811 <unknown>
994 bfmlal za.s[w8, 2:3, vgx4], {z20.h - z23.h}, {z28.h - z31.h} // 11000001-10111101-00001010-10010001
995 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z20.h - z23.h }, { z28.h - z31.h }
996 // CHECK-ENCODING: [0x91,0x0a,0xbd,0xc1]
997 // CHECK-ERROR: instruction requires: sme2
998 // CHECK-UNKNOWN: c1bd0a91 <unknown>
1000 bfmlal za.s[w8, 2:3], {z20.h - z23.h}, {z28.h - z31.h} // 11000001-10111101-00001010-10010001
1001 // CHECK-INST: bfmlal za.s[w8, 2:3, vgx4], { z20.h - z23.h }, { z28.h - z31.h }
1002 // CHECK-ENCODING: [0x91,0x0a,0xbd,0xc1]
1003 // CHECK-ERROR: instruction requires: sme2
1004 // CHECK-UNKNOWN: c1bd0a91 <unknown>
1006 bfmlal za.s[w11, 4:5, vgx4], {z8.h - z11.h}, {z0.h - z3.h} // 11000001-10100001-01101001-00010010
1007 // CHECK-INST: bfmlal za.s[w11, 4:5, vgx4], { z8.h - z11.h }, { z0.h - z3.h }
1008 // CHECK-ENCODING: [0x12,0x69,0xa1,0xc1]
1009 // CHECK-ERROR: instruction requires: sme2
1010 // CHECK-UNKNOWN: c1a16912 <unknown>
1012 bfmlal za.s[w11, 4:5], {z8.h - z11.h}, {z0.h - z3.h} // 11000001-10100001-01101001-00010010
1013 // CHECK-INST: bfmlal za.s[w11, 4:5, vgx4], { z8.h - z11.h }, { z0.h - z3.h }
1014 // CHECK-ENCODING: [0x12,0x69,0xa1,0xc1]
1015 // CHECK-ERROR: instruction requires: sme2
1016 // CHECK-UNKNOWN: c1a16912 <unknown>
1018 bfmlal za.s[w9, 6:7, vgx4], {z12.h - z15.h}, {z8.h - z11.h} // 11000001-10101001-00101001-10010011
1019 // CHECK-INST: bfmlal za.s[w9, 6:7, vgx4], { z12.h - z15.h }, { z8.h - z11.h }
1020 // CHECK-ENCODING: [0x93,0x29,0xa9,0xc1]
1021 // CHECK-ERROR: instruction requires: sme2
1022 // CHECK-UNKNOWN: c1a92993 <unknown>
1024 bfmlal za.s[w9, 6:7], {z12.h - z15.h}, {z8.h - z11.h} // 11000001-10101001-00101001-10010011
1025 // CHECK-INST: bfmlal za.s[w9, 6:7, vgx4], { z12.h - z15.h }, { z8.h - z11.h }
1026 // CHECK-ENCODING: [0x93,0x29,0xa9,0xc1]
1027 // CHECK-ERROR: instruction requires: sme2
1028 // CHECK-UNKNOWN: c1a92993 <unknown>