Make test more lenient for custom clang version strings
[llvm-project.git] / llvm / test / MC / AArch64 / SME2 / sub.s
blob791c06c53b038c5275d2511e4de062f1f3eff11d
1 // RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme2,+sme-i16i64 < %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,+sme-i16i64 < %s \
6 // RUN: | llvm-objdump -d --mattr=+sme2,+sme-i16i64 - | FileCheck %s --check-prefix=CHECK-INST
7 // RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+sme2,+sme-i16i64 < %s \
8 // RUN: | llvm-objdump -d --mattr=-sme2 - | FileCheck %s --check-prefix=CHECK-UNKNOWN
9 // RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+sme2,+sme-i16i64 < %s \
10 // RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \
11 // RUN: | llvm-mc -triple=aarch64 -mattr=+sme2,+sme-i16i64 -disassemble -show-encoding \
12 // RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST
15 sub za.s[w8, 0, vgx2], {z0.s, z1.s} // 11000001-10100000-00011100-00011000
16 // CHECK-INST: sub za.s[w8, 0, vgx2], { z0.s, z1.s }
17 // CHECK-ENCODING: [0x18,0x1c,0xa0,0xc1]
18 // CHECK-ERROR: instruction requires: sme2
19 // CHECK-UNKNOWN: c1a01c18 <unknown>
21 sub za.s[w8, 0], {z0.s, z1.s} // 11000001-10100000-00011100-00011000
22 // CHECK-INST: sub za.s[w8, 0, vgx2], { z0.s, z1.s }
23 // CHECK-ENCODING: [0x18,0x1c,0xa0,0xc1]
24 // CHECK-ERROR: instruction requires: sme2
25 // CHECK-UNKNOWN: c1a01c18 <unknown>
27 sub za.s[w10, 5, vgx2], {z10.s, z11.s} // 11000001-10100000-01011101-01011101
28 // CHECK-INST: sub za.s[w10, 5, vgx2], { z10.s, z11.s }
29 // CHECK-ENCODING: [0x5d,0x5d,0xa0,0xc1]
30 // CHECK-ERROR: instruction requires: sme2
31 // CHECK-UNKNOWN: c1a05d5d <unknown>
33 sub za.s[w10, 5], {z10.s, z11.s} // 11000001-10100000-01011101-01011101
34 // CHECK-INST: sub za.s[w10, 5, vgx2], { z10.s, z11.s }
35 // CHECK-ENCODING: [0x5d,0x5d,0xa0,0xc1]
36 // CHECK-ERROR: instruction requires: sme2
37 // CHECK-UNKNOWN: c1a05d5d <unknown>
39 sub za.s[w11, 7, vgx2], {z12.s, z13.s} // 11000001-10100000-01111101-10011111
40 // CHECK-INST: sub za.s[w11, 7, vgx2], { z12.s, z13.s }
41 // CHECK-ENCODING: [0x9f,0x7d,0xa0,0xc1]
42 // CHECK-ERROR: instruction requires: sme2
43 // CHECK-UNKNOWN: c1a07d9f <unknown>
45 sub za.s[w11, 7], {z12.s, z13.s} // 11000001-10100000-01111101-10011111
46 // CHECK-INST: sub za.s[w11, 7, vgx2], { z12.s, z13.s }
47 // CHECK-ENCODING: [0x9f,0x7d,0xa0,0xc1]
48 // CHECK-ERROR: instruction requires: sme2
49 // CHECK-UNKNOWN: c1a07d9f <unknown>
51 sub za.s[w11, 7, vgx2], {z30.s, z31.s} // 11000001-10100000-01111111-11011111
52 // CHECK-INST: sub za.s[w11, 7, vgx2], { z30.s, z31.s }
53 // CHECK-ENCODING: [0xdf,0x7f,0xa0,0xc1]
54 // CHECK-ERROR: instruction requires: sme2
55 // CHECK-UNKNOWN: c1a07fdf <unknown>
57 sub za.s[w11, 7], {z30.s, z31.s} // 11000001-10100000-01111111-11011111
58 // CHECK-INST: sub za.s[w11, 7, vgx2], { z30.s, z31.s }
59 // CHECK-ENCODING: [0xdf,0x7f,0xa0,0xc1]
60 // CHECK-ERROR: instruction requires: sme2
61 // CHECK-UNKNOWN: c1a07fdf <unknown>
63 sub za.s[w8, 5, vgx2], {z16.s, z17.s} // 11000001-10100000-00011110-00011101
64 // CHECK-INST: sub za.s[w8, 5, vgx2], { z16.s, z17.s }
65 // CHECK-ENCODING: [0x1d,0x1e,0xa0,0xc1]
66 // CHECK-ERROR: instruction requires: sme2
67 // CHECK-UNKNOWN: c1a01e1d <unknown>
69 sub za.s[w8, 5], {z16.s, z17.s} // 11000001-10100000-00011110-00011101
70 // CHECK-INST: sub za.s[w8, 5, vgx2], { z16.s, z17.s }
71 // CHECK-ENCODING: [0x1d,0x1e,0xa0,0xc1]
72 // CHECK-ERROR: instruction requires: sme2
73 // CHECK-UNKNOWN: c1a01e1d <unknown>
75 sub za.s[w8, 1, vgx2], {z0.s, z1.s} // 11000001-10100000-00011100-00011001
76 // CHECK-INST: sub za.s[w8, 1, vgx2], { z0.s, z1.s }
77 // CHECK-ENCODING: [0x19,0x1c,0xa0,0xc1]
78 // CHECK-ERROR: instruction requires: sme2
79 // CHECK-UNKNOWN: c1a01c19 <unknown>
81 sub za.s[w8, 1], {z0.s, z1.s} // 11000001-10100000-00011100-00011001
82 // CHECK-INST: sub za.s[w8, 1, vgx2], { z0.s, z1.s }
83 // CHECK-ENCODING: [0x19,0x1c,0xa0,0xc1]
84 // CHECK-ERROR: instruction requires: sme2
85 // CHECK-UNKNOWN: c1a01c19 <unknown>
87 sub za.s[w10, 0, vgx2], {z18.s, z19.s} // 11000001-10100000-01011110-01011000
88 // CHECK-INST: sub za.s[w10, 0, vgx2], { z18.s, z19.s }
89 // CHECK-ENCODING: [0x58,0x5e,0xa0,0xc1]
90 // CHECK-ERROR: instruction requires: sme2
91 // CHECK-UNKNOWN: c1a05e58 <unknown>
93 sub za.s[w10, 0], {z18.s, z19.s} // 11000001-10100000-01011110-01011000
94 // CHECK-INST: sub za.s[w10, 0, vgx2], { z18.s, z19.s }
95 // CHECK-ENCODING: [0x58,0x5e,0xa0,0xc1]
96 // CHECK-ERROR: instruction requires: sme2
97 // CHECK-UNKNOWN: c1a05e58 <unknown>
99 sub za.s[w8, 0, vgx2], {z12.s, z13.s} // 11000001-10100000-00011101-10011000
100 // CHECK-INST: sub za.s[w8, 0, vgx2], { z12.s, z13.s }
101 // CHECK-ENCODING: [0x98,0x1d,0xa0,0xc1]
102 // CHECK-ERROR: instruction requires: sme2
103 // CHECK-UNKNOWN: c1a01d98 <unknown>
105 sub za.s[w8, 0], {z12.s, z13.s} // 11000001-10100000-00011101-10011000
106 // CHECK-INST: sub za.s[w8, 0, vgx2], { z12.s, z13.s }
107 // CHECK-ENCODING: [0x98,0x1d,0xa0,0xc1]
108 // CHECK-ERROR: instruction requires: sme2
109 // CHECK-UNKNOWN: c1a01d98 <unknown>
111 sub za.s[w10, 1, vgx2], {z0.s, z1.s} // 11000001-10100000-01011100-00011001
112 // CHECK-INST: sub za.s[w10, 1, vgx2], { z0.s, z1.s }
113 // CHECK-ENCODING: [0x19,0x5c,0xa0,0xc1]
114 // CHECK-ERROR: instruction requires: sme2
115 // CHECK-UNKNOWN: c1a05c19 <unknown>
117 sub za.s[w10, 1], {z0.s, z1.s} // 11000001-10100000-01011100-00011001
118 // CHECK-INST: sub za.s[w10, 1, vgx2], { z0.s, z1.s }
119 // CHECK-ENCODING: [0x19,0x5c,0xa0,0xc1]
120 // CHECK-ERROR: instruction requires: sme2
121 // CHECK-UNKNOWN: c1a05c19 <unknown>
123 sub za.s[w8, 5, vgx2], {z22.s, z23.s} // 11000001-10100000-00011110-11011101
124 // CHECK-INST: sub za.s[w8, 5, vgx2], { z22.s, z23.s }
125 // CHECK-ENCODING: [0xdd,0x1e,0xa0,0xc1]
126 // CHECK-ERROR: instruction requires: sme2
127 // CHECK-UNKNOWN: c1a01edd <unknown>
129 sub za.s[w8, 5], {z22.s, z23.s} // 11000001-10100000-00011110-11011101
130 // CHECK-INST: sub za.s[w8, 5, vgx2], { z22.s, z23.s }
131 // CHECK-ENCODING: [0xdd,0x1e,0xa0,0xc1]
132 // CHECK-ERROR: instruction requires: sme2
133 // CHECK-UNKNOWN: c1a01edd <unknown>
135 sub za.s[w11, 2, vgx2], {z8.s, z9.s} // 11000001-10100000-01111101-00011010
136 // CHECK-INST: sub za.s[w11, 2, vgx2], { z8.s, z9.s }
137 // CHECK-ENCODING: [0x1a,0x7d,0xa0,0xc1]
138 // CHECK-ERROR: instruction requires: sme2
139 // CHECK-UNKNOWN: c1a07d1a <unknown>
141 sub za.s[w11, 2], {z8.s, z9.s} // 11000001-10100000-01111101-00011010
142 // CHECK-INST: sub za.s[w11, 2, vgx2], { z8.s, z9.s }
143 // CHECK-ENCODING: [0x1a,0x7d,0xa0,0xc1]
144 // CHECK-ERROR: instruction requires: sme2
145 // CHECK-UNKNOWN: c1a07d1a <unknown>
147 sub za.s[w9, 7, vgx2], {z12.s, z13.s} // 11000001-10100000-00111101-10011111
148 // CHECK-INST: sub za.s[w9, 7, vgx2], { z12.s, z13.s }
149 // CHECK-ENCODING: [0x9f,0x3d,0xa0,0xc1]
150 // CHECK-ERROR: instruction requires: sme2
151 // CHECK-UNKNOWN: c1a03d9f <unknown>
153 sub za.s[w9, 7], {z12.s, z13.s} // 11000001-10100000-00111101-10011111
154 // CHECK-INST: sub za.s[w9, 7, vgx2], { z12.s, z13.s }
155 // CHECK-ENCODING: [0x9f,0x3d,0xa0,0xc1]
156 // CHECK-ERROR: instruction requires: sme2
157 // CHECK-UNKNOWN: c1a03d9f <unknown>
160 sub za.s[w8, 0, vgx2], {z0.s, z1.s}, z0.s // 11000001-00100000-00011000-00011000
161 // CHECK-INST: sub za.s[w8, 0, vgx2], { z0.s, z1.s }, z0.s
162 // CHECK-ENCODING: [0x18,0x18,0x20,0xc1]
163 // CHECK-ERROR: instruction requires: sme2
164 // CHECK-UNKNOWN: c1201818 <unknown>
166 sub za.s[w8, 0], {z0.s - z1.s}, z0.s // 11000001-00100000-00011000-00011000
167 // CHECK-INST: sub za.s[w8, 0, vgx2], { z0.s, z1.s }, z0.s
168 // CHECK-ENCODING: [0x18,0x18,0x20,0xc1]
169 // CHECK-ERROR: instruction requires: sme2
170 // CHECK-UNKNOWN: c1201818 <unknown>
172 sub za.s[w10, 5, vgx2], {z10.s, z11.s}, z5.s // 11000001-00100101-01011001-01011101
173 // CHECK-INST: sub za.s[w10, 5, vgx2], { z10.s, z11.s }, z5.s
174 // CHECK-ENCODING: [0x5d,0x59,0x25,0xc1]
175 // CHECK-ERROR: instruction requires: sme2
176 // CHECK-UNKNOWN: c125595d <unknown>
178 sub za.s[w10, 5], {z10.s - z11.s}, z5.s // 11000001-00100101-01011001-01011101
179 // CHECK-INST: sub za.s[w10, 5, vgx2], { z10.s, z11.s }, z5.s
180 // CHECK-ENCODING: [0x5d,0x59,0x25,0xc1]
181 // CHECK-ERROR: instruction requires: sme2
182 // CHECK-UNKNOWN: c125595d <unknown>
184 sub za.s[w11, 7, vgx2], {z13.s, z14.s}, z8.s // 11000001-00101000-01111001-10111111
185 // CHECK-INST: sub za.s[w11, 7, vgx2], { z13.s, z14.s }, z8.s
186 // CHECK-ENCODING: [0xbf,0x79,0x28,0xc1]
187 // CHECK-ERROR: instruction requires: sme2
188 // CHECK-UNKNOWN: c12879bf <unknown>
190 sub za.s[w11, 7], {z13.s - z14.s}, z8.s // 11000001-00101000-01111001-10111111
191 // CHECK-INST: sub za.s[w11, 7, vgx2], { z13.s, z14.s }, z8.s
192 // CHECK-ENCODING: [0xbf,0x79,0x28,0xc1]
193 // CHECK-ERROR: instruction requires: sme2
194 // CHECK-UNKNOWN: c12879bf <unknown>
196 sub za.s[w11, 7, vgx2], {z31.s, z0.s}, z15.s // 11000001-00101111-01111011-11111111
197 // CHECK-INST: sub za.s[w11, 7, vgx2], { z31.s, z0.s }, z15.s
198 // CHECK-ENCODING: [0xff,0x7b,0x2f,0xc1]
199 // CHECK-ERROR: instruction requires: sme2
200 // CHECK-UNKNOWN: c12f7bff <unknown>
202 sub za.s[w11, 7], {z31.s - z0.s}, z15.s // 11000001-00101111-01111011-11111111
203 // CHECK-INST: sub za.s[w11, 7, vgx2], { z31.s, z0.s }, z15.s
204 // CHECK-ENCODING: [0xff,0x7b,0x2f,0xc1]
205 // CHECK-ERROR: instruction requires: sme2
206 // CHECK-UNKNOWN: c12f7bff <unknown>
208 sub za.s[w8, 5, vgx2], {z17.s, z18.s}, z0.s // 11000001-00100000-00011010-00111101
209 // CHECK-INST: sub za.s[w8, 5, vgx2], { z17.s, z18.s }, z0.s
210 // CHECK-ENCODING: [0x3d,0x1a,0x20,0xc1]
211 // CHECK-ERROR: instruction requires: sme2
212 // CHECK-UNKNOWN: c1201a3d <unknown>
214 sub za.s[w8, 5], {z17.s - z18.s}, z0.s // 11000001-00100000-00011010-00111101
215 // CHECK-INST: sub za.s[w8, 5, vgx2], { z17.s, z18.s }, z0.s
216 // CHECK-ENCODING: [0x3d,0x1a,0x20,0xc1]
217 // CHECK-ERROR: instruction requires: sme2
218 // CHECK-UNKNOWN: c1201a3d <unknown>
220 sub za.s[w8, 1, vgx2], {z1.s, z2.s}, z14.s // 11000001-00101110-00011000-00111001
221 // CHECK-INST: sub za.s[w8, 1, vgx2], { z1.s, z2.s }, z14.s
222 // CHECK-ENCODING: [0x39,0x18,0x2e,0xc1]
223 // CHECK-ERROR: instruction requires: sme2
224 // CHECK-UNKNOWN: c12e1839 <unknown>
226 sub za.s[w8, 1], {z1.s - z2.s}, z14.s // 11000001-00101110-00011000-00111001
227 // CHECK-INST: sub za.s[w8, 1, vgx2], { z1.s, z2.s }, z14.s
228 // CHECK-ENCODING: [0x39,0x18,0x2e,0xc1]
229 // CHECK-ERROR: instruction requires: sme2
230 // CHECK-UNKNOWN: c12e1839 <unknown>
232 sub za.s[w10, 0, vgx2], {z19.s, z20.s}, z4.s // 11000001-00100100-01011010-01111000
233 // CHECK-INST: sub za.s[w10, 0, vgx2], { z19.s, z20.s }, z4.s
234 // CHECK-ENCODING: [0x78,0x5a,0x24,0xc1]
235 // CHECK-ERROR: instruction requires: sme2
236 // CHECK-UNKNOWN: c1245a78 <unknown>
238 sub za.s[w10, 0], {z19.s - z20.s}, z4.s // 11000001-00100100-01011010-01111000
239 // CHECK-INST: sub za.s[w10, 0, vgx2], { z19.s, z20.s }, z4.s
240 // CHECK-ENCODING: [0x78,0x5a,0x24,0xc1]
241 // CHECK-ERROR: instruction requires: sme2
242 // CHECK-UNKNOWN: c1245a78 <unknown>
244 sub za.s[w8, 0, vgx2], {z12.s, z13.s}, z2.s // 11000001-00100010-00011001-10011000
245 // CHECK-INST: sub za.s[w8, 0, vgx2], { z12.s, z13.s }, z2.s
246 // CHECK-ENCODING: [0x98,0x19,0x22,0xc1]
247 // CHECK-ERROR: instruction requires: sme2
248 // CHECK-UNKNOWN: c1221998 <unknown>
250 sub za.s[w8, 0], {z12.s - z13.s}, z2.s // 11000001-00100010-00011001-10011000
251 // CHECK-INST: sub za.s[w8, 0, vgx2], { z12.s, z13.s }, z2.s
252 // CHECK-ENCODING: [0x98,0x19,0x22,0xc1]
253 // CHECK-ERROR: instruction requires: sme2
254 // CHECK-UNKNOWN: c1221998 <unknown>
256 sub za.s[w10, 1, vgx2], {z1.s, z2.s}, z10.s // 11000001-00101010-01011000-00111001
257 // CHECK-INST: sub za.s[w10, 1, vgx2], { z1.s, z2.s }, z10.s
258 // CHECK-ENCODING: [0x39,0x58,0x2a,0xc1]
259 // CHECK-ERROR: instruction requires: sme2
260 // CHECK-UNKNOWN: c12a5839 <unknown>
262 sub za.s[w10, 1], {z1.s - z2.s}, z10.s // 11000001-00101010-01011000-00111001
263 // CHECK-INST: sub za.s[w10, 1, vgx2], { z1.s, z2.s }, z10.s
264 // CHECK-ENCODING: [0x39,0x58,0x2a,0xc1]
265 // CHECK-ERROR: instruction requires: sme2
266 // CHECK-UNKNOWN: c12a5839 <unknown>
268 sub za.s[w8, 5, vgx2], {z22.s, z23.s}, z14.s // 11000001-00101110-00011010-11011101
269 // CHECK-INST: sub za.s[w8, 5, vgx2], { z22.s, z23.s }, z14.s
270 // CHECK-ENCODING: [0xdd,0x1a,0x2e,0xc1]
271 // CHECK-ERROR: instruction requires: sme2
272 // CHECK-UNKNOWN: c12e1add <unknown>
274 sub za.s[w8, 5], {z22.s - z23.s}, z14.s // 11000001-00101110-00011010-11011101
275 // CHECK-INST: sub za.s[w8, 5, vgx2], { z22.s, z23.s }, z14.s
276 // CHECK-ENCODING: [0xdd,0x1a,0x2e,0xc1]
277 // CHECK-ERROR: instruction requires: sme2
278 // CHECK-UNKNOWN: c12e1add <unknown>
280 sub za.s[w11, 2, vgx2], {z9.s, z10.s}, z1.s // 11000001-00100001-01111001-00111010
281 // CHECK-INST: sub za.s[w11, 2, vgx2], { z9.s, z10.s }, z1.s
282 // CHECK-ENCODING: [0x3a,0x79,0x21,0xc1]
283 // CHECK-ERROR: instruction requires: sme2
284 // CHECK-UNKNOWN: c121793a <unknown>
286 sub za.s[w11, 2], {z9.s - z10.s}, z1.s // 11000001-00100001-01111001-00111010
287 // CHECK-INST: sub za.s[w11, 2, vgx2], { z9.s, z10.s }, z1.s
288 // CHECK-ENCODING: [0x3a,0x79,0x21,0xc1]
289 // CHECK-ERROR: instruction requires: sme2
290 // CHECK-UNKNOWN: c121793a <unknown>
292 sub za.s[w9, 7, vgx2], {z12.s, z13.s}, z11.s // 11000001-00101011-00111001-10011111
293 // CHECK-INST: sub za.s[w9, 7, vgx2], { z12.s, z13.s }, z11.s
294 // CHECK-ENCODING: [0x9f,0x39,0x2b,0xc1]
295 // CHECK-ERROR: instruction requires: sme2
296 // CHECK-UNKNOWN: c12b399f <unknown>
298 sub za.s[w9, 7], {z12.s - z13.s}, z11.s // 11000001-00101011-00111001-10011111
299 // CHECK-INST: sub za.s[w9, 7, vgx2], { z12.s, z13.s }, z11.s
300 // CHECK-ENCODING: [0x9f,0x39,0x2b,0xc1]
301 // CHECK-ERROR: instruction requires: sme2
302 // CHECK-UNKNOWN: c12b399f <unknown>
305 sub za.s[w8, 0, vgx2], {z0.s, z1.s}, {z0.s, z1.s} // 11000001-10100000-00011000-00011000
306 // CHECK-INST: sub za.s[w8, 0, vgx2], { z0.s, z1.s }, { z0.s, z1.s }
307 // CHECK-ENCODING: [0x18,0x18,0xa0,0xc1]
308 // CHECK-ERROR: instruction requires: sme2
309 // CHECK-UNKNOWN: c1a01818 <unknown>
311 sub za.s[w8, 0], {z0.s - z1.s}, {z0.s - z1.s} // 11000001-10100000-00011000-00011000
312 // CHECK-INST: sub za.s[w8, 0, vgx2], { z0.s, z1.s }, { z0.s, z1.s }
313 // CHECK-ENCODING: [0x18,0x18,0xa0,0xc1]
314 // CHECK-ERROR: instruction requires: sme2
315 // CHECK-UNKNOWN: c1a01818 <unknown>
317 sub za.s[w10, 5, vgx2], {z10.s, z11.s}, {z20.s, z21.s} // 11000001-10110100-01011001-01011101
318 // CHECK-INST: sub za.s[w10, 5, vgx2], { z10.s, z11.s }, { z20.s, z21.s }
319 // CHECK-ENCODING: [0x5d,0x59,0xb4,0xc1]
320 // CHECK-ERROR: instruction requires: sme2
321 // CHECK-UNKNOWN: c1b4595d <unknown>
323 sub za.s[w10, 5], {z10.s - z11.s}, {z20.s - z21.s} // 11000001-10110100-01011001-01011101
324 // CHECK-INST: sub za.s[w10, 5, vgx2], { z10.s, z11.s }, { z20.s, z21.s }
325 // CHECK-ENCODING: [0x5d,0x59,0xb4,0xc1]
326 // CHECK-ERROR: instruction requires: sme2
327 // CHECK-UNKNOWN: c1b4595d <unknown>
329 sub za.s[w11, 7, vgx2], {z12.s, z13.s}, {z8.s, z9.s} // 11000001-10101000-01111001-10011111
330 // CHECK-INST: sub za.s[w11, 7, vgx2], { z12.s, z13.s }, { z8.s, z9.s }
331 // CHECK-ENCODING: [0x9f,0x79,0xa8,0xc1]
332 // CHECK-ERROR: instruction requires: sme2
333 // CHECK-UNKNOWN: c1a8799f <unknown>
335 sub za.s[w11, 7], {z12.s - z13.s}, {z8.s - z9.s} // 11000001-10101000-01111001-10011111
336 // CHECK-INST: sub za.s[w11, 7, vgx2], { z12.s, z13.s }, { z8.s, z9.s }
337 // CHECK-ENCODING: [0x9f,0x79,0xa8,0xc1]
338 // CHECK-ERROR: instruction requires: sme2
339 // CHECK-UNKNOWN: c1a8799f <unknown>
341 sub za.s[w11, 7, vgx2], {z30.s, z31.s}, {z30.s, z31.s} // 11000001-10111110-01111011-11011111
342 // CHECK-INST: sub za.s[w11, 7, vgx2], { z30.s, z31.s }, { z30.s, z31.s }
343 // CHECK-ENCODING: [0xdf,0x7b,0xbe,0xc1]
344 // CHECK-ERROR: instruction requires: sme2
345 // CHECK-UNKNOWN: c1be7bdf <unknown>
347 sub za.s[w11, 7], {z30.s - z31.s}, {z30.s - z31.s} // 11000001-10111110-01111011-11011111
348 // CHECK-INST: sub za.s[w11, 7, vgx2], { z30.s, z31.s }, { z30.s, z31.s }
349 // CHECK-ENCODING: [0xdf,0x7b,0xbe,0xc1]
350 // CHECK-ERROR: instruction requires: sme2
351 // CHECK-UNKNOWN: c1be7bdf <unknown>
353 sub za.s[w8, 5, vgx2], {z16.s, z17.s}, {z16.s, z17.s} // 11000001-10110000-00011010-00011101
354 // CHECK-INST: sub za.s[w8, 5, vgx2], { z16.s, z17.s }, { z16.s, z17.s }
355 // CHECK-ENCODING: [0x1d,0x1a,0xb0,0xc1]
356 // CHECK-ERROR: instruction requires: sme2
357 // CHECK-UNKNOWN: c1b01a1d <unknown>
359 sub za.s[w8, 5], {z16.s - z17.s}, {z16.s - z17.s} // 11000001-10110000-00011010-00011101
360 // CHECK-INST: sub za.s[w8, 5, vgx2], { z16.s, z17.s }, { z16.s, z17.s }
361 // CHECK-ENCODING: [0x1d,0x1a,0xb0,0xc1]
362 // CHECK-ERROR: instruction requires: sme2
363 // CHECK-UNKNOWN: c1b01a1d <unknown>
365 sub za.s[w8, 1, vgx2], {z0.s, z1.s}, {z30.s, z31.s} // 11000001-10111110-00011000-00011001
366 // CHECK-INST: sub za.s[w8, 1, vgx2], { z0.s, z1.s }, { z30.s, z31.s }
367 // CHECK-ENCODING: [0x19,0x18,0xbe,0xc1]
368 // CHECK-ERROR: instruction requires: sme2
369 // CHECK-UNKNOWN: c1be1819 <unknown>
371 sub za.s[w8, 1], {z0.s - z1.s}, {z30.s - z31.s} // 11000001-10111110-00011000-00011001
372 // CHECK-INST: sub za.s[w8, 1, vgx2], { z0.s, z1.s }, { z30.s, z31.s }
373 // CHECK-ENCODING: [0x19,0x18,0xbe,0xc1]
374 // CHECK-ERROR: instruction requires: sme2
375 // CHECK-UNKNOWN: c1be1819 <unknown>
377 sub za.s[w10, 0, vgx2], {z18.s, z19.s}, {z20.s, z21.s} // 11000001-10110100-01011010-01011000
378 // CHECK-INST: sub za.s[w10, 0, vgx2], { z18.s, z19.s }, { z20.s, z21.s }
379 // CHECK-ENCODING: [0x58,0x5a,0xb4,0xc1]
380 // CHECK-ERROR: instruction requires: sme2
381 // CHECK-UNKNOWN: c1b45a58 <unknown>
383 sub za.s[w10, 0], {z18.s - z19.s}, {z20.s - z21.s} // 11000001-10110100-01011010-01011000
384 // CHECK-INST: sub za.s[w10, 0, vgx2], { z18.s, z19.s }, { z20.s, z21.s }
385 // CHECK-ENCODING: [0x58,0x5a,0xb4,0xc1]
386 // CHECK-ERROR: instruction requires: sme2
387 // CHECK-UNKNOWN: c1b45a58 <unknown>
389 sub za.s[w8, 0, vgx2], {z12.s, z13.s}, {z2.s, z3.s} // 11000001-10100010-00011001-10011000
390 // CHECK-INST: sub za.s[w8, 0, vgx2], { z12.s, z13.s }, { z2.s, z3.s }
391 // CHECK-ENCODING: [0x98,0x19,0xa2,0xc1]
392 // CHECK-ERROR: instruction requires: sme2
393 // CHECK-UNKNOWN: c1a21998 <unknown>
395 sub za.s[w8, 0], {z12.s - z13.s}, {z2.s - z3.s} // 11000001-10100010-00011001-10011000
396 // CHECK-INST: sub za.s[w8, 0, vgx2], { z12.s, z13.s }, { z2.s, z3.s }
397 // CHECK-ENCODING: [0x98,0x19,0xa2,0xc1]
398 // CHECK-ERROR: instruction requires: sme2
399 // CHECK-UNKNOWN: c1a21998 <unknown>
401 sub za.s[w10, 1, vgx2], {z0.s, z1.s}, {z26.s, z27.s} // 11000001-10111010-01011000-00011001
402 // CHECK-INST: sub za.s[w10, 1, vgx2], { z0.s, z1.s }, { z26.s, z27.s }
403 // CHECK-ENCODING: [0x19,0x58,0xba,0xc1]
404 // CHECK-ERROR: instruction requires: sme2
405 // CHECK-UNKNOWN: c1ba5819 <unknown>
407 sub za.s[w10, 1], {z0.s - z1.s}, {z26.s - z27.s} // 11000001-10111010-01011000-00011001
408 // CHECK-INST: sub za.s[w10, 1, vgx2], { z0.s, z1.s }, { z26.s, z27.s }
409 // CHECK-ENCODING: [0x19,0x58,0xba,0xc1]
410 // CHECK-ERROR: instruction requires: sme2
411 // CHECK-UNKNOWN: c1ba5819 <unknown>
413 sub za.s[w8, 5, vgx2], {z22.s, z23.s}, {z30.s, z31.s} // 11000001-10111110-00011010-11011101
414 // CHECK-INST: sub za.s[w8, 5, vgx2], { z22.s, z23.s }, { z30.s, z31.s }
415 // CHECK-ENCODING: [0xdd,0x1a,0xbe,0xc1]
416 // CHECK-ERROR: instruction requires: sme2
417 // CHECK-UNKNOWN: c1be1add <unknown>
419 sub za.s[w8, 5], {z22.s - z23.s}, {z30.s - z31.s} // 11000001-10111110-00011010-11011101
420 // CHECK-INST: sub za.s[w8, 5, vgx2], { z22.s, z23.s }, { z30.s, z31.s }
421 // CHECK-ENCODING: [0xdd,0x1a,0xbe,0xc1]
422 // CHECK-ERROR: instruction requires: sme2
423 // CHECK-UNKNOWN: c1be1add <unknown>
425 sub za.s[w11, 2, vgx2], {z8.s, z9.s}, {z0.s, z1.s} // 11000001-10100000-01111001-00011010
426 // CHECK-INST: sub za.s[w11, 2, vgx2], { z8.s, z9.s }, { z0.s, z1.s }
427 // CHECK-ENCODING: [0x1a,0x79,0xa0,0xc1]
428 // CHECK-ERROR: instruction requires: sme2
429 // CHECK-UNKNOWN: c1a0791a <unknown>
431 sub za.s[w11, 2], {z8.s - z9.s}, {z0.s - z1.s} // 11000001-10100000-01111001-00011010
432 // CHECK-INST: sub za.s[w11, 2, vgx2], { z8.s, z9.s }, { z0.s, z1.s }
433 // CHECK-ENCODING: [0x1a,0x79,0xa0,0xc1]
434 // CHECK-ERROR: instruction requires: sme2
435 // CHECK-UNKNOWN: c1a0791a <unknown>
437 sub za.s[w9, 7, vgx2], {z12.s, z13.s}, {z10.s, z11.s} // 11000001-10101010-00111001-10011111
438 // CHECK-INST: sub za.s[w9, 7, vgx2], { z12.s, z13.s }, { z10.s, z11.s }
439 // CHECK-ENCODING: [0x9f,0x39,0xaa,0xc1]
440 // CHECK-ERROR: instruction requires: sme2
441 // CHECK-UNKNOWN: c1aa399f <unknown>
443 sub za.s[w9, 7], {z12.s - z13.s}, {z10.s - z11.s} // 11000001-10101010-00111001-10011111
444 // CHECK-INST: sub za.s[w9, 7, vgx2], { z12.s, z13.s }, { z10.s, z11.s }
445 // CHECK-ENCODING: [0x9f,0x39,0xaa,0xc1]
446 // CHECK-ERROR: instruction requires: sme2
447 // CHECK-UNKNOWN: c1aa399f <unknown>
450 sub za.d[w8, 0, vgx2], {z0.d, z1.d} // 11000001-11100000-00011100-00011000
451 // CHECK-INST: sub za.d[w8, 0, vgx2], { z0.d, z1.d }
452 // CHECK-ENCODING: [0x18,0x1c,0xe0,0xc1]
453 // CHECK-ERROR: instruction requires: sme2
454 // CHECK-UNKNOWN: c1e01c18 <unknown>
456 sub za.d[w8, 0], {z0.d, z1.d} // 11000001-11100000-00011100-00011000
457 // CHECK-INST: sub za.d[w8, 0, vgx2], { z0.d, z1.d }
458 // CHECK-ENCODING: [0x18,0x1c,0xe0,0xc1]
459 // CHECK-ERROR: instruction requires: sme2
460 // CHECK-UNKNOWN: c1e01c18 <unknown>
462 sub za.d[w10, 5, vgx2], {z10.d, z11.d} // 11000001-11100000-01011101-01011101
463 // CHECK-INST: sub za.d[w10, 5, vgx2], { z10.d, z11.d }
464 // CHECK-ENCODING: [0x5d,0x5d,0xe0,0xc1]
465 // CHECK-ERROR: instruction requires: sme2
466 // CHECK-UNKNOWN: c1e05d5d <unknown>
468 sub za.d[w10, 5], {z10.d, z11.d} // 11000001-11100000-01011101-01011101
469 // CHECK-INST: sub za.d[w10, 5, vgx2], { z10.d, z11.d }
470 // CHECK-ENCODING: [0x5d,0x5d,0xe0,0xc1]
471 // CHECK-ERROR: instruction requires: sme2
472 // CHECK-UNKNOWN: c1e05d5d <unknown>
474 sub za.d[w11, 7, vgx2], {z12.d, z13.d} // 11000001-11100000-01111101-10011111
475 // CHECK-INST: sub za.d[w11, 7, vgx2], { z12.d, z13.d }
476 // CHECK-ENCODING: [0x9f,0x7d,0xe0,0xc1]
477 // CHECK-ERROR: instruction requires: sme2
478 // CHECK-UNKNOWN: c1e07d9f <unknown>
480 sub za.d[w11, 7], {z12.d, z13.d} // 11000001-11100000-01111101-10011111
481 // CHECK-INST: sub za.d[w11, 7, vgx2], { z12.d, z13.d }
482 // CHECK-ENCODING: [0x9f,0x7d,0xe0,0xc1]
483 // CHECK-ERROR: instruction requires: sme2
484 // CHECK-UNKNOWN: c1e07d9f <unknown>
486 sub za.d[w11, 7, vgx2], {z30.d, z31.d} // 11000001-11100000-01111111-11011111
487 // CHECK-INST: sub za.d[w11, 7, vgx2], { z30.d, z31.d }
488 // CHECK-ENCODING: [0xdf,0x7f,0xe0,0xc1]
489 // CHECK-ERROR: instruction requires: sme2
490 // CHECK-UNKNOWN: c1e07fdf <unknown>
492 sub za.d[w11, 7], {z30.d, z31.d} // 11000001-11100000-01111111-11011111
493 // CHECK-INST: sub za.d[w11, 7, vgx2], { z30.d, z31.d }
494 // CHECK-ENCODING: [0xdf,0x7f,0xe0,0xc1]
495 // CHECK-ERROR: instruction requires: sme2
496 // CHECK-UNKNOWN: c1e07fdf <unknown>
498 sub za.d[w8, 5, vgx2], {z16.d, z17.d} // 11000001-11100000-00011110-00011101
499 // CHECK-INST: sub za.d[w8, 5, vgx2], { z16.d, z17.d }
500 // CHECK-ENCODING: [0x1d,0x1e,0xe0,0xc1]
501 // CHECK-ERROR: instruction requires: sme2
502 // CHECK-UNKNOWN: c1e01e1d <unknown>
504 sub za.d[w8, 5], {z16.d, z17.d} // 11000001-11100000-00011110-00011101
505 // CHECK-INST: sub za.d[w8, 5, vgx2], { z16.d, z17.d }
506 // CHECK-ENCODING: [0x1d,0x1e,0xe0,0xc1]
507 // CHECK-ERROR: instruction requires: sme2
508 // CHECK-UNKNOWN: c1e01e1d <unknown>
510 sub za.d[w8, 1, vgx2], {z0.d, z1.d} // 11000001-11100000-00011100-00011001
511 // CHECK-INST: sub za.d[w8, 1, vgx2], { z0.d, z1.d }
512 // CHECK-ENCODING: [0x19,0x1c,0xe0,0xc1]
513 // CHECK-ERROR: instruction requires: sme2
514 // CHECK-UNKNOWN: c1e01c19 <unknown>
516 sub za.d[w8, 1], {z0.d, z1.d} // 11000001-11100000-00011100-00011001
517 // CHECK-INST: sub za.d[w8, 1, vgx2], { z0.d, z1.d }
518 // CHECK-ENCODING: [0x19,0x1c,0xe0,0xc1]
519 // CHECK-ERROR: instruction requires: sme2
520 // CHECK-UNKNOWN: c1e01c19 <unknown>
522 sub za.d[w10, 0, vgx2], {z18.d, z19.d} // 11000001-11100000-01011110-01011000
523 // CHECK-INST: sub za.d[w10, 0, vgx2], { z18.d, z19.d }
524 // CHECK-ENCODING: [0x58,0x5e,0xe0,0xc1]
525 // CHECK-ERROR: instruction requires: sme2
526 // CHECK-UNKNOWN: c1e05e58 <unknown>
528 sub za.d[w10, 0], {z18.d, z19.d} // 11000001-11100000-01011110-01011000
529 // CHECK-INST: sub za.d[w10, 0, vgx2], { z18.d, z19.d }
530 // CHECK-ENCODING: [0x58,0x5e,0xe0,0xc1]
531 // CHECK-ERROR: instruction requires: sme2
532 // CHECK-UNKNOWN: c1e05e58 <unknown>
534 sub za.d[w8, 0, vgx2], {z12.d, z13.d} // 11000001-11100000-00011101-10011000
535 // CHECK-INST: sub za.d[w8, 0, vgx2], { z12.d, z13.d }
536 // CHECK-ENCODING: [0x98,0x1d,0xe0,0xc1]
537 // CHECK-ERROR: instruction requires: sme2
538 // CHECK-UNKNOWN: c1e01d98 <unknown>
540 sub za.d[w8, 0], {z12.d, z13.d} // 11000001-11100000-00011101-10011000
541 // CHECK-INST: sub za.d[w8, 0, vgx2], { z12.d, z13.d }
542 // CHECK-ENCODING: [0x98,0x1d,0xe0,0xc1]
543 // CHECK-ERROR: instruction requires: sme2
544 // CHECK-UNKNOWN: c1e01d98 <unknown>
546 sub za.d[w10, 1, vgx2], {z0.d, z1.d} // 11000001-11100000-01011100-00011001
547 // CHECK-INST: sub za.d[w10, 1, vgx2], { z0.d, z1.d }
548 // CHECK-ENCODING: [0x19,0x5c,0xe0,0xc1]
549 // CHECK-ERROR: instruction requires: sme2
550 // CHECK-UNKNOWN: c1e05c19 <unknown>
552 sub za.d[w10, 1], {z0.d, z1.d} // 11000001-11100000-01011100-00011001
553 // CHECK-INST: sub za.d[w10, 1, vgx2], { z0.d, z1.d }
554 // CHECK-ENCODING: [0x19,0x5c,0xe0,0xc1]
555 // CHECK-ERROR: instruction requires: sme2
556 // CHECK-UNKNOWN: c1e05c19 <unknown>
558 sub za.d[w8, 5, vgx2], {z22.d, z23.d} // 11000001-11100000-00011110-11011101
559 // CHECK-INST: sub za.d[w8, 5, vgx2], { z22.d, z23.d }
560 // CHECK-ENCODING: [0xdd,0x1e,0xe0,0xc1]
561 // CHECK-ERROR: instruction requires: sme2
562 // CHECK-UNKNOWN: c1e01edd <unknown>
564 sub za.d[w8, 5], {z22.d, z23.d} // 11000001-11100000-00011110-11011101
565 // CHECK-INST: sub za.d[w8, 5, vgx2], { z22.d, z23.d }
566 // CHECK-ENCODING: [0xdd,0x1e,0xe0,0xc1]
567 // CHECK-ERROR: instruction requires: sme2
568 // CHECK-UNKNOWN: c1e01edd <unknown>
570 sub za.d[w11, 2, vgx2], {z8.d, z9.d} // 11000001-11100000-01111101-00011010
571 // CHECK-INST: sub za.d[w11, 2, vgx2], { z8.d, z9.d }
572 // CHECK-ENCODING: [0x1a,0x7d,0xe0,0xc1]
573 // CHECK-ERROR: instruction requires: sme2
574 // CHECK-UNKNOWN: c1e07d1a <unknown>
576 sub za.d[w11, 2], {z8.d, z9.d} // 11000001-11100000-01111101-00011010
577 // CHECK-INST: sub za.d[w11, 2, vgx2], { z8.d, z9.d }
578 // CHECK-ENCODING: [0x1a,0x7d,0xe0,0xc1]
579 // CHECK-ERROR: instruction requires: sme2
580 // CHECK-UNKNOWN: c1e07d1a <unknown>
582 sub za.d[w9, 7, vgx2], {z12.d, z13.d} // 11000001-11100000-00111101-10011111
583 // CHECK-INST: sub za.d[w9, 7, vgx2], { z12.d, z13.d }
584 // CHECK-ENCODING: [0x9f,0x3d,0xe0,0xc1]
585 // CHECK-ERROR: instruction requires: sme2
586 // CHECK-UNKNOWN: c1e03d9f <unknown>
588 sub za.d[w9, 7], {z12.d, z13.d} // 11000001-11100000-00111101-10011111
589 // CHECK-INST: sub za.d[w9, 7, vgx2], { z12.d, z13.d }
590 // CHECK-ENCODING: [0x9f,0x3d,0xe0,0xc1]
591 // CHECK-ERROR: instruction requires: sme2
592 // CHECK-UNKNOWN: c1e03d9f <unknown>
594 sub za.d[w8, 0, vgx2], {z0.d, z1.d}, z0.d // 11000001-01100000-00011000-00011000
595 // CHECK-INST: sub za.d[w8, 0, vgx2], { z0.d, z1.d }, z0.d
596 // CHECK-ENCODING: [0x18,0x18,0x60,0xc1]
597 // CHECK-ERROR: instruction requires: sme2
598 // CHECK-UNKNOWN: c1601818 <unknown>
600 sub za.d[w8, 0], {z0.d - z1.d}, z0.d // 11000001-01100000-00011000-00011000
601 // CHECK-INST: sub za.d[w8, 0, vgx2], { z0.d, z1.d }, z0.d
602 // CHECK-ENCODING: [0x18,0x18,0x60,0xc1]
603 // CHECK-ERROR: instruction requires: sme2
604 // CHECK-UNKNOWN: c1601818 <unknown>
606 sub za.d[w10, 5, vgx2], {z10.d, z11.d}, z5.d // 11000001-01100101-01011001-01011101
607 // CHECK-INST: sub za.d[w10, 5, vgx2], { z10.d, z11.d }, z5.d
608 // CHECK-ENCODING: [0x5d,0x59,0x65,0xc1]
609 // CHECK-ERROR: instruction requires: sme2
610 // CHECK-UNKNOWN: c165595d <unknown>
612 sub za.d[w10, 5], {z10.d - z11.d}, z5.d // 11000001-01100101-01011001-01011101
613 // CHECK-INST: sub za.d[w10, 5, vgx2], { z10.d, z11.d }, z5.d
614 // CHECK-ENCODING: [0x5d,0x59,0x65,0xc1]
615 // CHECK-ERROR: instruction requires: sme2
616 // CHECK-UNKNOWN: c165595d <unknown>
618 sub za.d[w11, 7, vgx2], {z13.d, z14.d}, z8.d // 11000001-01101000-01111001-10111111
619 // CHECK-INST: sub za.d[w11, 7, vgx2], { z13.d, z14.d }, z8.d
620 // CHECK-ENCODING: [0xbf,0x79,0x68,0xc1]
621 // CHECK-ERROR: instruction requires: sme2
622 // CHECK-UNKNOWN: c16879bf <unknown>
624 sub za.d[w11, 7], {z13.d - z14.d}, z8.d // 11000001-01101000-01111001-10111111
625 // CHECK-INST: sub za.d[w11, 7, vgx2], { z13.d, z14.d }, z8.d
626 // CHECK-ENCODING: [0xbf,0x79,0x68,0xc1]
627 // CHECK-ERROR: instruction requires: sme2
628 // CHECK-UNKNOWN: c16879bf <unknown>
630 sub za.d[w11, 7, vgx2], {z31.d, z0.d}, z15.d // 11000001-01101111-01111011-11111111
631 // CHECK-INST: sub za.d[w11, 7, vgx2], { z31.d, z0.d }, z15.d
632 // CHECK-ENCODING: [0xff,0x7b,0x6f,0xc1]
633 // CHECK-ERROR: instruction requires: sme2
634 // CHECK-UNKNOWN: c16f7bff <unknown>
636 sub za.d[w11, 7], {z31.d - z0.d}, z15.d // 11000001-01101111-01111011-11111111
637 // CHECK-INST: sub za.d[w11, 7, vgx2], { z31.d, z0.d }, z15.d
638 // CHECK-ENCODING: [0xff,0x7b,0x6f,0xc1]
639 // CHECK-ERROR: instruction requires: sme2
640 // CHECK-UNKNOWN: c16f7bff <unknown>
642 sub za.d[w8, 5, vgx2], {z17.d, z18.d}, z0.d // 11000001-01100000-00011010-00111101
643 // CHECK-INST: sub za.d[w8, 5, vgx2], { z17.d, z18.d }, z0.d
644 // CHECK-ENCODING: [0x3d,0x1a,0x60,0xc1]
645 // CHECK-ERROR: instruction requires: sme2
646 // CHECK-UNKNOWN: c1601a3d <unknown>
648 sub za.d[w8, 5], {z17.d - z18.d}, z0.d // 11000001-01100000-00011010-00111101
649 // CHECK-INST: sub za.d[w8, 5, vgx2], { z17.d, z18.d }, z0.d
650 // CHECK-ENCODING: [0x3d,0x1a,0x60,0xc1]
651 // CHECK-ERROR: instruction requires: sme2
652 // CHECK-UNKNOWN: c1601a3d <unknown>
654 sub za.d[w8, 1, vgx2], {z1.d, z2.d}, z14.d // 11000001-01101110-00011000-00111001
655 // CHECK-INST: sub za.d[w8, 1, vgx2], { z1.d, z2.d }, z14.d
656 // CHECK-ENCODING: [0x39,0x18,0x6e,0xc1]
657 // CHECK-ERROR: instruction requires: sme2
658 // CHECK-UNKNOWN: c16e1839 <unknown>
660 sub za.d[w8, 1], {z1.d - z2.d}, z14.d // 11000001-01101110-00011000-00111001
661 // CHECK-INST: sub za.d[w8, 1, vgx2], { z1.d, z2.d }, z14.d
662 // CHECK-ENCODING: [0x39,0x18,0x6e,0xc1]
663 // CHECK-ERROR: instruction requires: sme2
664 // CHECK-UNKNOWN: c16e1839 <unknown>
666 sub za.d[w10, 0, vgx2], {z19.d, z20.d}, z4.d // 11000001-01100100-01011010-01111000
667 // CHECK-INST: sub za.d[w10, 0, vgx2], { z19.d, z20.d }, z4.d
668 // CHECK-ENCODING: [0x78,0x5a,0x64,0xc1]
669 // CHECK-ERROR: instruction requires: sme2
670 // CHECK-UNKNOWN: c1645a78 <unknown>
672 sub za.d[w10, 0], {z19.d - z20.d}, z4.d // 11000001-01100100-01011010-01111000
673 // CHECK-INST: sub za.d[w10, 0, vgx2], { z19.d, z20.d }, z4.d
674 // CHECK-ENCODING: [0x78,0x5a,0x64,0xc1]
675 // CHECK-ERROR: instruction requires: sme2
676 // CHECK-UNKNOWN: c1645a78 <unknown>
678 sub za.d[w8, 0, vgx2], {z12.d, z13.d}, z2.d // 11000001-01100010-00011001-10011000
679 // CHECK-INST: sub za.d[w8, 0, vgx2], { z12.d, z13.d }, z2.d
680 // CHECK-ENCODING: [0x98,0x19,0x62,0xc1]
681 // CHECK-ERROR: instruction requires: sme2
682 // CHECK-UNKNOWN: c1621998 <unknown>
684 sub za.d[w8, 0], {z12.d - z13.d}, z2.d // 11000001-01100010-00011001-10011000
685 // CHECK-INST: sub za.d[w8, 0, vgx2], { z12.d, z13.d }, z2.d
686 // CHECK-ENCODING: [0x98,0x19,0x62,0xc1]
687 // CHECK-ERROR: instruction requires: sme2
688 // CHECK-UNKNOWN: c1621998 <unknown>
690 sub za.d[w10, 1, vgx2], {z1.d, z2.d}, z10.d // 11000001-01101010-01011000-00111001
691 // CHECK-INST: sub za.d[w10, 1, vgx2], { z1.d, z2.d }, z10.d
692 // CHECK-ENCODING: [0x39,0x58,0x6a,0xc1]
693 // CHECK-ERROR: instruction requires: sme2
694 // CHECK-UNKNOWN: c16a5839 <unknown>
696 sub za.d[w10, 1], {z1.d - z2.d}, z10.d // 11000001-01101010-01011000-00111001
697 // CHECK-INST: sub za.d[w10, 1, vgx2], { z1.d, z2.d }, z10.d
698 // CHECK-ENCODING: [0x39,0x58,0x6a,0xc1]
699 // CHECK-ERROR: instruction requires: sme2
700 // CHECK-UNKNOWN: c16a5839 <unknown>
702 sub za.d[w8, 5, vgx2], {z22.d, z23.d}, z14.d // 11000001-01101110-00011010-11011101
703 // CHECK-INST: sub za.d[w8, 5, vgx2], { z22.d, z23.d }, z14.d
704 // CHECK-ENCODING: [0xdd,0x1a,0x6e,0xc1]
705 // CHECK-ERROR: instruction requires: sme2
706 // CHECK-UNKNOWN: c16e1add <unknown>
708 sub za.d[w8, 5], {z22.d - z23.d}, z14.d // 11000001-01101110-00011010-11011101
709 // CHECK-INST: sub za.d[w8, 5, vgx2], { z22.d, z23.d }, z14.d
710 // CHECK-ENCODING: [0xdd,0x1a,0x6e,0xc1]
711 // CHECK-ERROR: instruction requires: sme2
712 // CHECK-UNKNOWN: c16e1add <unknown>
714 sub za.d[w11, 2, vgx2], {z9.d, z10.d}, z1.d // 11000001-01100001-01111001-00111010
715 // CHECK-INST: sub za.d[w11, 2, vgx2], { z9.d, z10.d }, z1.d
716 // CHECK-ENCODING: [0x3a,0x79,0x61,0xc1]
717 // CHECK-ERROR: instruction requires: sme2
718 // CHECK-UNKNOWN: c161793a <unknown>
720 sub za.d[w11, 2], {z9.d - z10.d}, z1.d // 11000001-01100001-01111001-00111010
721 // CHECK-INST: sub za.d[w11, 2, vgx2], { z9.d, z10.d }, z1.d
722 // CHECK-ENCODING: [0x3a,0x79,0x61,0xc1]
723 // CHECK-ERROR: instruction requires: sme2
724 // CHECK-UNKNOWN: c161793a <unknown>
726 sub za.d[w9, 7, vgx2], {z12.d, z13.d}, z11.d // 11000001-01101011-00111001-10011111
727 // CHECK-INST: sub za.d[w9, 7, vgx2], { z12.d, z13.d }, z11.d
728 // CHECK-ENCODING: [0x9f,0x39,0x6b,0xc1]
729 // CHECK-ERROR: instruction requires: sme2
730 // CHECK-UNKNOWN: c16b399f <unknown>
732 sub za.d[w9, 7], {z12.d - z13.d}, z11.d // 11000001-01101011-00111001-10011111
733 // CHECK-INST: sub za.d[w9, 7, vgx2], { z12.d, z13.d }, z11.d
734 // CHECK-ENCODING: [0x9f,0x39,0x6b,0xc1]
735 // CHECK-ERROR: instruction requires: sme2
736 // CHECK-UNKNOWN: c16b399f <unknown>
739 sub za.d[w8, 0, vgx2], {z0.d, z1.d}, {z0.d, z1.d} // 11000001-11100000-00011000-00011000
740 // CHECK-INST: sub za.d[w8, 0, vgx2], { z0.d, z1.d }, { z0.d, z1.d }
741 // CHECK-ENCODING: [0x18,0x18,0xe0,0xc1]
742 // CHECK-ERROR: instruction requires: sme2
743 // CHECK-UNKNOWN: c1e01818 <unknown>
745 sub za.d[w8, 0], {z0.d - z1.d}, {z0.d - z1.d} // 11000001-11100000-00011000-00011000
746 // CHECK-INST: sub za.d[w8, 0, vgx2], { z0.d, z1.d }, { z0.d, z1.d }
747 // CHECK-ENCODING: [0x18,0x18,0xe0,0xc1]
748 // CHECK-ERROR: instruction requires: sme2
749 // CHECK-UNKNOWN: c1e01818 <unknown>
751 sub za.d[w10, 5, vgx2], {z10.d, z11.d}, {z20.d, z21.d} // 11000001-11110100-01011001-01011101
752 // CHECK-INST: sub za.d[w10, 5, vgx2], { z10.d, z11.d }, { z20.d, z21.d }
753 // CHECK-ENCODING: [0x5d,0x59,0xf4,0xc1]
754 // CHECK-ERROR: instruction requires: sme2
755 // CHECK-UNKNOWN: c1f4595d <unknown>
757 sub za.d[w10, 5], {z10.d - z11.d}, {z20.d - z21.d} // 11000001-11110100-01011001-01011101
758 // CHECK-INST: sub za.d[w10, 5, vgx2], { z10.d, z11.d }, { z20.d, z21.d }
759 // CHECK-ENCODING: [0x5d,0x59,0xf4,0xc1]
760 // CHECK-ERROR: instruction requires: sme2
761 // CHECK-UNKNOWN: c1f4595d <unknown>
763 sub za.d[w11, 7, vgx2], {z12.d, z13.d}, {z8.d, z9.d} // 11000001-11101000-01111001-10011111
764 // CHECK-INST: sub za.d[w11, 7, vgx2], { z12.d, z13.d }, { z8.d, z9.d }
765 // CHECK-ENCODING: [0x9f,0x79,0xe8,0xc1]
766 // CHECK-ERROR: instruction requires: sme2
767 // CHECK-UNKNOWN: c1e8799f <unknown>
769 sub za.d[w11, 7], {z12.d - z13.d}, {z8.d - z9.d} // 11000001-11101000-01111001-10011111
770 // CHECK-INST: sub za.d[w11, 7, vgx2], { z12.d, z13.d }, { z8.d, z9.d }
771 // CHECK-ENCODING: [0x9f,0x79,0xe8,0xc1]
772 // CHECK-ERROR: instruction requires: sme2
773 // CHECK-UNKNOWN: c1e8799f <unknown>
775 sub za.d[w11, 7, vgx2], {z30.d, z31.d}, {z30.d, z31.d} // 11000001-11111110-01111011-11011111
776 // CHECK-INST: sub za.d[w11, 7, vgx2], { z30.d, z31.d }, { z30.d, z31.d }
777 // CHECK-ENCODING: [0xdf,0x7b,0xfe,0xc1]
778 // CHECK-ERROR: instruction requires: sme2
779 // CHECK-UNKNOWN: c1fe7bdf <unknown>
781 sub za.d[w11, 7], {z30.d - z31.d}, {z30.d - z31.d} // 11000001-11111110-01111011-11011111
782 // CHECK-INST: sub za.d[w11, 7, vgx2], { z30.d, z31.d }, { z30.d, z31.d }
783 // CHECK-ENCODING: [0xdf,0x7b,0xfe,0xc1]
784 // CHECK-ERROR: instruction requires: sme2
785 // CHECK-UNKNOWN: c1fe7bdf <unknown>
787 sub za.d[w8, 5, vgx2], {z16.d, z17.d}, {z16.d, z17.d} // 11000001-11110000-00011010-00011101
788 // CHECK-INST: sub za.d[w8, 5, vgx2], { z16.d, z17.d }, { z16.d, z17.d }
789 // CHECK-ENCODING: [0x1d,0x1a,0xf0,0xc1]
790 // CHECK-ERROR: instruction requires: sme2
791 // CHECK-UNKNOWN: c1f01a1d <unknown>
793 sub za.d[w8, 5], {z16.d - z17.d}, {z16.d - z17.d} // 11000001-11110000-00011010-00011101
794 // CHECK-INST: sub za.d[w8, 5, vgx2], { z16.d, z17.d }, { z16.d, z17.d }
795 // CHECK-ENCODING: [0x1d,0x1a,0xf0,0xc1]
796 // CHECK-ERROR: instruction requires: sme2
797 // CHECK-UNKNOWN: c1f01a1d <unknown>
799 sub za.d[w8, 1, vgx2], {z0.d, z1.d}, {z30.d, z31.d} // 11000001-11111110-00011000-00011001
800 // CHECK-INST: sub za.d[w8, 1, vgx2], { z0.d, z1.d }, { z30.d, z31.d }
801 // CHECK-ENCODING: [0x19,0x18,0xfe,0xc1]
802 // CHECK-ERROR: instruction requires: sme2
803 // CHECK-UNKNOWN: c1fe1819 <unknown>
805 sub za.d[w8, 1], {z0.d - z1.d}, {z30.d - z31.d} // 11000001-11111110-00011000-00011001
806 // CHECK-INST: sub za.d[w8, 1, vgx2], { z0.d, z1.d }, { z30.d, z31.d }
807 // CHECK-ENCODING: [0x19,0x18,0xfe,0xc1]
808 // CHECK-ERROR: instruction requires: sme2
809 // CHECK-UNKNOWN: c1fe1819 <unknown>
811 sub za.d[w10, 0, vgx2], {z18.d, z19.d}, {z20.d, z21.d} // 11000001-11110100-01011010-01011000
812 // CHECK-INST: sub za.d[w10, 0, vgx2], { z18.d, z19.d }, { z20.d, z21.d }
813 // CHECK-ENCODING: [0x58,0x5a,0xf4,0xc1]
814 // CHECK-ERROR: instruction requires: sme2
815 // CHECK-UNKNOWN: c1f45a58 <unknown>
817 sub za.d[w10, 0], {z18.d - z19.d}, {z20.d - z21.d} // 11000001-11110100-01011010-01011000
818 // CHECK-INST: sub za.d[w10, 0, vgx2], { z18.d, z19.d }, { z20.d, z21.d }
819 // CHECK-ENCODING: [0x58,0x5a,0xf4,0xc1]
820 // CHECK-ERROR: instruction requires: sme2
821 // CHECK-UNKNOWN: c1f45a58 <unknown>
823 sub za.d[w8, 0, vgx2], {z12.d, z13.d}, {z2.d, z3.d} // 11000001-11100010-00011001-10011000
824 // CHECK-INST: sub za.d[w8, 0, vgx2], { z12.d, z13.d }, { z2.d, z3.d }
825 // CHECK-ENCODING: [0x98,0x19,0xe2,0xc1]
826 // CHECK-ERROR: instruction requires: sme2
827 // CHECK-UNKNOWN: c1e21998 <unknown>
829 sub za.d[w8, 0], {z12.d - z13.d}, {z2.d - z3.d} // 11000001-11100010-00011001-10011000
830 // CHECK-INST: sub za.d[w8, 0, vgx2], { z12.d, z13.d }, { z2.d, z3.d }
831 // CHECK-ENCODING: [0x98,0x19,0xe2,0xc1]
832 // CHECK-ERROR: instruction requires: sme2
833 // CHECK-UNKNOWN: c1e21998 <unknown>
835 sub za.d[w10, 1, vgx2], {z0.d, z1.d}, {z26.d, z27.d} // 11000001-11111010-01011000-00011001
836 // CHECK-INST: sub za.d[w10, 1, vgx2], { z0.d, z1.d }, { z26.d, z27.d }
837 // CHECK-ENCODING: [0x19,0x58,0xfa,0xc1]
838 // CHECK-ERROR: instruction requires: sme2
839 // CHECK-UNKNOWN: c1fa5819 <unknown>
841 sub za.d[w10, 1], {z0.d - z1.d}, {z26.d - z27.d} // 11000001-11111010-01011000-00011001
842 // CHECK-INST: sub za.d[w10, 1, vgx2], { z0.d, z1.d }, { z26.d, z27.d }
843 // CHECK-ENCODING: [0x19,0x58,0xfa,0xc1]
844 // CHECK-ERROR: instruction requires: sme2
845 // CHECK-UNKNOWN: c1fa5819 <unknown>
847 sub za.d[w8, 5, vgx2], {z22.d, z23.d}, {z30.d, z31.d} // 11000001-11111110-00011010-11011101
848 // CHECK-INST: sub za.d[w8, 5, vgx2], { z22.d, z23.d }, { z30.d, z31.d }
849 // CHECK-ENCODING: [0xdd,0x1a,0xfe,0xc1]
850 // CHECK-ERROR: instruction requires: sme2
851 // CHECK-UNKNOWN: c1fe1add <unknown>
853 sub za.d[w8, 5], {z22.d - z23.d}, {z30.d - z31.d} // 11000001-11111110-00011010-11011101
854 // CHECK-INST: sub za.d[w8, 5, vgx2], { z22.d, z23.d }, { z30.d, z31.d }
855 // CHECK-ENCODING: [0xdd,0x1a,0xfe,0xc1]
856 // CHECK-ERROR: instruction requires: sme2
857 // CHECK-UNKNOWN: c1fe1add <unknown>
859 sub za.d[w11, 2, vgx2], {z8.d, z9.d}, {z0.d, z1.d} // 11000001-11100000-01111001-00011010
860 // CHECK-INST: sub za.d[w11, 2, vgx2], { z8.d, z9.d }, { z0.d, z1.d }
861 // CHECK-ENCODING: [0x1a,0x79,0xe0,0xc1]
862 // CHECK-ERROR: instruction requires: sme2
863 // CHECK-UNKNOWN: c1e0791a <unknown>
865 sub za.d[w11, 2], {z8.d - z9.d}, {z0.d - z1.d} // 11000001-11100000-01111001-00011010
866 // CHECK-INST: sub za.d[w11, 2, vgx2], { z8.d, z9.d }, { z0.d, z1.d }
867 // CHECK-ENCODING: [0x1a,0x79,0xe0,0xc1]
868 // CHECK-ERROR: instruction requires: sme2
869 // CHECK-UNKNOWN: c1e0791a <unknown>
871 sub za.d[w9, 7, vgx2], {z12.d, z13.d}, {z10.d, z11.d} // 11000001-11101010-00111001-10011111
872 // CHECK-INST: sub za.d[w9, 7, vgx2], { z12.d, z13.d }, { z10.d, z11.d }
873 // CHECK-ENCODING: [0x9f,0x39,0xea,0xc1]
874 // CHECK-ERROR: instruction requires: sme2
875 // CHECK-UNKNOWN: c1ea399f <unknown>
877 sub za.d[w9, 7], {z12.d - z13.d}, {z10.d - z11.d} // 11000001-11101010-00111001-10011111
878 // CHECK-INST: sub za.d[w9, 7, vgx2], { z12.d, z13.d }, { z10.d, z11.d }
879 // CHECK-ENCODING: [0x9f,0x39,0xea,0xc1]
880 // CHECK-ERROR: instruction requires: sme2
881 // CHECK-UNKNOWN: c1ea399f <unknown>
884 sub za.s[w8, 0, vgx4], {z0.s - z3.s} // 11000001-10100001-00011100-00011000
885 // CHECK-INST: sub za.s[w8, 0, vgx4], { z0.s - z3.s }
886 // CHECK-ENCODING: [0x18,0x1c,0xa1,0xc1]
887 // CHECK-ERROR: instruction requires: sme2
888 // CHECK-UNKNOWN: c1a11c18 <unknown>
890 sub za.s[w8, 0], {z0.s - z3.s} // 11000001-10100001-00011100-00011000
891 // CHECK-INST: sub za.s[w8, 0, vgx4], { z0.s - z3.s }
892 // CHECK-ENCODING: [0x18,0x1c,0xa1,0xc1]
893 // CHECK-ERROR: instruction requires: sme2
894 // CHECK-UNKNOWN: c1a11c18 <unknown>
896 sub za.s[w10, 5, vgx4], {z8.s - z11.s} // 11000001-10100001-01011101-00011101
897 // CHECK-INST: sub za.s[w10, 5, vgx4], { z8.s - z11.s }
898 // CHECK-ENCODING: [0x1d,0x5d,0xa1,0xc1]
899 // CHECK-ERROR: instruction requires: sme2
900 // CHECK-UNKNOWN: c1a15d1d <unknown>
902 sub za.s[w10, 5], {z8.s - z11.s} // 11000001-10100001-01011101-00011101
903 // CHECK-INST: sub za.s[w10, 5, vgx4], { z8.s - z11.s }
904 // CHECK-ENCODING: [0x1d,0x5d,0xa1,0xc1]
905 // CHECK-ERROR: instruction requires: sme2
906 // CHECK-UNKNOWN: c1a15d1d <unknown>
908 sub za.s[w11, 7, vgx4], {z12.s - z15.s} // 11000001-10100001-01111101-10011111
909 // CHECK-INST: sub za.s[w11, 7, vgx4], { z12.s - z15.s }
910 // CHECK-ENCODING: [0x9f,0x7d,0xa1,0xc1]
911 // CHECK-ERROR: instruction requires: sme2
912 // CHECK-UNKNOWN: c1a17d9f <unknown>
914 sub za.s[w11, 7], {z12.s - z15.s} // 11000001-10100001-01111101-10011111
915 // CHECK-INST: sub za.s[w11, 7, vgx4], { z12.s - z15.s }
916 // CHECK-ENCODING: [0x9f,0x7d,0xa1,0xc1]
917 // CHECK-ERROR: instruction requires: sme2
918 // CHECK-UNKNOWN: c1a17d9f <unknown>
920 sub za.s[w11, 7, vgx4], {z28.s - z31.s} // 11000001-10100001-01111111-10011111
921 // CHECK-INST: sub za.s[w11, 7, vgx4], { z28.s - z31.s }
922 // CHECK-ENCODING: [0x9f,0x7f,0xa1,0xc1]
923 // CHECK-ERROR: instruction requires: sme2
924 // CHECK-UNKNOWN: c1a17f9f <unknown>
926 sub za.s[w11, 7], {z28.s - z31.s} // 11000001-10100001-01111111-10011111
927 // CHECK-INST: sub za.s[w11, 7, vgx4], { z28.s - z31.s }
928 // CHECK-ENCODING: [0x9f,0x7f,0xa1,0xc1]
929 // CHECK-ERROR: instruction requires: sme2
930 // CHECK-UNKNOWN: c1a17f9f <unknown>
932 sub za.s[w8, 5, vgx4], {z16.s - z19.s} // 11000001-10100001-00011110-00011101
933 // CHECK-INST: sub za.s[w8, 5, vgx4], { z16.s - z19.s }
934 // CHECK-ENCODING: [0x1d,0x1e,0xa1,0xc1]
935 // CHECK-ERROR: instruction requires: sme2
936 // CHECK-UNKNOWN: c1a11e1d <unknown>
938 sub za.s[w8, 5], {z16.s - z19.s} // 11000001-10100001-00011110-00011101
939 // CHECK-INST: sub za.s[w8, 5, vgx4], { z16.s - z19.s }
940 // CHECK-ENCODING: [0x1d,0x1e,0xa1,0xc1]
941 // CHECK-ERROR: instruction requires: sme2
942 // CHECK-UNKNOWN: c1a11e1d <unknown>
944 sub za.s[w8, 1, vgx4], {z0.s - z3.s} // 11000001-10100001-00011100-00011001
945 // CHECK-INST: sub za.s[w8, 1, vgx4], { z0.s - z3.s }
946 // CHECK-ENCODING: [0x19,0x1c,0xa1,0xc1]
947 // CHECK-ERROR: instruction requires: sme2
948 // CHECK-UNKNOWN: c1a11c19 <unknown>
950 sub za.s[w8, 1], {z0.s - z3.s} // 11000001-10100001-00011100-00011001
951 // CHECK-INST: sub za.s[w8, 1, vgx4], { z0.s - z3.s }
952 // CHECK-ENCODING: [0x19,0x1c,0xa1,0xc1]
953 // CHECK-ERROR: instruction requires: sme2
954 // CHECK-UNKNOWN: c1a11c19 <unknown>
956 sub za.s[w10, 0, vgx4], {z16.s - z19.s} // 11000001-10100001-01011110-00011000
957 // CHECK-INST: sub za.s[w10, 0, vgx4], { z16.s - z19.s }
958 // CHECK-ENCODING: [0x18,0x5e,0xa1,0xc1]
959 // CHECK-ERROR: instruction requires: sme2
960 // CHECK-UNKNOWN: c1a15e18 <unknown>
962 sub za.s[w10, 0], {z16.s - z19.s} // 11000001-10100001-01011110-00011000
963 // CHECK-INST: sub za.s[w10, 0, vgx4], { z16.s - z19.s }
964 // CHECK-ENCODING: [0x18,0x5e,0xa1,0xc1]
965 // CHECK-ERROR: instruction requires: sme2
966 // CHECK-UNKNOWN: c1a15e18 <unknown>
968 sub za.s[w8, 0, vgx4], {z12.s - z15.s} // 11000001-10100001-00011101-10011000
969 // CHECK-INST: sub za.s[w8, 0, vgx4], { z12.s - z15.s }
970 // CHECK-ENCODING: [0x98,0x1d,0xa1,0xc1]
971 // CHECK-ERROR: instruction requires: sme2
972 // CHECK-UNKNOWN: c1a11d98 <unknown>
974 sub za.s[w8, 0], {z12.s - z15.s} // 11000001-10100001-00011101-10011000
975 // CHECK-INST: sub za.s[w8, 0, vgx4], { z12.s - z15.s }
976 // CHECK-ENCODING: [0x98,0x1d,0xa1,0xc1]
977 // CHECK-ERROR: instruction requires: sme2
978 // CHECK-UNKNOWN: c1a11d98 <unknown>
980 sub za.s[w10, 1, vgx4], {z0.s - z3.s} // 11000001-10100001-01011100-00011001
981 // CHECK-INST: sub za.s[w10, 1, vgx4], { z0.s - z3.s }
982 // CHECK-ENCODING: [0x19,0x5c,0xa1,0xc1]
983 // CHECK-ERROR: instruction requires: sme2
984 // CHECK-UNKNOWN: c1a15c19 <unknown>
986 sub za.s[w10, 1], {z0.s - z3.s} // 11000001-10100001-01011100-00011001
987 // CHECK-INST: sub za.s[w10, 1, vgx4], { z0.s - z3.s }
988 // CHECK-ENCODING: [0x19,0x5c,0xa1,0xc1]
989 // CHECK-ERROR: instruction requires: sme2
990 // CHECK-UNKNOWN: c1a15c19 <unknown>
992 sub za.s[w8, 5, vgx4], {z20.s - z23.s} // 11000001-10100001-00011110-10011101
993 // CHECK-INST: sub za.s[w8, 5, vgx4], { z20.s - z23.s }
994 // CHECK-ENCODING: [0x9d,0x1e,0xa1,0xc1]
995 // CHECK-ERROR: instruction requires: sme2
996 // CHECK-UNKNOWN: c1a11e9d <unknown>
998 sub za.s[w8, 5], {z20.s - z23.s} // 11000001-10100001-00011110-10011101
999 // CHECK-INST: sub za.s[w8, 5, vgx4], { z20.s - z23.s }
1000 // CHECK-ENCODING: [0x9d,0x1e,0xa1,0xc1]
1001 // CHECK-ERROR: instruction requires: sme2
1002 // CHECK-UNKNOWN: c1a11e9d <unknown>
1004 sub za.s[w11, 2, vgx4], {z8.s - z11.s} // 11000001-10100001-01111101-00011010
1005 // CHECK-INST: sub za.s[w11, 2, vgx4], { z8.s - z11.s }
1006 // CHECK-ENCODING: [0x1a,0x7d,0xa1,0xc1]
1007 // CHECK-ERROR: instruction requires: sme2
1008 // CHECK-UNKNOWN: c1a17d1a <unknown>
1010 sub za.s[w11, 2], {z8.s - z11.s} // 11000001-10100001-01111101-00011010
1011 // CHECK-INST: sub za.s[w11, 2, vgx4], { z8.s - z11.s }
1012 // CHECK-ENCODING: [0x1a,0x7d,0xa1,0xc1]
1013 // CHECK-ERROR: instruction requires: sme2
1014 // CHECK-UNKNOWN: c1a17d1a <unknown>
1016 sub za.s[w9, 7, vgx4], {z12.s - z15.s} // 11000001-10100001-00111101-10011111
1017 // CHECK-INST: sub za.s[w9, 7, vgx4], { z12.s - z15.s }
1018 // CHECK-ENCODING: [0x9f,0x3d,0xa1,0xc1]
1019 // CHECK-ERROR: instruction requires: sme2
1020 // CHECK-UNKNOWN: c1a13d9f <unknown>
1022 sub za.s[w9, 7], {z12.s - z15.s} // 11000001-10100001-00111101-10011111
1023 // CHECK-INST: sub za.s[w9, 7, vgx4], { z12.s - z15.s }
1024 // CHECK-ENCODING: [0x9f,0x3d,0xa1,0xc1]
1025 // CHECK-ERROR: instruction requires: sme2
1026 // CHECK-UNKNOWN: c1a13d9f <unknown>
1029 sub za.s[w8, 0, vgx4], {z0.s - z3.s}, z0.s // 11000001-00110000-00011000-00011000
1030 // CHECK-INST: sub za.s[w8, 0, vgx4], { z0.s - z3.s }, z0.s
1031 // CHECK-ENCODING: [0x18,0x18,0x30,0xc1]
1032 // CHECK-ERROR: instruction requires: sme2
1033 // CHECK-UNKNOWN: c1301818 <unknown>
1035 sub za.s[w8, 0], {z0.s - z3.s}, z0.s // 11000001-00110000-00011000-00011000
1036 // CHECK-INST: sub za.s[w8, 0, vgx4], { z0.s - z3.s }, z0.s
1037 // CHECK-ENCODING: [0x18,0x18,0x30,0xc1]
1038 // CHECK-ERROR: instruction requires: sme2
1039 // CHECK-UNKNOWN: c1301818 <unknown>
1041 sub za.s[w10, 5, vgx4], {z10.s - z13.s}, z5.s // 11000001-00110101-01011001-01011101
1042 // CHECK-INST: sub za.s[w10, 5, vgx4], { z10.s - z13.s }, z5.s
1043 // CHECK-ENCODING: [0x5d,0x59,0x35,0xc1]
1044 // CHECK-ERROR: instruction requires: sme2
1045 // CHECK-UNKNOWN: c135595d <unknown>
1047 sub za.s[w10, 5], {z10.s - z13.s}, z5.s // 11000001-00110101-01011001-01011101
1048 // CHECK-INST: sub za.s[w10, 5, vgx4], { z10.s - z13.s }, z5.s
1049 // CHECK-ENCODING: [0x5d,0x59,0x35,0xc1]
1050 // CHECK-ERROR: instruction requires: sme2
1051 // CHECK-UNKNOWN: c135595d <unknown>
1053 sub za.s[w11, 7, vgx4], {z13.s - z16.s}, z8.s // 11000001-00111000-01111001-10111111
1054 // CHECK-INST: sub za.s[w11, 7, vgx4], { z13.s - z16.s }, z8.s
1055 // CHECK-ENCODING: [0xbf,0x79,0x38,0xc1]
1056 // CHECK-ERROR: instruction requires: sme2
1057 // CHECK-UNKNOWN: c13879bf <unknown>
1059 sub za.s[w11, 7], {z13.s - z16.s}, z8.s // 11000001-00111000-01111001-10111111
1060 // CHECK-INST: sub za.s[w11, 7, vgx4], { z13.s - z16.s }, z8.s
1061 // CHECK-ENCODING: [0xbf,0x79,0x38,0xc1]
1062 // CHECK-ERROR: instruction requires: sme2
1063 // CHECK-UNKNOWN: c13879bf <unknown>
1065 sub za.s[w11, 7, vgx4], {z31.s - z2.s}, z15.s // 11000001-00111111-01111011-11111111
1066 // CHECK-INST: sub za.s[w11, 7, vgx4], { z31.s, z0.s, z1.s, z2.s }, z15.s
1067 // CHECK-ENCODING: [0xff,0x7b,0x3f,0xc1]
1068 // CHECK-ERROR: instruction requires: sme2
1069 // CHECK-UNKNOWN: c13f7bff <unknown>
1071 sub za.s[w11, 7], {z31.s - z2.s}, z15.s // 11000001-00111111-01111011-11111111
1072 // CHECK-INST: sub za.s[w11, 7, vgx4], { z31.s, z0.s, z1.s, z2.s }, z15.s
1073 // CHECK-ENCODING: [0xff,0x7b,0x3f,0xc1]
1074 // CHECK-ERROR: instruction requires: sme2
1075 // CHECK-UNKNOWN: c13f7bff <unknown>
1077 sub za.s[w8, 5, vgx4], {z17.s - z20.s}, z0.s // 11000001-00110000-00011010-00111101
1078 // CHECK-INST: sub za.s[w8, 5, vgx4], { z17.s - z20.s }, z0.s
1079 // CHECK-ENCODING: [0x3d,0x1a,0x30,0xc1]
1080 // CHECK-ERROR: instruction requires: sme2
1081 // CHECK-UNKNOWN: c1301a3d <unknown>
1083 sub za.s[w8, 5], {z17.s - z20.s}, z0.s // 11000001-00110000-00011010-00111101
1084 // CHECK-INST: sub za.s[w8, 5, vgx4], { z17.s - z20.s }, z0.s
1085 // CHECK-ENCODING: [0x3d,0x1a,0x30,0xc1]
1086 // CHECK-ERROR: instruction requires: sme2
1087 // CHECK-UNKNOWN: c1301a3d <unknown>
1089 sub za.s[w8, 1, vgx4], {z1.s - z4.s}, z14.s // 11000001-00111110-00011000-00111001
1090 // CHECK-INST: sub za.s[w8, 1, vgx4], { z1.s - z4.s }, z14.s
1091 // CHECK-ENCODING: [0x39,0x18,0x3e,0xc1]
1092 // CHECK-ERROR: instruction requires: sme2
1093 // CHECK-UNKNOWN: c13e1839 <unknown>
1095 sub za.s[w8, 1], {z1.s - z4.s}, z14.s // 11000001-00111110-00011000-00111001
1096 // CHECK-INST: sub za.s[w8, 1, vgx4], { z1.s - z4.s }, z14.s
1097 // CHECK-ENCODING: [0x39,0x18,0x3e,0xc1]
1098 // CHECK-ERROR: instruction requires: sme2
1099 // CHECK-UNKNOWN: c13e1839 <unknown>
1101 sub za.s[w10, 0, vgx4], {z19.s - z22.s}, z4.s // 11000001-00110100-01011010-01111000
1102 // CHECK-INST: sub za.s[w10, 0, vgx4], { z19.s - z22.s }, z4.s
1103 // CHECK-ENCODING: [0x78,0x5a,0x34,0xc1]
1104 // CHECK-ERROR: instruction requires: sme2
1105 // CHECK-UNKNOWN: c1345a78 <unknown>
1107 sub za.s[w10, 0], {z19.s - z22.s}, z4.s // 11000001-00110100-01011010-01111000
1108 // CHECK-INST: sub za.s[w10, 0, vgx4], { z19.s - z22.s }, z4.s
1109 // CHECK-ENCODING: [0x78,0x5a,0x34,0xc1]
1110 // CHECK-ERROR: instruction requires: sme2
1111 // CHECK-UNKNOWN: c1345a78 <unknown>
1113 sub za.s[w8, 0, vgx4], {z12.s - z15.s}, z2.s // 11000001-00110010-00011001-10011000
1114 // CHECK-INST: sub za.s[w8, 0, vgx4], { z12.s - z15.s }, z2.s
1115 // CHECK-ENCODING: [0x98,0x19,0x32,0xc1]
1116 // CHECK-ERROR: instruction requires: sme2
1117 // CHECK-UNKNOWN: c1321998 <unknown>
1119 sub za.s[w8, 0], {z12.s - z15.s}, z2.s // 11000001-00110010-00011001-10011000
1120 // CHECK-INST: sub za.s[w8, 0, vgx4], { z12.s - z15.s }, z2.s
1121 // CHECK-ENCODING: [0x98,0x19,0x32,0xc1]
1122 // CHECK-ERROR: instruction requires: sme2
1123 // CHECK-UNKNOWN: c1321998 <unknown>
1125 sub za.s[w10, 1, vgx4], {z1.s - z4.s}, z10.s // 11000001-00111010-01011000-00111001
1126 // CHECK-INST: sub za.s[w10, 1, vgx4], { z1.s - z4.s }, z10.s
1127 // CHECK-ENCODING: [0x39,0x58,0x3a,0xc1]
1128 // CHECK-ERROR: instruction requires: sme2
1129 // CHECK-UNKNOWN: c13a5839 <unknown>
1131 sub za.s[w10, 1], {z1.s - z4.s}, z10.s // 11000001-00111010-01011000-00111001
1132 // CHECK-INST: sub za.s[w10, 1, vgx4], { z1.s - z4.s }, z10.s
1133 // CHECK-ENCODING: [0x39,0x58,0x3a,0xc1]
1134 // CHECK-ERROR: instruction requires: sme2
1135 // CHECK-UNKNOWN: c13a5839 <unknown>
1137 sub za.s[w8, 5, vgx4], {z22.s - z25.s}, z14.s // 11000001-00111110-00011010-11011101
1138 // CHECK-INST: sub za.s[w8, 5, vgx4], { z22.s - z25.s }, z14.s
1139 // CHECK-ENCODING: [0xdd,0x1a,0x3e,0xc1]
1140 // CHECK-ERROR: instruction requires: sme2
1141 // CHECK-UNKNOWN: c13e1add <unknown>
1143 sub za.s[w8, 5], {z22.s - z25.s}, z14.s // 11000001-00111110-00011010-11011101
1144 // CHECK-INST: sub za.s[w8, 5, vgx4], { z22.s - z25.s }, z14.s
1145 // CHECK-ENCODING: [0xdd,0x1a,0x3e,0xc1]
1146 // CHECK-ERROR: instruction requires: sme2
1147 // CHECK-UNKNOWN: c13e1add <unknown>
1149 sub za.s[w11, 2, vgx4], {z9.s - z12.s}, z1.s // 11000001-00110001-01111001-00111010
1150 // CHECK-INST: sub za.s[w11, 2, vgx4], { z9.s - z12.s }, z1.s
1151 // CHECK-ENCODING: [0x3a,0x79,0x31,0xc1]
1152 // CHECK-ERROR: instruction requires: sme2
1153 // CHECK-UNKNOWN: c131793a <unknown>
1155 sub za.s[w11, 2], {z9.s - z12.s}, z1.s // 11000001-00110001-01111001-00111010
1156 // CHECK-INST: sub za.s[w11, 2, vgx4], { z9.s - z12.s }, z1.s
1157 // CHECK-ENCODING: [0x3a,0x79,0x31,0xc1]
1158 // CHECK-ERROR: instruction requires: sme2
1159 // CHECK-UNKNOWN: c131793a <unknown>
1161 sub za.s[w9, 7, vgx4], {z12.s - z15.s}, z11.s // 11000001-00111011-00111001-10011111
1162 // CHECK-INST: sub za.s[w9, 7, vgx4], { z12.s - z15.s }, z11.s
1163 // CHECK-ENCODING: [0x9f,0x39,0x3b,0xc1]
1164 // CHECK-ERROR: instruction requires: sme2
1165 // CHECK-UNKNOWN: c13b399f <unknown>
1167 sub za.s[w9, 7], {z12.s - z15.s}, z11.s // 11000001-00111011-00111001-10011111
1168 // CHECK-INST: sub za.s[w9, 7, vgx4], { z12.s - z15.s }, z11.s
1169 // CHECK-ENCODING: [0x9f,0x39,0x3b,0xc1]
1170 // CHECK-ERROR: instruction requires: sme2
1171 // CHECK-UNKNOWN: c13b399f <unknown>
1174 sub za.s[w8, 0, vgx4], {z0.s - z3.s}, {z0.s - z3.s} // 11000001-10100001-00011000-00011000
1175 // CHECK-INST: sub za.s[w8, 0, vgx4], { z0.s - z3.s }, { z0.s - z3.s }
1176 // CHECK-ENCODING: [0x18,0x18,0xa1,0xc1]
1177 // CHECK-ERROR: instruction requires: sme2
1178 // CHECK-UNKNOWN: c1a11818 <unknown>
1180 sub za.s[w8, 0], {z0.s - z3.s}, {z0.s - z3.s} // 11000001-10100001-00011000-00011000
1181 // CHECK-INST: sub za.s[w8, 0, vgx4], { z0.s - z3.s }, { z0.s - z3.s }
1182 // CHECK-ENCODING: [0x18,0x18,0xa1,0xc1]
1183 // CHECK-ERROR: instruction requires: sme2
1184 // CHECK-UNKNOWN: c1a11818 <unknown>
1186 sub za.s[w10, 5, vgx4], {z8.s - z11.s}, {z20.s - z23.s} // 11000001-10110101-01011001-00011101
1187 // CHECK-INST: sub za.s[w10, 5, vgx4], { z8.s - z11.s }, { z20.s - z23.s }
1188 // CHECK-ENCODING: [0x1d,0x59,0xb5,0xc1]
1189 // CHECK-ERROR: instruction requires: sme2
1190 // CHECK-UNKNOWN: c1b5591d <unknown>
1192 sub za.s[w10, 5], {z8.s - z11.s}, {z20.s - z23.s} // 11000001-10110101-01011001-00011101
1193 // CHECK-INST: sub za.s[w10, 5, vgx4], { z8.s - z11.s }, { z20.s - z23.s }
1194 // CHECK-ENCODING: [0x1d,0x59,0xb5,0xc1]
1195 // CHECK-ERROR: instruction requires: sme2
1196 // CHECK-UNKNOWN: c1b5591d <unknown>
1198 sub za.s[w11, 7, vgx4], {z12.s - z15.s}, {z8.s - z11.s} // 11000001-10101001-01111001-10011111
1199 // CHECK-INST: sub za.s[w11, 7, vgx4], { z12.s - z15.s }, { z8.s - z11.s }
1200 // CHECK-ENCODING: [0x9f,0x79,0xa9,0xc1]
1201 // CHECK-ERROR: instruction requires: sme2
1202 // CHECK-UNKNOWN: c1a9799f <unknown>
1204 sub za.s[w11, 7], {z12.s - z15.s}, {z8.s - z11.s} // 11000001-10101001-01111001-10011111
1205 // CHECK-INST: sub za.s[w11, 7, vgx4], { z12.s - z15.s }, { z8.s - z11.s }
1206 // CHECK-ENCODING: [0x9f,0x79,0xa9,0xc1]
1207 // CHECK-ERROR: instruction requires: sme2
1208 // CHECK-UNKNOWN: c1a9799f <unknown>
1210 sub za.s[w11, 7, vgx4], {z28.s - z31.s}, {z28.s - z31.s} // 11000001-10111101-01111011-10011111
1211 // CHECK-INST: sub za.s[w11, 7, vgx4], { z28.s - z31.s }, { z28.s - z31.s }
1212 // CHECK-ENCODING: [0x9f,0x7b,0xbd,0xc1]
1213 // CHECK-ERROR: instruction requires: sme2
1214 // CHECK-UNKNOWN: c1bd7b9f <unknown>
1216 sub za.s[w11, 7], {z28.s - z31.s}, {z28.s - z31.s} // 11000001-10111101-01111011-10011111
1217 // CHECK-INST: sub za.s[w11, 7, vgx4], { z28.s - z31.s }, { z28.s - z31.s }
1218 // CHECK-ENCODING: [0x9f,0x7b,0xbd,0xc1]
1219 // CHECK-ERROR: instruction requires: sme2
1220 // CHECK-UNKNOWN: c1bd7b9f <unknown>
1222 sub za.s[w8, 5, vgx4], {z16.s - z19.s}, {z16.s - z19.s} // 11000001-10110001-00011010-00011101
1223 // CHECK-INST: sub za.s[w8, 5, vgx4], { z16.s - z19.s }, { z16.s - z19.s }
1224 // CHECK-ENCODING: [0x1d,0x1a,0xb1,0xc1]
1225 // CHECK-ERROR: instruction requires: sme2
1226 // CHECK-UNKNOWN: c1b11a1d <unknown>
1228 sub za.s[w8, 5], {z16.s - z19.s}, {z16.s - z19.s} // 11000001-10110001-00011010-00011101
1229 // CHECK-INST: sub za.s[w8, 5, vgx4], { z16.s - z19.s }, { z16.s - z19.s }
1230 // CHECK-ENCODING: [0x1d,0x1a,0xb1,0xc1]
1231 // CHECK-ERROR: instruction requires: sme2
1232 // CHECK-UNKNOWN: c1b11a1d <unknown>
1234 sub za.s[w8, 1, vgx4], {z0.s - z3.s}, {z28.s - z31.s} // 11000001-10111101-00011000-00011001
1235 // CHECK-INST: sub za.s[w8, 1, vgx4], { z0.s - z3.s }, { z28.s - z31.s }
1236 // CHECK-ENCODING: [0x19,0x18,0xbd,0xc1]
1237 // CHECK-ERROR: instruction requires: sme2
1238 // CHECK-UNKNOWN: c1bd1819 <unknown>
1240 sub za.s[w8, 1], {z0.s - z3.s}, {z28.s - z31.s} // 11000001-10111101-00011000-00011001
1241 // CHECK-INST: sub za.s[w8, 1, vgx4], { z0.s - z3.s }, { z28.s - z31.s }
1242 // CHECK-ENCODING: [0x19,0x18,0xbd,0xc1]
1243 // CHECK-ERROR: instruction requires: sme2
1244 // CHECK-UNKNOWN: c1bd1819 <unknown>
1246 sub za.s[w10, 0, vgx4], {z16.s - z19.s}, {z20.s - z23.s} // 11000001-10110101-01011010-00011000
1247 // CHECK-INST: sub za.s[w10, 0, vgx4], { z16.s - z19.s }, { z20.s - z23.s }
1248 // CHECK-ENCODING: [0x18,0x5a,0xb5,0xc1]
1249 // CHECK-ERROR: instruction requires: sme2
1250 // CHECK-UNKNOWN: c1b55a18 <unknown>
1252 sub za.s[w10, 0], {z16.s - z19.s}, {z20.s - z23.s} // 11000001-10110101-01011010-00011000
1253 // CHECK-INST: sub za.s[w10, 0, vgx4], { z16.s - z19.s }, { z20.s - z23.s }
1254 // CHECK-ENCODING: [0x18,0x5a,0xb5,0xc1]
1255 // CHECK-ERROR: instruction requires: sme2
1256 // CHECK-UNKNOWN: c1b55a18 <unknown>
1258 sub za.s[w8, 0, vgx4], {z12.s - z15.s}, {z0.s - z3.s} // 11000001-10100001-00011001-10011000
1259 // CHECK-INST: sub za.s[w8, 0, vgx4], { z12.s - z15.s }, { z0.s - z3.s }
1260 // CHECK-ENCODING: [0x98,0x19,0xa1,0xc1]
1261 // CHECK-ERROR: instruction requires: sme2
1262 // CHECK-UNKNOWN: c1a11998 <unknown>
1264 sub za.s[w8, 0], {z12.s - z15.s}, {z0.s - z3.s} // 11000001-10100001-00011001-10011000
1265 // CHECK-INST: sub za.s[w8, 0, vgx4], { z12.s - z15.s }, { z0.s - z3.s }
1266 // CHECK-ENCODING: [0x98,0x19,0xa1,0xc1]
1267 // CHECK-ERROR: instruction requires: sme2
1268 // CHECK-UNKNOWN: c1a11998 <unknown>
1270 sub za.s[w10, 1, vgx4], {z0.s - z3.s}, {z24.s - z27.s} // 11000001-10111001-01011000-00011001
1271 // CHECK-INST: sub za.s[w10, 1, vgx4], { z0.s - z3.s }, { z24.s - z27.s }
1272 // CHECK-ENCODING: [0x19,0x58,0xb9,0xc1]
1273 // CHECK-ERROR: instruction requires: sme2
1274 // CHECK-UNKNOWN: c1b95819 <unknown>
1276 sub za.s[w10, 1], {z0.s - z3.s}, {z24.s - z27.s} // 11000001-10111001-01011000-00011001
1277 // CHECK-INST: sub za.s[w10, 1, vgx4], { z0.s - z3.s }, { z24.s - z27.s }
1278 // CHECK-ENCODING: [0x19,0x58,0xb9,0xc1]
1279 // CHECK-ERROR: instruction requires: sme2
1280 // CHECK-UNKNOWN: c1b95819 <unknown>
1282 sub za.s[w8, 5, vgx4], {z20.s - z23.s}, {z28.s - z31.s} // 11000001-10111101-00011010-10011101
1283 // CHECK-INST: sub za.s[w8, 5, vgx4], { z20.s - z23.s }, { z28.s - z31.s }
1284 // CHECK-ENCODING: [0x9d,0x1a,0xbd,0xc1]
1285 // CHECK-ERROR: instruction requires: sme2
1286 // CHECK-UNKNOWN: c1bd1a9d <unknown>
1288 sub za.s[w8, 5], {z20.s - z23.s}, {z28.s - z31.s} // 11000001-10111101-00011010-10011101
1289 // CHECK-INST: sub za.s[w8, 5, vgx4], { z20.s - z23.s }, { z28.s - z31.s }
1290 // CHECK-ENCODING: [0x9d,0x1a,0xbd,0xc1]
1291 // CHECK-ERROR: instruction requires: sme2
1292 // CHECK-UNKNOWN: c1bd1a9d <unknown>
1294 sub za.s[w11, 2, vgx4], {z8.s - z11.s}, {z0.s - z3.s} // 11000001-10100001-01111001-00011010
1295 // CHECK-INST: sub za.s[w11, 2, vgx4], { z8.s - z11.s }, { z0.s - z3.s }
1296 // CHECK-ENCODING: [0x1a,0x79,0xa1,0xc1]
1297 // CHECK-ERROR: instruction requires: sme2
1298 // CHECK-UNKNOWN: c1a1791a <unknown>
1300 sub za.s[w11, 2], {z8.s - z11.s}, {z0.s - z3.s} // 11000001-10100001-01111001-00011010
1301 // CHECK-INST: sub za.s[w11, 2, vgx4], { z8.s - z11.s }, { z0.s - z3.s }
1302 // CHECK-ENCODING: [0x1a,0x79,0xa1,0xc1]
1303 // CHECK-ERROR: instruction requires: sme2
1304 // CHECK-UNKNOWN: c1a1791a <unknown>
1306 sub za.s[w9, 7, vgx4], {z12.s - z15.s}, {z8.s - z11.s} // 11000001-10101001-00111001-10011111
1307 // CHECK-INST: sub za.s[w9, 7, vgx4], { z12.s - z15.s }, { z8.s - z11.s }
1308 // CHECK-ENCODING: [0x9f,0x39,0xa9,0xc1]
1309 // CHECK-ERROR: instruction requires: sme2
1310 // CHECK-UNKNOWN: c1a9399f <unknown>
1312 sub za.s[w9, 7], {z12.s - z15.s}, {z8.s - z11.s} // 11000001-10101001-00111001-10011111
1313 // CHECK-INST: sub za.s[w9, 7, vgx4], { z12.s - z15.s }, { z8.s - z11.s }
1314 // CHECK-ENCODING: [0x9f,0x39,0xa9,0xc1]
1315 // CHECK-ERROR: instruction requires: sme2
1316 // CHECK-UNKNOWN: c1a9399f <unknown>
1319 sub za.d[w8, 0, vgx4], {z0.d - z3.d} // 11000001-11100001-00011100-00011000
1320 // CHECK-INST: sub za.d[w8, 0, vgx4], { z0.d - z3.d }
1321 // CHECK-ENCODING: [0x18,0x1c,0xe1,0xc1]
1322 // CHECK-ERROR: instruction requires: sme2
1323 // CHECK-UNKNOWN: c1e11c18 <unknown>
1325 sub za.d[w8, 0], {z0.d - z3.d} // 11000001-11100001-00011100-00011000
1326 // CHECK-INST: sub za.d[w8, 0, vgx4], { z0.d - z3.d }
1327 // CHECK-ENCODING: [0x18,0x1c,0xe1,0xc1]
1328 // CHECK-ERROR: instruction requires: sme2
1329 // CHECK-UNKNOWN: c1e11c18 <unknown>
1331 sub za.d[w10, 5, vgx4], {z8.d - z11.d} // 11000001-11100001-01011101-00011101
1332 // CHECK-INST: sub za.d[w10, 5, vgx4], { z8.d - z11.d }
1333 // CHECK-ENCODING: [0x1d,0x5d,0xe1,0xc1]
1334 // CHECK-ERROR: instruction requires: sme2
1335 // CHECK-UNKNOWN: c1e15d1d <unknown>
1337 sub za.d[w10, 5], {z8.d - z11.d} // 11000001-11100001-01011101-00011101
1338 // CHECK-INST: sub za.d[w10, 5, vgx4], { z8.d - z11.d }
1339 // CHECK-ENCODING: [0x1d,0x5d,0xe1,0xc1]
1340 // CHECK-ERROR: instruction requires: sme2
1341 // CHECK-UNKNOWN: c1e15d1d <unknown>
1343 sub za.d[w11, 7, vgx4], {z12.d - z15.d} // 11000001-11100001-01111101-10011111
1344 // CHECK-INST: sub za.d[w11, 7, vgx4], { z12.d - z15.d }
1345 // CHECK-ENCODING: [0x9f,0x7d,0xe1,0xc1]
1346 // CHECK-ERROR: instruction requires: sme2
1347 // CHECK-UNKNOWN: c1e17d9f <unknown>
1349 sub za.d[w11, 7], {z12.d - z15.d} // 11000001-11100001-01111101-10011111
1350 // CHECK-INST: sub za.d[w11, 7, vgx4], { z12.d - z15.d }
1351 // CHECK-ENCODING: [0x9f,0x7d,0xe1,0xc1]
1352 // CHECK-ERROR: instruction requires: sme2
1353 // CHECK-UNKNOWN: c1e17d9f <unknown>
1355 sub za.d[w11, 7, vgx4], {z28.d - z31.d} // 11000001-11100001-01111111-10011111
1356 // CHECK-INST: sub za.d[w11, 7, vgx4], { z28.d - z31.d }
1357 // CHECK-ENCODING: [0x9f,0x7f,0xe1,0xc1]
1358 // CHECK-ERROR: instruction requires: sme2
1359 // CHECK-UNKNOWN: c1e17f9f <unknown>
1361 sub za.d[w11, 7], {z28.d - z31.d} // 11000001-11100001-01111111-10011111
1362 // CHECK-INST: sub za.d[w11, 7, vgx4], { z28.d - z31.d }
1363 // CHECK-ENCODING: [0x9f,0x7f,0xe1,0xc1]
1364 // CHECK-ERROR: instruction requires: sme2
1365 // CHECK-UNKNOWN: c1e17f9f <unknown>
1367 sub za.d[w8, 5, vgx4], {z16.d - z19.d} // 11000001-11100001-00011110-00011101
1368 // CHECK-INST: sub za.d[w8, 5, vgx4], { z16.d - z19.d }
1369 // CHECK-ENCODING: [0x1d,0x1e,0xe1,0xc1]
1370 // CHECK-ERROR: instruction requires: sme2
1371 // CHECK-UNKNOWN: c1e11e1d <unknown>
1373 sub za.d[w8, 5], {z16.d - z19.d} // 11000001-11100001-00011110-00011101
1374 // CHECK-INST: sub za.d[w8, 5, vgx4], { z16.d - z19.d }
1375 // CHECK-ENCODING: [0x1d,0x1e,0xe1,0xc1]
1376 // CHECK-ERROR: instruction requires: sme2
1377 // CHECK-UNKNOWN: c1e11e1d <unknown>
1379 sub za.d[w8, 1, vgx4], {z0.d - z3.d} // 11000001-11100001-00011100-00011001
1380 // CHECK-INST: sub za.d[w8, 1, vgx4], { z0.d - z3.d }
1381 // CHECK-ENCODING: [0x19,0x1c,0xe1,0xc1]
1382 // CHECK-ERROR: instruction requires: sme2
1383 // CHECK-UNKNOWN: c1e11c19 <unknown>
1385 sub za.d[w8, 1], {z0.d - z3.d} // 11000001-11100001-00011100-00011001
1386 // CHECK-INST: sub za.d[w8, 1, vgx4], { z0.d - z3.d }
1387 // CHECK-ENCODING: [0x19,0x1c,0xe1,0xc1]
1388 // CHECK-ERROR: instruction requires: sme2
1389 // CHECK-UNKNOWN: c1e11c19 <unknown>
1391 sub za.d[w10, 0, vgx4], {z16.d - z19.d} // 11000001-11100001-01011110-00011000
1392 // CHECK-INST: sub za.d[w10, 0, vgx4], { z16.d - z19.d }
1393 // CHECK-ENCODING: [0x18,0x5e,0xe1,0xc1]
1394 // CHECK-ERROR: instruction requires: sme2
1395 // CHECK-UNKNOWN: c1e15e18 <unknown>
1397 sub za.d[w10, 0], {z16.d - z19.d} // 11000001-11100001-01011110-00011000
1398 // CHECK-INST: sub za.d[w10, 0, vgx4], { z16.d - z19.d }
1399 // CHECK-ENCODING: [0x18,0x5e,0xe1,0xc1]
1400 // CHECK-ERROR: instruction requires: sme2
1401 // CHECK-UNKNOWN: c1e15e18 <unknown>
1403 sub za.d[w8, 0, vgx4], {z12.d - z15.d} // 11000001-11100001-00011101-10011000
1404 // CHECK-INST: sub za.d[w8, 0, vgx4], { z12.d - z15.d }
1405 // CHECK-ENCODING: [0x98,0x1d,0xe1,0xc1]
1406 // CHECK-ERROR: instruction requires: sme2
1407 // CHECK-UNKNOWN: c1e11d98 <unknown>
1409 sub za.d[w8, 0], {z12.d - z15.d} // 11000001-11100001-00011101-10011000
1410 // CHECK-INST: sub za.d[w8, 0, vgx4], { z12.d - z15.d }
1411 // CHECK-ENCODING: [0x98,0x1d,0xe1,0xc1]
1412 // CHECK-ERROR: instruction requires: sme2
1413 // CHECK-UNKNOWN: c1e11d98 <unknown>
1415 sub za.d[w10, 1, vgx4], {z0.d - z3.d} // 11000001-11100001-01011100-00011001
1416 // CHECK-INST: sub za.d[w10, 1, vgx4], { z0.d - z3.d }
1417 // CHECK-ENCODING: [0x19,0x5c,0xe1,0xc1]
1418 // CHECK-ERROR: instruction requires: sme2
1419 // CHECK-UNKNOWN: c1e15c19 <unknown>
1421 sub za.d[w10, 1], {z0.d - z3.d} // 11000001-11100001-01011100-00011001
1422 // CHECK-INST: sub za.d[w10, 1, vgx4], { z0.d - z3.d }
1423 // CHECK-ENCODING: [0x19,0x5c,0xe1,0xc1]
1424 // CHECK-ERROR: instruction requires: sme2
1425 // CHECK-UNKNOWN: c1e15c19 <unknown>
1427 sub za.d[w8, 5, vgx4], {z20.d - z23.d} // 11000001-11100001-00011110-10011101
1428 // CHECK-INST: sub za.d[w8, 5, vgx4], { z20.d - z23.d }
1429 // CHECK-ENCODING: [0x9d,0x1e,0xe1,0xc1]
1430 // CHECK-ERROR: instruction requires: sme2
1431 // CHECK-UNKNOWN: c1e11e9d <unknown>
1433 sub za.d[w8, 5], {z20.d - z23.d} // 11000001-11100001-00011110-10011101
1434 // CHECK-INST: sub za.d[w8, 5, vgx4], { z20.d - z23.d }
1435 // CHECK-ENCODING: [0x9d,0x1e,0xe1,0xc1]
1436 // CHECK-ERROR: instruction requires: sme2
1437 // CHECK-UNKNOWN: c1e11e9d <unknown>
1439 sub za.d[w11, 2, vgx4], {z8.d - z11.d} // 11000001-11100001-01111101-00011010
1440 // CHECK-INST: sub za.d[w11, 2, vgx4], { z8.d - z11.d }
1441 // CHECK-ENCODING: [0x1a,0x7d,0xe1,0xc1]
1442 // CHECK-ERROR: instruction requires: sme2
1443 // CHECK-UNKNOWN: c1e17d1a <unknown>
1445 sub za.d[w11, 2], {z8.d - z11.d} // 11000001-11100001-01111101-00011010
1446 // CHECK-INST: sub za.d[w11, 2, vgx4], { z8.d - z11.d }
1447 // CHECK-ENCODING: [0x1a,0x7d,0xe1,0xc1]
1448 // CHECK-ERROR: instruction requires: sme2
1449 // CHECK-UNKNOWN: c1e17d1a <unknown>
1451 sub za.d[w9, 7, vgx4], {z12.d - z15.d} // 11000001-11100001-00111101-10011111
1452 // CHECK-INST: sub za.d[w9, 7, vgx4], { z12.d - z15.d }
1453 // CHECK-ENCODING: [0x9f,0x3d,0xe1,0xc1]
1454 // CHECK-ERROR: instruction requires: sme2
1455 // CHECK-UNKNOWN: c1e13d9f <unknown>
1457 sub za.d[w9, 7], {z12.d - z15.d} // 11000001-11100001-00111101-10011111
1458 // CHECK-INST: sub za.d[w9, 7, vgx4], { z12.d - z15.d }
1459 // CHECK-ENCODING: [0x9f,0x3d,0xe1,0xc1]
1460 // CHECK-ERROR: instruction requires: sme2
1461 // CHECK-UNKNOWN: c1e13d9f <unknown>
1463 sub za.d[w8, 0, vgx4], {z0.d - z3.d}, z0.d // 11000001-01110000-00011000-00011000
1464 // CHECK-INST: sub za.d[w8, 0, vgx4], { z0.d - z3.d }, z0.d
1465 // CHECK-ENCODING: [0x18,0x18,0x70,0xc1]
1466 // CHECK-ERROR: instruction requires: sme2
1467 // CHECK-UNKNOWN: c1701818 <unknown>
1469 sub za.d[w8, 0], {z0.d - z3.d}, z0.d // 11000001-01110000-00011000-00011000
1470 // CHECK-INST: sub za.d[w8, 0, vgx4], { z0.d - z3.d }, z0.d
1471 // CHECK-ENCODING: [0x18,0x18,0x70,0xc1]
1472 // CHECK-ERROR: instruction requires: sme2
1473 // CHECK-UNKNOWN: c1701818 <unknown>
1475 sub za.d[w10, 5, vgx4], {z10.d - z13.d}, z5.d // 11000001-01110101-01011001-01011101
1476 // CHECK-INST: sub za.d[w10, 5, vgx4], { z10.d - z13.d }, z5.d
1477 // CHECK-ENCODING: [0x5d,0x59,0x75,0xc1]
1478 // CHECK-ERROR: instruction requires: sme2
1479 // CHECK-UNKNOWN: c175595d <unknown>
1481 sub za.d[w10, 5], {z10.d - z13.d}, z5.d // 11000001-01110101-01011001-01011101
1482 // CHECK-INST: sub za.d[w10, 5, vgx4], { z10.d - z13.d }, z5.d
1483 // CHECK-ENCODING: [0x5d,0x59,0x75,0xc1]
1484 // CHECK-ERROR: instruction requires: sme2
1485 // CHECK-UNKNOWN: c175595d <unknown>
1487 sub za.d[w11, 7, vgx4], {z13.d - z16.d}, z8.d // 11000001-01111000-01111001-10111111
1488 // CHECK-INST: sub za.d[w11, 7, vgx4], { z13.d - z16.d }, z8.d
1489 // CHECK-ENCODING: [0xbf,0x79,0x78,0xc1]
1490 // CHECK-ERROR: instruction requires: sme2
1491 // CHECK-UNKNOWN: c17879bf <unknown>
1493 sub za.d[w11, 7], {z13.d - z16.d}, z8.d // 11000001-01111000-01111001-10111111
1494 // CHECK-INST: sub za.d[w11, 7, vgx4], { z13.d - z16.d }, z8.d
1495 // CHECK-ENCODING: [0xbf,0x79,0x78,0xc1]
1496 // CHECK-ERROR: instruction requires: sme2
1497 // CHECK-UNKNOWN: c17879bf <unknown>
1499 sub za.d[w11, 7, vgx4], {z31.d - z2.d}, z15.d // 11000001-01111111-01111011-11111111
1500 // CHECK-INST: sub za.d[w11, 7, vgx4], { z31.d, z0.d, z1.d, z2.d }, z15.d
1501 // CHECK-ENCODING: [0xff,0x7b,0x7f,0xc1]
1502 // CHECK-ERROR: instruction requires: sme2
1503 // CHECK-UNKNOWN: c17f7bff <unknown>
1505 sub za.d[w11, 7], {z31.d - z2.d}, z15.d // 11000001-01111111-01111011-11111111
1506 // CHECK-INST: sub za.d[w11, 7, vgx4], { z31.d, z0.d, z1.d, z2.d }, z15.d
1507 // CHECK-ENCODING: [0xff,0x7b,0x7f,0xc1]
1508 // CHECK-ERROR: instruction requires: sme2
1509 // CHECK-UNKNOWN: c17f7bff <unknown>
1511 sub za.d[w8, 5, vgx4], {z17.d - z20.d}, z0.d // 11000001-01110000-00011010-00111101
1512 // CHECK-INST: sub za.d[w8, 5, vgx4], { z17.d - z20.d }, z0.d
1513 // CHECK-ENCODING: [0x3d,0x1a,0x70,0xc1]
1514 // CHECK-ERROR: instruction requires: sme2
1515 // CHECK-UNKNOWN: c1701a3d <unknown>
1517 sub za.d[w8, 5], {z17.d - z20.d}, z0.d // 11000001-01110000-00011010-00111101
1518 // CHECK-INST: sub za.d[w8, 5, vgx4], { z17.d - z20.d }, z0.d
1519 // CHECK-ENCODING: [0x3d,0x1a,0x70,0xc1]
1520 // CHECK-ERROR: instruction requires: sme2
1521 // CHECK-UNKNOWN: c1701a3d <unknown>
1523 sub za.d[w8, 1, vgx4], {z1.d - z4.d}, z14.d // 11000001-01111110-00011000-00111001
1524 // CHECK-INST: sub za.d[w8, 1, vgx4], { z1.d - z4.d }, z14.d
1525 // CHECK-ENCODING: [0x39,0x18,0x7e,0xc1]
1526 // CHECK-ERROR: instruction requires: sme2
1527 // CHECK-UNKNOWN: c17e1839 <unknown>
1529 sub za.d[w8, 1], {z1.d - z4.d}, z14.d // 11000001-01111110-00011000-00111001
1530 // CHECK-INST: sub za.d[w8, 1, vgx4], { z1.d - z4.d }, z14.d
1531 // CHECK-ENCODING: [0x39,0x18,0x7e,0xc1]
1532 // CHECK-ERROR: instruction requires: sme2
1533 // CHECK-UNKNOWN: c17e1839 <unknown>
1535 sub za.d[w10, 0, vgx4], {z19.d - z22.d}, z4.d // 11000001-01110100-01011010-01111000
1536 // CHECK-INST: sub za.d[w10, 0, vgx4], { z19.d - z22.d }, z4.d
1537 // CHECK-ENCODING: [0x78,0x5a,0x74,0xc1]
1538 // CHECK-ERROR: instruction requires: sme2
1539 // CHECK-UNKNOWN: c1745a78 <unknown>
1541 sub za.d[w10, 0], {z19.d - z22.d}, z4.d // 11000001-01110100-01011010-01111000
1542 // CHECK-INST: sub za.d[w10, 0, vgx4], { z19.d - z22.d }, z4.d
1543 // CHECK-ENCODING: [0x78,0x5a,0x74,0xc1]
1544 // CHECK-ERROR: instruction requires: sme2
1545 // CHECK-UNKNOWN: c1745a78 <unknown>
1547 sub za.d[w8, 0, vgx4], {z12.d - z15.d}, z2.d // 11000001-01110010-00011001-10011000
1548 // CHECK-INST: sub za.d[w8, 0, vgx4], { z12.d - z15.d }, z2.d
1549 // CHECK-ENCODING: [0x98,0x19,0x72,0xc1]
1550 // CHECK-ERROR: instruction requires: sme2
1551 // CHECK-UNKNOWN: c1721998 <unknown>
1553 sub za.d[w8, 0], {z12.d - z15.d}, z2.d // 11000001-01110010-00011001-10011000
1554 // CHECK-INST: sub za.d[w8, 0, vgx4], { z12.d - z15.d }, z2.d
1555 // CHECK-ENCODING: [0x98,0x19,0x72,0xc1]
1556 // CHECK-ERROR: instruction requires: sme2
1557 // CHECK-UNKNOWN: c1721998 <unknown>
1559 sub za.d[w10, 1, vgx4], {z1.d - z4.d}, z10.d // 11000001-01111010-01011000-00111001
1560 // CHECK-INST: sub za.d[w10, 1, vgx4], { z1.d - z4.d }, z10.d
1561 // CHECK-ENCODING: [0x39,0x58,0x7a,0xc1]
1562 // CHECK-ERROR: instruction requires: sme2
1563 // CHECK-UNKNOWN: c17a5839 <unknown>
1565 sub za.d[w10, 1], {z1.d - z4.d}, z10.d // 11000001-01111010-01011000-00111001
1566 // CHECK-INST: sub za.d[w10, 1, vgx4], { z1.d - z4.d }, z10.d
1567 // CHECK-ENCODING: [0x39,0x58,0x7a,0xc1]
1568 // CHECK-ERROR: instruction requires: sme2
1569 // CHECK-UNKNOWN: c17a5839 <unknown>
1571 sub za.d[w8, 5, vgx4], {z22.d - z25.d}, z14.d // 11000001-01111110-00011010-11011101
1572 // CHECK-INST: sub za.d[w8, 5, vgx4], { z22.d - z25.d }, z14.d
1573 // CHECK-ENCODING: [0xdd,0x1a,0x7e,0xc1]
1574 // CHECK-ERROR: instruction requires: sme2
1575 // CHECK-UNKNOWN: c17e1add <unknown>
1577 sub za.d[w8, 5], {z22.d - z25.d}, z14.d // 11000001-01111110-00011010-11011101
1578 // CHECK-INST: sub za.d[w8, 5, vgx4], { z22.d - z25.d }, z14.d
1579 // CHECK-ENCODING: [0xdd,0x1a,0x7e,0xc1]
1580 // CHECK-ERROR: instruction requires: sme2
1581 // CHECK-UNKNOWN: c17e1add <unknown>
1583 sub za.d[w11, 2, vgx4], {z9.d - z12.d}, z1.d // 11000001-01110001-01111001-00111010
1584 // CHECK-INST: sub za.d[w11, 2, vgx4], { z9.d - z12.d }, z1.d
1585 // CHECK-ENCODING: [0x3a,0x79,0x71,0xc1]
1586 // CHECK-ERROR: instruction requires: sme2
1587 // CHECK-UNKNOWN: c171793a <unknown>
1589 sub za.d[w11, 2], {z9.d - z12.d}, z1.d // 11000001-01110001-01111001-00111010
1590 // CHECK-INST: sub za.d[w11, 2, vgx4], { z9.d - z12.d }, z1.d
1591 // CHECK-ENCODING: [0x3a,0x79,0x71,0xc1]
1592 // CHECK-ERROR: instruction requires: sme2
1593 // CHECK-UNKNOWN: c171793a <unknown>
1595 sub za.d[w9, 7, vgx4], {z12.d - z15.d}, z11.d // 11000001-01111011-00111001-10011111
1596 // CHECK-INST: sub za.d[w9, 7, vgx4], { z12.d - z15.d }, z11.d
1597 // CHECK-ENCODING: [0x9f,0x39,0x7b,0xc1]
1598 // CHECK-ERROR: instruction requires: sme2
1599 // CHECK-UNKNOWN: c17b399f <unknown>
1601 sub za.d[w9, 7], {z12.d - z15.d}, z11.d // 11000001-01111011-00111001-10011111
1602 // CHECK-INST: sub za.d[w9, 7, vgx4], { z12.d - z15.d }, z11.d
1603 // CHECK-ENCODING: [0x9f,0x39,0x7b,0xc1]
1604 // CHECK-ERROR: instruction requires: sme2
1605 // CHECK-UNKNOWN: c17b399f <unknown>
1608 sub za.d[w8, 0, vgx4], {z0.d - z3.d}, {z0.d - z3.d} // 11000001-11100001-00011000-00011000
1609 // CHECK-INST: sub za.d[w8, 0, vgx4], { z0.d - z3.d }, { z0.d - z3.d }
1610 // CHECK-ENCODING: [0x18,0x18,0xe1,0xc1]
1611 // CHECK-ERROR: instruction requires: sme2
1612 // CHECK-UNKNOWN: c1e11818 <unknown>
1614 sub za.d[w8, 0], {z0.d - z3.d}, {z0.d - z3.d} // 11000001-11100001-00011000-00011000
1615 // CHECK-INST: sub za.d[w8, 0, vgx4], { z0.d - z3.d }, { z0.d - z3.d }
1616 // CHECK-ENCODING: [0x18,0x18,0xe1,0xc1]
1617 // CHECK-ERROR: instruction requires: sme2
1618 // CHECK-UNKNOWN: c1e11818 <unknown>
1620 sub za.d[w10, 5, vgx4], {z8.d - z11.d}, {z20.d - z23.d} // 11000001-11110101-01011001-00011101
1621 // CHECK-INST: sub za.d[w10, 5, vgx4], { z8.d - z11.d }, { z20.d - z23.d }
1622 // CHECK-ENCODING: [0x1d,0x59,0xf5,0xc1]
1623 // CHECK-ERROR: instruction requires: sme2
1624 // CHECK-UNKNOWN: c1f5591d <unknown>
1626 sub za.d[w10, 5], {z8.d - z11.d}, {z20.d - z23.d} // 11000001-11110101-01011001-00011101
1627 // CHECK-INST: sub za.d[w10, 5, vgx4], { z8.d - z11.d }, { z20.d - z23.d }
1628 // CHECK-ENCODING: [0x1d,0x59,0xf5,0xc1]
1629 // CHECK-ERROR: instruction requires: sme2
1630 // CHECK-UNKNOWN: c1f5591d <unknown>
1632 sub za.d[w11, 7, vgx4], {z12.d - z15.d}, {z8.d - z11.d} // 11000001-11101001-01111001-10011111
1633 // CHECK-INST: sub za.d[w11, 7, vgx4], { z12.d - z15.d }, { z8.d - z11.d }
1634 // CHECK-ENCODING: [0x9f,0x79,0xe9,0xc1]
1635 // CHECK-ERROR: instruction requires: sme2
1636 // CHECK-UNKNOWN: c1e9799f <unknown>
1638 sub za.d[w11, 7], {z12.d - z15.d}, {z8.d - z11.d} // 11000001-11101001-01111001-10011111
1639 // CHECK-INST: sub za.d[w11, 7, vgx4], { z12.d - z15.d }, { z8.d - z11.d }
1640 // CHECK-ENCODING: [0x9f,0x79,0xe9,0xc1]
1641 // CHECK-ERROR: instruction requires: sme2
1642 // CHECK-UNKNOWN: c1e9799f <unknown>
1644 sub za.d[w11, 7, vgx4], {z28.d - z31.d}, {z28.d - z31.d} // 11000001-11111101-01111011-10011111
1645 // CHECK-INST: sub za.d[w11, 7, vgx4], { z28.d - z31.d }, { z28.d - z31.d }
1646 // CHECK-ENCODING: [0x9f,0x7b,0xfd,0xc1]
1647 // CHECK-ERROR: instruction requires: sme2
1648 // CHECK-UNKNOWN: c1fd7b9f <unknown>
1650 sub za.d[w11, 7], {z28.d - z31.d}, {z28.d - z31.d} // 11000001-11111101-01111011-10011111
1651 // CHECK-INST: sub za.d[w11, 7, vgx4], { z28.d - z31.d }, { z28.d - z31.d }
1652 // CHECK-ENCODING: [0x9f,0x7b,0xfd,0xc1]
1653 // CHECK-ERROR: instruction requires: sme2
1654 // CHECK-UNKNOWN: c1fd7b9f <unknown>
1656 sub za.d[w8, 5, vgx4], {z16.d - z19.d}, {z16.d - z19.d} // 11000001-11110001-00011010-00011101
1657 // CHECK-INST: sub za.d[w8, 5, vgx4], { z16.d - z19.d }, { z16.d - z19.d }
1658 // CHECK-ENCODING: [0x1d,0x1a,0xf1,0xc1]
1659 // CHECK-ERROR: instruction requires: sme2
1660 // CHECK-UNKNOWN: c1f11a1d <unknown>
1662 sub za.d[w8, 5], {z16.d - z19.d}, {z16.d - z19.d} // 11000001-11110001-00011010-00011101
1663 // CHECK-INST: sub za.d[w8, 5, vgx4], { z16.d - z19.d }, { z16.d - z19.d }
1664 // CHECK-ENCODING: [0x1d,0x1a,0xf1,0xc1]
1665 // CHECK-ERROR: instruction requires: sme2
1666 // CHECK-UNKNOWN: c1f11a1d <unknown>
1668 sub za.d[w8, 1, vgx4], {z0.d - z3.d}, {z28.d - z31.d} // 11000001-11111101-00011000-00011001
1669 // CHECK-INST: sub za.d[w8, 1, vgx4], { z0.d - z3.d }, { z28.d - z31.d }
1670 // CHECK-ENCODING: [0x19,0x18,0xfd,0xc1]
1671 // CHECK-ERROR: instruction requires: sme2
1672 // CHECK-UNKNOWN: c1fd1819 <unknown>
1674 sub za.d[w8, 1], {z0.d - z3.d}, {z28.d - z31.d} // 11000001-11111101-00011000-00011001
1675 // CHECK-INST: sub za.d[w8, 1, vgx4], { z0.d - z3.d }, { z28.d - z31.d }
1676 // CHECK-ENCODING: [0x19,0x18,0xfd,0xc1]
1677 // CHECK-ERROR: instruction requires: sme2
1678 // CHECK-UNKNOWN: c1fd1819 <unknown>
1680 sub za.d[w10, 0, vgx4], {z16.d - z19.d}, {z20.d - z23.d} // 11000001-11110101-01011010-00011000
1681 // CHECK-INST: sub za.d[w10, 0, vgx4], { z16.d - z19.d }, { z20.d - z23.d }
1682 // CHECK-ENCODING: [0x18,0x5a,0xf5,0xc1]
1683 // CHECK-ERROR: instruction requires: sme2
1684 // CHECK-UNKNOWN: c1f55a18 <unknown>
1686 sub za.d[w10, 0], {z16.d - z19.d}, {z20.d - z23.d} // 11000001-11110101-01011010-00011000
1687 // CHECK-INST: sub za.d[w10, 0, vgx4], { z16.d - z19.d }, { z20.d - z23.d }
1688 // CHECK-ENCODING: [0x18,0x5a,0xf5,0xc1]
1689 // CHECK-ERROR: instruction requires: sme2
1690 // CHECK-UNKNOWN: c1f55a18 <unknown>
1692 sub za.d[w8, 0, vgx4], {z12.d - z15.d}, {z0.d - z3.d} // 11000001-11100001-00011001-10011000
1693 // CHECK-INST: sub za.d[w8, 0, vgx4], { z12.d - z15.d }, { z0.d - z3.d }
1694 // CHECK-ENCODING: [0x98,0x19,0xe1,0xc1]
1695 // CHECK-ERROR: instruction requires: sme2
1696 // CHECK-UNKNOWN: c1e11998 <unknown>
1698 sub za.d[w8, 0], {z12.d - z15.d}, {z0.d - z3.d} // 11000001-11100001-00011001-10011000
1699 // CHECK-INST: sub za.d[w8, 0, vgx4], { z12.d - z15.d }, { z0.d - z3.d }
1700 // CHECK-ENCODING: [0x98,0x19,0xe1,0xc1]
1701 // CHECK-ERROR: instruction requires: sme2
1702 // CHECK-UNKNOWN: c1e11998 <unknown>
1704 sub za.d[w10, 1, vgx4], {z0.d - z3.d}, {z24.d - z27.d} // 11000001-11111001-01011000-00011001
1705 // CHECK-INST: sub za.d[w10, 1, vgx4], { z0.d - z3.d }, { z24.d - z27.d }
1706 // CHECK-ENCODING: [0x19,0x58,0xf9,0xc1]
1707 // CHECK-ERROR: instruction requires: sme2
1708 // CHECK-UNKNOWN: c1f95819 <unknown>
1710 sub za.d[w10, 1], {z0.d - z3.d}, {z24.d - z27.d} // 11000001-11111001-01011000-00011001
1711 // CHECK-INST: sub za.d[w10, 1, vgx4], { z0.d - z3.d }, { z24.d - z27.d }
1712 // CHECK-ENCODING: [0x19,0x58,0xf9,0xc1]
1713 // CHECK-ERROR: instruction requires: sme2
1714 // CHECK-UNKNOWN: c1f95819 <unknown>
1716 sub za.d[w8, 5, vgx4], {z20.d - z23.d}, {z28.d - z31.d} // 11000001-11111101-00011010-10011101
1717 // CHECK-INST: sub za.d[w8, 5, vgx4], { z20.d - z23.d }, { z28.d - z31.d }
1718 // CHECK-ENCODING: [0x9d,0x1a,0xfd,0xc1]
1719 // CHECK-ERROR: instruction requires: sme2
1720 // CHECK-UNKNOWN: c1fd1a9d <unknown>
1722 sub za.d[w8, 5], {z20.d - z23.d}, {z28.d - z31.d} // 11000001-11111101-00011010-10011101
1723 // CHECK-INST: sub za.d[w8, 5, vgx4], { z20.d - z23.d }, { z28.d - z31.d }
1724 // CHECK-ENCODING: [0x9d,0x1a,0xfd,0xc1]
1725 // CHECK-ERROR: instruction requires: sme2
1726 // CHECK-UNKNOWN: c1fd1a9d <unknown>
1728 sub za.d[w11, 2, vgx4], {z8.d - z11.d}, {z0.d - z3.d} // 11000001-11100001-01111001-00011010
1729 // CHECK-INST: sub za.d[w11, 2, vgx4], { z8.d - z11.d }, { z0.d - z3.d }
1730 // CHECK-ENCODING: [0x1a,0x79,0xe1,0xc1]
1731 // CHECK-ERROR: instruction requires: sme2
1732 // CHECK-UNKNOWN: c1e1791a <unknown>
1734 sub za.d[w11, 2], {z8.d - z11.d}, {z0.d - z3.d} // 11000001-11100001-01111001-00011010
1735 // CHECK-INST: sub za.d[w11, 2, vgx4], { z8.d - z11.d }, { z0.d - z3.d }
1736 // CHECK-ENCODING: [0x1a,0x79,0xe1,0xc1]
1737 // CHECK-ERROR: instruction requires: sme2
1738 // CHECK-UNKNOWN: c1e1791a <unknown>
1740 sub za.d[w9, 7, vgx4], {z12.d - z15.d}, {z8.d - z11.d} // 11000001-11101001-00111001-10011111
1741 // CHECK-INST: sub za.d[w9, 7, vgx4], { z12.d - z15.d }, { z8.d - z11.d }
1742 // CHECK-ENCODING: [0x9f,0x39,0xe9,0xc1]
1743 // CHECK-ERROR: instruction requires: sme2
1744 // CHECK-UNKNOWN: c1e9399f <unknown>
1746 sub za.d[w9, 7], {z12.d - z15.d}, {z8.d - z11.d} // 11000001-11101001-00111001-10011111
1747 // CHECK-INST: sub za.d[w9, 7, vgx4], { z12.d - z15.d }, { z8.d - z11.d }
1748 // CHECK-ENCODING: [0x9f,0x39,0xe9,0xc1]
1749 // CHECK-ERROR: instruction requires: sme2
1750 // CHECK-UNKNOWN: c1e9399f <unknown>