1 # RUN: llvm-mc -disassemble -triple=thumbv8.1m.main-none-eabi -mattr=+mve.fp,+fp64 -show-encoding %s | FileCheck %s
2 # RUN: not llvm-mc -disassemble -triple=thumbv8.1m.main-none-eabi -show-encoding %s &> %t
3 # RUN: FileCheck --check-prefix=CHECK-NOMVE < %t %s
5 # CHECK: vshlc q0, lr, #8 @ encoding: [0xa8,0xee,0xce,0x0f]
6 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
9 # CHECK: vmovlb.s8 q0, q6 @ encoding: [0xa8,0xee,0x4c,0x0f]
10 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
13 # CHECK: vmovlt.s8 q0, q4 @ encoding: [0xa8,0xee,0x48,0x1f]
14 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
17 # CHECK: vmovlb.u8 q0, q0 @ encoding: [0xa8,0xfe,0x40,0x0f]
18 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
21 # CHECK: vmovlt.u8 q0, q2 @ encoding: [0xa8,0xfe,0x44,0x1f]
22 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
25 # CHECK: vmovlb.u16 q1, q0 @ encoding: [0xb0,0xfe,0x40,0x2f]
26 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
29 # CHECK: vmovlt.u16 q0, q2 @ encoding: [0xb0,0xfe,0x44,0x1f]
30 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
33 # CHECK: vshllb.s8 q0, q2, #8 @ encoding: [0x31,0xee,0x05,0x0e]
34 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
37 # CHECK: vshllt.s8 q1, q5, #8 @ encoding: [0x31,0xee,0x0b,0x3e]
38 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
41 # CHECK: vshllb.s8 q0, q0, #7 @ encoding: [0xaf,0xee,0x40,0x0f]
42 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
45 # CHECK: vshllb.u8 q1, q1, #8 @ encoding: [0x31,0xfe,0x03,0x2e]
46 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
49 # CHECK: vshllt.u8 q0, q0, #8 @ encoding: [0x31,0xfe,0x01,0x1e]
50 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
53 # CHECK: vshllb.u8 q0, q0, #3 @ encoding: [0xab,0xfe,0x40,0x0f]
54 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
57 # CHECK: vshllb.u16 q0, q5, #16 @ encoding: [0x35,0xfe,0x0b,0x0e]
58 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
61 # CHECK: vshllt.u16 q0, q3, #16 @ encoding: [0x35,0xfe,0x07,0x1e]
62 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
65 # CHECK: vshllt.s16 q0, q0, #16 @ encoding: [0x35,0xee,0x01,0x1e]
66 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
69 # CHECK: vshllt.s16 q0, q0, #14 @ encoding: [0xbe,0xee,0x40,0x1f]
70 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
73 # CHECK: vshllt.s16 q0, q0, #11 @ encoding: [0xbb,0xee,0x40,0x1f]
74 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
77 # CHECK: vshllb.u16 q0, q2, #4 @ encoding: [0xb4,0xfe,0x44,0x0f]
78 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
81 # CHECK: vrshrnb.i16 q0, q3, #1 @ encoding: [0x8f,0xfe,0xc7,0x0f]
82 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
85 # CHECK: vrshrnt.i16 q0, q2, #5 @ encoding: [0x8b,0xfe,0xc5,0x1f]
86 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
89 # CHECK: vrshrnb.i32 q0, q4, #8 @ encoding: [0x98,0xfe,0xc9,0x0f]
90 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
93 # CHECK: vrshrnt.i32 q0, q2, #7 @ encoding: [0x99,0xfe,0xc5,0x1f]
94 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
97 # CHECK: vshrnb.i16 q1, q2, #1 @ encoding: [0x8f,0xee,0xc5,0x2f]
98 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
101 # CHECK: vshrnt.i16 q0, q1, #1 @ encoding: [0x8f,0xee,0xc3,0x1f]
102 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
103 [0x8f,0xee,0xc3,0x1f]
105 # CHECK: vshrnb.i32 q0, q0, #12 @ encoding: [0x94,0xee,0xc1,0x0f]
106 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
107 [0x94,0xee,0xc1,0x0f]
109 # CHECK: vshrnt.i32 q0, q2, #4 @ encoding: [0x9c,0xee,0xc5,0x1f]
110 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
111 [0x9c,0xee,0xc5,0x1f]
113 # CHECK: vqrshrunb.s16 q0, q2, #8 @ encoding: [0x88,0xfe,0xc4,0x0f]
114 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
115 [0x88,0xfe,0xc4,0x0f]
117 # CHECK: vqrshrunt.s16 q0, q0, #6 @ encoding: [0x8a,0xfe,0xc0,0x1f]
118 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
119 [0x8a,0xfe,0xc0,0x1f]
121 # CHECK: vqrshrunt.s32 q0, q1, #8 @ encoding: [0x98,0xfe,0xc2,0x1f]
122 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
123 [0x98,0xfe,0xc2,0x1f]
125 # CHECK: vqrshrunb.s32 q0, q7, #13 @ encoding: [0x93,0xfe,0xce,0x0f]
126 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
127 [0x93,0xfe,0xce,0x0f]
129 # CHECK: vqshrunb.s16 q0, q7, #5 @ encoding: [0x8b,0xee,0xce,0x0f]
130 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
131 [0x8b,0xee,0xce,0x0f]
133 # CHECK: vqshrunt.s16 q0, q1, #7 @ encoding: [0x89,0xee,0xc2,0x1f]
134 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
135 [0x89,0xee,0xc2,0x1f]
137 # CHECK: vqshrunb.s32 q0, q6, #4 @ encoding: [0x9c,0xee,0xcc,0x0f]
138 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
139 [0x9c,0xee,0xcc,0x0f]
141 # CHECK: vqshrunt.s32 q0, q2, #10 @ encoding: [0x96,0xee,0xc4,0x1f]
142 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
143 [0x96,0xee,0xc4,0x1f]
145 # CHECK: vqrshrnb.s16 q0, q7, #8 @ encoding: [0x88,0xee,0x4f,0x0f]
146 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
147 [0x88,0xee,0x4f,0x0f]
149 # CHECK: vqrshrnt.u16 q1, q3, #4 @ encoding: [0x8c,0xfe,0x47,0x3f]
150 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
151 [0x8c,0xfe,0x47,0x3f]
153 # CHECK: vqrshrnb.u32 q0, q1, #7 @ encoding: [0x99,0xfe,0x43,0x0f]
154 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
155 [0x99,0xfe,0x43,0x0f]
157 # CHECK: vqrshrnt.s32 q0, q1, #11 @ encoding: [0x95,0xee,0x43,0x1f]
158 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
159 [0x95,0xee,0x43,0x1f]
161 # CHECK: vqshrnb.s16 q0, q6, #5 @ encoding: [0x8b,0xee,0x4c,0x0f]
162 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
163 [0x8b,0xee,0x4c,0x0f]
165 # CHECK: vqshrnt.s16 q0, q1, #4 @ encoding: [0x8c,0xee,0x42,0x1f]
166 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
167 [0x8c,0xee,0x42,0x1f]
169 # CHECK: vqshrnb.u16 q0, q3, #7 @ encoding: [0x89,0xfe,0x46,0x0f]
170 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
171 [0x89,0xfe,0x46,0x0f]
173 # CHECK: vqshrnt.u16 q0, q2, #8 @ encoding: [0x88,0xfe,0x44,0x1f]
174 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
175 [0x88,0xfe,0x44,0x1f]
177 # CHECK: vqshrnt.s32 q1, q4, #3 @ encoding: [0x9d,0xee,0x48,0x3f]
178 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
179 [0x9d,0xee,0x48,0x3f]
181 # CHECK: vqshrnb.u32 q0, q2, #14 @ encoding: [0x92,0xfe,0x44,0x0f]
182 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
183 [0x92,0xfe,0x44,0x0f]
185 # CHECK: vshl.s8 q6, q6, q6 @ encoding: [0x0c,0xef,0x4c,0xc4]
186 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
187 [0x0c,0xef,0x4c,0xc4]
189 # CHECK: vshl.s16 q0, q4, q2 @ encoding: [0x14,0xef,0x48,0x04]
190 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
191 [0x14,0xef,0x48,0x04]
193 # CHECK: vshl.s32 q1, q1, q5 @ encoding: [0x2a,0xef,0x42,0x24]
194 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
195 [0x2a,0xef,0x42,0x24]
197 # CHECK: vshl.u8 q1, q7, q2 @ encoding: [0x04,0xff,0x4e,0x24]
198 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
199 [0x04,0xff,0x4e,0x24]
201 # CHECK: vshl.u16 q0, q4, q0 @ encoding: [0x10,0xff,0x48,0x04]
202 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
203 [0x10,0xff,0x48,0x04]
205 # CHECK: vshl.u32 q2, q2, q4 @ encoding: [0x28,0xff,0x44,0x44]
206 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
207 [0x28,0xff,0x44,0x44]
209 # CHECK: vqshl.s8 q0, q1, q6 @ encoding: [0x0c,0xef,0x52,0x04]
210 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
211 [0x0c,0xef,0x52,0x04]
213 # CHECK: vqshl.s16 q4, q3, q7 @ encoding: [0x1e,0xef,0x56,0x84]
214 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
215 [0x1e,0xef,0x56,0x84]
217 # CHECK: vqshl.s32 q0, q5, q5 @ encoding: [0x2a,0xef,0x5a,0x04]
218 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
219 [0x2a,0xef,0x5a,0x04]
221 # CHECK: vqshl.u8 q0, q0, q6 @ encoding: [0x0c,0xff,0x50,0x04]
222 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
223 [0x0c,0xff,0x50,0x04]
225 # CHECK: vqshl.u16 q0, q5, q4 @ encoding: [0x18,0xff,0x5a,0x04]
226 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
227 [0x18,0xff,0x5a,0x04]
229 # CHECK: vqshl.u32 q1, q0, q4 @ encoding: [0x28,0xff,0x50,0x24]
230 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
231 [0x28,0xff,0x50,0x24]
233 # CHECK: vqrshl.s8 q1, q6, q1 @ encoding: [0x02,0xef,0x5c,0x25]
234 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
235 [0x02,0xef,0x5c,0x25]
237 # CHECK: vqrshl.s16 q2, q4, q6 @ encoding: [0x1c,0xef,0x58,0x45]
238 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
239 [0x1c,0xef,0x58,0x45]
241 # CHECK: vqrshl.s32 q0, q0, q5 @ encoding: [0x2a,0xef,0x50,0x05]
242 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
243 [0x2a,0xef,0x50,0x05]
245 # CHECK: vqrshl.u8 q0, q2, q1 @ encoding: [0x02,0xff,0x54,0x05]
246 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
247 [0x02,0xff,0x54,0x05]
249 # CHECK: vqrshl.u16 q1, q6, q0 @ encoding: [0x10,0xff,0x5c,0x25]
250 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
251 [0x10,0xff,0x5c,0x25]
253 # CHECK: vqrshl.u32 q0, q0, q0 @ encoding: [0x20,0xff,0x50,0x05]
254 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
255 [0x20,0xff,0x50,0x05]
257 # CHECK: vrshl.s8 q0, q6, q4 @ encoding: [0x08,0xef,0x4c,0x05]
258 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
259 [0x08,0xef,0x4c,0x05]
261 # CHECK: vrshl.s16 q1, q4, q7 @ encoding: [0x1e,0xef,0x48,0x25]
262 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
263 [0x1e,0xef,0x48,0x25]
265 # CHECK: vrshl.s32 q1, q4, q4 @ encoding: [0x28,0xef,0x48,0x25]
266 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
267 [0x28,0xef,0x48,0x25]
269 # CHECK: vrshl.u8 q0, q3, q5 @ encoding: [0x0a,0xff,0x46,0x05]
270 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
271 [0x0a,0xff,0x46,0x05]
273 # CHECK: vrshl.u16 q5, q6, q5 @ encoding: [0x1a,0xff,0x4c,0xa5]
274 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
275 [0x1a,0xff,0x4c,0xa5]
277 # CHECK: vrshl.u32 q1, q7, q3 @ encoding: [0x26,0xff,0x4e,0x25]
278 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
279 [0x26,0xff,0x4e,0x25]
281 # CHECK: vsri.8 q0, q2, #3 @ encoding: [0x8d,0xff,0x54,0x04]
282 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
283 [0x8d,0xff,0x54,0x04]
285 # CHECK: vsri.16 q0, q2, #5 @ encoding: [0x9b,0xff,0x54,0x04]
286 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
287 [0x9b,0xff,0x54,0x04]
289 # CHECK: vsri.32 q0, q1, #15 @ encoding: [0xb1,0xff,0x52,0x04]
290 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
291 [0xb1,0xff,0x52,0x04]
293 # CHECK: vsli.8 q0, q3, #3 @ encoding: [0x8b,0xff,0x56,0x05]
294 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
295 [0x8b,0xff,0x56,0x05]
297 # CHECK: vsli.16 q0, q1, #12 @ encoding: [0x9c,0xff,0x52,0x05]
298 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
299 [0x9c,0xff,0x52,0x05]
301 # CHECK: vsli.32 q0, q1, #8 @ encoding: [0xa8,0xff,0x52,0x05]
302 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
303 [0xa8,0xff,0x52,0x05]
305 # CHECK: vqshl.s8 q0, q4, #6 @ encoding: [0x8e,0xef,0x58,0x07]
306 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
307 [0x8e,0xef,0x58,0x07]
309 # CHECK: vqshl.u8 q0, q6, #6 @ encoding: [0x8e,0xff,0x5c,0x07]
310 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
311 [0x8e,0xff,0x5c,0x07]
313 # CHECK: vqshl.s16 q1, q2, #5 @ encoding: [0x95,0xef,0x54,0x27]
314 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
315 [0x95,0xef,0x54,0x27]
317 # CHECK: vqshl.u16 q0, q5, #3 @ encoding: [0x93,0xff,0x5a,0x07]
318 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
319 [0x93,0xff,0x5a,0x07]
321 # CHECK: vqshl.s32 q1, q3, #29 @ encoding: [0xbd,0xef,0x56,0x27]
322 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
323 [0xbd,0xef,0x56,0x27]
325 # CHECK: vqshl.u32 q0, q2, #19 @ encoding: [0xb3,0xff,0x54,0x07]
326 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
327 [0xb3,0xff,0x54,0x07]
329 # CHECK: vqshlu.s8 q0, q1, #0 @ encoding: [0x88,0xff,0x52,0x06]
330 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
331 [0x88,0xff,0x52,0x06]
333 # CHECK: vqshlu.s16 q2, q1, #12 @ encoding: [0x9c,0xff,0x52,0x46]
334 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
335 [0x9c,0xff,0x52,0x46]
337 # CHECK: vqshlu.s32 q0, q4, #26 @ encoding: [0xba,0xff,0x58,0x06]
338 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
339 [0xba,0xff,0x58,0x06]
341 # CHECK: vrshr.s8 q1, q3, #7 @ encoding: [0x89,0xef,0x56,0x22]
342 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
343 [0x89,0xef,0x56,0x22]
345 # CHECK: vrshr.u8 q1, q3, #2 @ encoding: [0x8e,0xff,0x56,0x22]
346 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
347 [0x8e,0xff,0x56,0x22]
349 # CHECK: vrshr.s16 q0, q1, #10 @ encoding: [0x96,0xef,0x52,0x02]
350 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
351 [0x96,0xef,0x52,0x02]
353 # CHECK: vrshr.u16 q0, q5, #12 @ encoding: [0x94,0xff,0x5a,0x02]
354 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
355 [0x94,0xff,0x5a,0x02]
357 # CHECK: vrshr.s32 q0, q5, #23 @ encoding: [0xa9,0xef,0x5a,0x02]
358 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
359 [0xa9,0xef,0x5a,0x02]
361 # CHECK: vrshr.u32 q0, q1, #30 @ encoding: [0xa2,0xff,0x52,0x02]
362 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
363 [0xa2,0xff,0x52,0x02]
365 # CHECK: vshr.s8 q0, q7, #4 @ encoding: [0x8c,0xef,0x5e,0x00]
366 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
367 [0x8c,0xef,0x5e,0x00]
369 # CHECK: vshr.u8 q0, q2, #5 @ encoding: [0x8b,0xff,0x54,0x00]
370 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
371 [0x8b,0xff,0x54,0x00]
373 # CHECK: vshr.s16 q0, q3, #16 @ encoding: [0x90,0xef,0x56,0x00]
374 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
375 [0x90,0xef,0x56,0x00]
377 # CHECK: vshr.u16 q7, q6, #8 @ encoding: [0x98,0xff,0x5c,0xe0]
378 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
379 [0x98,0xff,0x5c,0xe0]
381 # CHECK: vshr.s32 q0, q6, #24 @ encoding: [0xa8,0xef,0x5c,0x00]
382 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
383 [0xa8,0xef,0x5c,0x00]
385 # CHECK: vshr.u32 q2, q5, #30 @ encoding: [0xa2,0xff,0x5a,0x40]
386 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
387 [0xa2,0xff,0x5a,0x40]
389 # CHECK: vshl.i8 q0, q6, #6 @ encoding: [0x8e,0xef,0x5c,0x05]
390 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
391 [0x8e,0xef,0x5c,0x05]
393 # CHECK: vshl.i16 q1, q0, #12 @ encoding: [0x9c,0xef,0x50,0x25]
394 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
395 [0x9c,0xef,0x50,0x25]
397 # CHECK: vshl.i32 q2, q2, #26 @ encoding: [0xba,0xef,0x54,0x45]
398 # CHECK-NOMVE: [[@LINE+1]]:2: warning: invalid instruction encoding
399 [0xba,0xef,0x54,0x45]
401 # CHECK: vpst @ encoding: [0x71,0xfe,0x4d,0x0f]
402 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
403 [0x71,0xfe,0x4d,0x0f]
404 [0xb4,0xee,0x42,0x1f]
406 # CHECK: vpstt @ encoding: [0x31,0xfe,0x4d,0x8f]
407 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
408 # CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
409 [0x31,0xfe,0x4d,0x8f]
410 [0xb4,0xee,0x42,0x1f]
411 [0xb8,0xfe,0x42,0x0f]
413 # CHECK: vpste @ encoding: [0x71,0xfe,0x4d,0x8f]
414 # CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding
415 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
416 # CHECK-NOMVE: [[@LINE+4]]:2: warning: invalid instruction encoding
417 # CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
418 # CHECK-NOMVE: [[@LINE+3]]:2: warning: invalid instruction encoding
419 [0x71,0xfe,0x4d,0x8f]
420 [0xb4,0xee,0x42,0x1f]
421 [0xb8,0xfe,0x42,0x0f]
423 # CHECK: vpsttt @ encoding: [0x31,0xfe,0x4d,0x4f]
424 # CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding
425 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
426 # CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding
427 # CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
428 # CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding
429 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
430 # CHECK-NOMVE: [[@LINE+4]]:2: warning: invalid instruction encoding
431 [0x31,0xfe,0x4d,0x4f]
432 [0xb4,0xee,0x42,0x1f]
433 [0xb8,0xfe,0x42,0x0f]
434 [0xb4,0xee,0x42,0x1f]
436 # CHECK: vpstte @ encoding: [0x31,0xfe,0x4d,0xcf]
437 # CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding
438 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
439 # CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding
440 # CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
441 # CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding
442 # CHECK: vshllte.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
443 # CHECK-NOMVE: [[@LINE+4]]:2: warning: invalid instruction encoding
444 [0x31,0xfe,0x4d,0xcf]
445 [0xb4,0xee,0x42,0x1f]
446 [0xb8,0xfe,0x42,0x0f]
447 [0xb4,0xee,0x42,0x1f]
449 # CHECK: vpstet @ encoding: [0x71,0xfe,0x4d,0xcf]
450 # CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding
451 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
452 # CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding
453 # CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
454 # CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding
455 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
456 # CHECK-NOMVE: [[@LINE+4]]:2: warning: invalid instruction encoding
457 [0x71,0xfe,0x4d,0xcf]
458 [0xb4,0xee,0x42,0x1f]
459 [0xb8,0xfe,0x42,0x0f]
460 [0xb4,0xee,0x42,0x1f]
462 # CHECK: vpstee @ encoding: [0x71,0xfe,0x4d,0x4f]
463 # CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding
464 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
465 # CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding
466 # CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
467 # CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding
468 # CHECK: vshllte.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
469 # CHECK-NOMVE: [[@LINE+4]]:2: warning: invalid instruction encoding
470 [0x71,0xfe,0x4d,0x4f]
471 [0xb4,0xee,0x42,0x1f]
472 [0xb8,0xfe,0x42,0x0f]
473 [0xb4,0xee,0x42,0x1f]
475 # CHECK: vpstttt @ encoding: [0x31,0xfe,0x4d,0x2f]
476 # CHECK-NOMVE: [[@LINE+9]]:2: warning: invalid instruction encoding
477 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
478 # CHECK-NOMVE: [[@LINE+8]]:2: warning: invalid instruction encoding
479 # CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
480 # CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding
481 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
482 # CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding
483 # CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
484 # CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding
485 [0x31,0xfe,0x4d,0x2f]
486 [0xb4,0xee,0x42,0x1f]
487 [0xb8,0xfe,0x42,0x0f]
488 [0xb4,0xee,0x42,0x1f]
489 [0xb8,0xfe,0x42,0x0f]
491 # CHECK: vpsttte @ encoding: [0x31,0xfe,0x4d,0x6f]
492 # CHECK-NOMVE: [[@LINE+9]]:2: warning: invalid instruction encoding
493 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
494 # CHECK-NOMVE: [[@LINE+8]]:2: warning: invalid instruction encoding
495 # CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
496 # CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding
497 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
498 # CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding
499 # CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
500 # CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding
501 [0x31,0xfe,0x4d,0x6f]
502 [0xb4,0xee,0x42,0x1f]
503 [0xb8,0xfe,0x42,0x0f]
504 [0xb4,0xee,0x42,0x1f]
505 [0xb8,0xfe,0x42,0x0f]
507 # CHECK: vpsttet @ encoding: [0x31,0xfe,0x4d,0xef]
508 # CHECK-NOMVE: [[@LINE+9]]:2: warning: invalid instruction encoding
509 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
510 # CHECK-NOMVE: [[@LINE+8]]:2: warning: invalid instruction encoding
511 # CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
512 # CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding
513 # CHECK: vshllte.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
514 # CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding
515 # CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
516 # CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding
517 [0x31,0xfe,0x4d,0xef]
518 [0xb4,0xee,0x42,0x1f]
519 [0xb8,0xfe,0x42,0x0f]
520 [0xb4,0xee,0x42,0x1f]
521 [0xb8,0xfe,0x42,0x0f]
523 # CHECK: vpsttee @ encoding: [0x31,0xfe,0x4d,0xaf]
524 # CHECK-NOMVE: [[@LINE+9]]:2: warning: invalid instruction encoding
525 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
526 # CHECK-NOMVE: [[@LINE+8]]:2: warning: invalid instruction encoding
527 # CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
528 # CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding
529 # CHECK: vshllte.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
530 # CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding
531 # CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
532 # CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding
533 [0x31,0xfe,0x4d,0xaf]
534 [0xb4,0xee,0x42,0x1f]
535 [0xb8,0xfe,0x42,0x0f]
536 [0xb4,0xee,0x42,0x1f]
537 [0xb8,0xfe,0x42,0x0f]
539 # CHECK: vpstett @ encoding: [0x71,0xfe,0x4d,0xaf]
540 # CHECK-NOMVE: [[@LINE+9]]:2: warning: invalid instruction encoding
541 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
542 # CHECK-NOMVE: [[@LINE+8]]:2: warning: invalid instruction encoding
543 # CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
544 # CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding
545 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
546 # CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding
547 # CHECK: vshllbt.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
548 # CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding
549 [0x71,0xfe,0x4d,0xaf]
550 [0xb4,0xee,0x42,0x1f]
551 [0xb8,0xfe,0x42,0x0f]
552 [0xb4,0xee,0x42,0x1f]
553 [0xb8,0xfe,0x42,0x0f]
555 # CHECK: vpstete @ encoding: [0x71,0xfe,0x4d,0xef]
556 # CHECK-NOMVE: [[@LINE+9]]:2: warning: invalid instruction encoding
557 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
558 # CHECK-NOMVE: [[@LINE+8]]:2: warning: invalid instruction encoding
559 # CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
560 # CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding
561 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
562 # CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding
563 # CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
564 # CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding
565 [0x71,0xfe,0x4d,0xef]
566 [0xb4,0xee,0x42,0x1f]
567 [0xb8,0xfe,0x42,0x0f]
568 [0xb4,0xee,0x42,0x1f]
569 [0xb8,0xfe,0x42,0x0f]
571 # CHECK: vpsteee @ encoding: [0x71,0xfe,0x4d,0x2f]
572 # CHECK-NOMVE: [[@LINE+9]]:2: warning: invalid instruction encoding
573 # CHECK: vshlltt.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
574 # CHECK-NOMVE: [[@LINE+8]]:2: warning: invalid instruction encoding
575 # CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
576 # CHECK-NOMVE: [[@LINE+7]]:2: warning: invalid instruction encoding
577 # CHECK: vshllte.s16 q0, q1, #4 @ encoding: [0xb4,0xee,0x42,0x1f]
578 # CHECK-NOMVE: [[@LINE+6]]:2: warning: invalid instruction encoding
579 # CHECK: vshllbe.u16 q0, q1, #8 @ encoding: [0xb8,0xfe,0x42,0x0f]
580 # CHECK-NOMVE: [[@LINE+5]]:2: warning: invalid instruction encoding
581 [0x71,0xfe,0x4d,0x2f]
582 [0xb4,0xee,0x42,0x1f]
583 [0xb8,0xfe,0x42,0x0f]
584 [0xb4,0xee,0x42,0x1f]
585 [0xb8,0xfe,0x42,0x0f]