• Home
  • Raw
  • Download

Lines Matching full:error

2 // RUN: FileCheck --check-prefix=CHECK-ERROR --check-prefix=CHECK-ERROR-ARM64 < %t %s
12 // CHECK-ERROR: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
13 // CHECK-ERROR: add x2, x3, x5, sxtb
14 // CHECK-ERROR: ^
15 // CHECK-ERROR: error: expected '[su]xt[bhw]' or 'lsl' with optional integer in range [0, 4]
16 // CHECK-ERROR: add x2, x4, w2, uxtx
17 // CHECK-ERROR: ^
18 // CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
19 // CHECK-ERROR: add w5, w7, x9, sxtx
20 // CHECK-ERROR: ^
26 // CHECK-ERROR: error: expected integer shift amount
27 // CHECK-ERROR: add x9, x10, w11, uxtb #-1
28 // CHECK-ERROR: ^
29 // CHECK-ERROR: error: expected '[su]xt[bhw]' or 'lsl' with optional integer in range [0, 4]
30 // CHECK-ERROR: add x3, x5, w7, uxtb #5
31 // CHECK-ERROR: ^
32 // CHECK-ERROR: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
33 // CHECK-ERROR: sub x9, x15, x2, uxth #5
34 // CHECK-ERROR: ^
40 // CHECK-ERROR: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
41 // CHECK-ERROR: add xzr, x3, x5, uxtx
42 // CHECK-ERROR: ^
43 // CHECK-ERROR: error: invalid operand for instruction
44 // CHECK-ERROR: sub x3, xzr, w9, sxth #1
45 // CHECK-ERROR: ^
46 // CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
47 // CHECK-ERROR: add x1, x2, sp, uxtx
48 // CHECK-ERROR: ^
55 // CHECK-ERROR: error: invalid operand for instruction
56 // CHECK-ERROR: adds sp, x3, w2, uxtb
57 // CHECK-ERROR: ^
58 // CHECK-ERROR: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
59 // CHECK-ERROR: adds x3, xzr, x9, uxtx
60 // CHECK-ERROR: ^
61 // CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
62 // CHECK-ERROR: subs x2, x1, sp, uxtx
63 // CHECK-ERROR: ^
64 // CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
65 // CHECK-ERROR: adds x2, x1, sp, uxtb #2
66 // CHECK-ERROR: ^
70 // CHECK-ERROR: error: expected #imm after shift specifier
71 // CHECK-ERROR: add sp, x5, x7, lsl
72 // CHECK-ERROR: ^
83 // CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
84 // CHECK-ERROR-NEXT: add w4, w5, #-4096
85 // CHECK-ERROR-NEXT: ^
86 // CHECK-ERROR-AARCH64-NEXT: error: expected compatible register, symbol or integer in range [0, 40…
87 // CHECK-ERROR-AARCH64-NEXT: add w5, w6, #0x1000
88 // CHECK-ERROR-AARCH64-NEXT: ^
89 // CHECK-ERROR-NEXT: error: expected compatible register, symbol or integer in range [0, 4095]
90 // CHECK-ERROR-NEXT: add w4, w5, #-4096, lsl #12
91 // CHECK-ERROR-NEXT: ^
92 // CHECK-ERROR-NEXT: error: expected compatible register, symbol or integer in range [0, 4095]
93 // CHECK-ERROR-NEXT: add w5, w6, #0x1000, lsl #12
94 // CHECK-ERROR-NEXT: ^
101 // CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
102 // CHECK-ERROR-NEXT: add w2, w3, #0x1, lsl #1
103 // CHECK-ERROR-NEXT: ^
104 // CHECK-ERROR-NEXT: error: expected compatible register, symbol or integer in range [0, 4095]
105 // CHECK-ERROR-NEXT: add w5, w17, #0xfff, lsl #13
106 // CHECK-ERROR-NEXT: ^
107 // CHECK-ERROR-NEXT: error: expected compatible register, symbol or integer in range [0, 4095]
108 // CHECK-ERROR-NEXT: add w17, w20, #0x1000, lsl #12
109 // CHECK-ERROR-NEXT: ^
110 // CHECK-ERROR-NEXT: error: only 'lsl #+N' valid after immediate
111 // CHECK-ERROR-NEXT: sub xsp, x34, #0x100, lsl #-1
112 // CHECK-ERROR-NEXT: ^
119 // CHECK-ERROR: error: invalid operand for instruction
120 // CHECK-ERROR-NEXT: add w31, w20, #1234
121 // CHECK-ERROR-NEXT: ^
122 // CHECK-ERROR-NEXT: error: invalid operand for instruction
123 // CHECK-ERROR-NEXT: add wzr, w20, #0x123
124 // CHECK-ERROR-NEXT: ^
125 // CHECK-ERROR-NEXT: error: invalid operand for instruction
126 // CHECK-ERROR-NEXT: add w20, wzr, #0x321
127 // CHECK-ERROR-NEXT: ^
128 // CHECK-ERROR-NEXT: error: invalid operand for instruction
129 // CHECK-ERROR-NEXT: add wzr, wzr, #0xfff
130 // CHECK-ERROR-NEXT: ^
135 // CHECK-ERROR: error: invalid operand for instruction
136 // CHECK-ERROR-NEXT: add xsp, w2, #123
137 // CHECK-ERROR-NEXT: ^
138 // CHECK-ERROR-NEXT: error: invalid operand for instruction
139 // CHECK-ERROR-NEXT: sub w2, x30, #32
140 // CHECK-ERROR-NEXT: ^
144 // CHECK-ERROR-AARCH64: error: expected compatible register, symbol or integer in range [0, 4095]
145 // CHECK-ERROR-AARCH64-NEXT: adds w0, w5, #0x10000
146 // CHECK-ERROR-AARCH64-NEXT: ^
153 // CHECK-ERROR: error: invalid operand for instruction
154 // CHECK-ERROR-NEXT: adds w4, wzr, #0x123
155 // CHECK-ERROR-NEXT: ^
156 // CHECK-ERROR-NEXT: error: invalid operand for instruction
157 // CHECK-ERROR-NEXT: subs wsp, w5, #123
158 // CHECK-ERROR-NEXT: ^
159 // CHECK-ERROR-NEXT: error: invalid operand for instruction
160 // CHECK-ERROR-NEXT: subs x5, xzr, #0x456, lsl #12
161 // CHECK-ERROR-NEXT: ^
166 // CHECK-ERROR: error: expected compatible register or logical immediate
167 // CHECK-ERROR-NEXT: mov x2, xsp, #123
168 // CHECK-ERROR-NEXT: ^
169 // CHECK-ERROR-NEXT: error: invalid operand for instruction
170 // CHECK-ERROR-NEXT: mov wsp, w27, #0xfff, lsl #12
171 // CHECK-ERROR-NEXT: ^
175 // CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
176 // CHECK-ERROR-NEXT: add x3, x9, #variable
177 // CHECK-ERROR-NEXT: ^
187 // CHECK-ERROR: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
188 // CHECK-ERROR-NEXT: add wsp, w1, w2, lsr #3
189 // CHECK-ERROR-NEXT: ^
190 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
191 // CHECK-ERROR-NEXT: add x4, sp, x9, asr #5
192 // CHECK-ERROR-NEXT: ^
193 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
194 // CHECK-ERROR-NEXT: add x9, x10, x5, ror #3
195 // CHECK-ERROR-NEXT: ^
209 // CHECK-ERROR: error: expected integer shift amount
210 // CHECK-ERROR-NEXT: add w1, w2, w3, lsl #-1
211 // CHECK-ERROR-NEXT: ^
212 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
213 // CHECK-ERROR-NEXT: add w1, w2, w3, lsl #32
214 // CHECK-ERROR-NEXT: ^
215 // CHECK-ERROR-NEXT: error: expected integer shift amount
216 // CHECK-ERROR-NEXT: add w1, w2, w3, lsr #-1
217 // CHECK-ERROR-NEXT: ^
218 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
219 // CHECK-ERROR-NEXT: add w1, w2, w3, lsr #32
220 // CHECK-ERROR-NEXT: ^
221 // CHECK-ERROR-NEXT: error: expected integer shift amount
222 // CHECK-ERROR-NEXT: add w1, w2, w3, asr #-1
223 // CHECK-ERROR-NEXT: ^
224 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
225 // CHECK-ERROR-NEXT: add w1, w2, w3, asr #32
226 // CHECK-ERROR-NEXT: ^
227 // CHECK-ERROR-NEXT: error: expected integer shift amount
228 // CHECK-ERROR-NEXT: add x1, x2, x3, lsl #-1
229 // CHECK-ERROR-NEXT: ^
230 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
231 // CHECK-ERROR-NEXT: add x1, x2, x3, lsl #64
232 // CHECK-ERROR-NEXT: ^
233 // CHECK-ERROR-NEXT: error: expected integer shift amount
234 // CHECK-ERROR-NEXT: add x1, x2, x3, lsr #-1
235 // CHECK-ERROR-NEXT: ^
236 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
237 // CHECK-ERROR-NEXT: add x1, x2, x3, lsr #64
238 // CHECK-ERROR-NEXT: ^
239 // CHECK-ERROR-NEXT: error: expected integer shift amount
240 // CHECK-ERROR-NEXT: add x1, x2, x3, asr #-1
241 // CHECK-ERROR-NEXT: ^
242 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
243 // CHECK-ERROR-NEXT: add x1, x2, x3, asr #64
244 // CHECK-ERROR-NEXT: ^
258 // CHECK-ERROR: error: expected integer shift amount
259 // CHECK-ERROR-NEXT: adds w1, w2, w3, lsl #-1
260 // CHECK-ERROR-NEXT: ^
261 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
262 // CHECK-ERROR-NEXT: adds w1, w2, w3, lsl #32
263 // CHECK-ERROR-NEXT: ^
264 // CHECK-ERROR-NEXT: error: expected integer shift amount
265 // CHECK-ERROR-NEXT: adds w1, w2, w3, lsr #-1
266 // CHECK-ERROR-NEXT: ^
267 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
268 // CHECK-ERROR-NEXT: adds w1, w2, w3, lsr #32
269 // CHECK-ERROR-NEXT: ^
270 // CHECK-ERROR-NEXT: error: expected integer shift amount
271 // CHECK-ERROR-NEXT: adds w1, w2, w3, asr #-1
272 // CHECK-ERROR-NEXT: ^
273 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
274 // CHECK-ERROR-NEXT: adds w1, w2, w3, asr #32
275 // CHECK-ERROR-NEXT: ^
276 // CHECK-ERROR-NEXT: error: expected integer shift amount
277 // CHECK-ERROR-NEXT: adds x1, x2, x3, lsl #-1
278 // CHECK-ERROR-NEXT: ^
279 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
280 // CHECK-ERROR-NEXT: adds x1, x2, x3, lsl #64
281 // CHECK-ERROR-NEXT: ^
282 // CHECK-ERROR-NEXT: error: expected integer shift amount
283 // CHECK-ERROR-NEXT: adds x1, x2, x3, lsr #-1
284 // CHECK-ERROR-NEXT: ^
285 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
286 // CHECK-ERROR-NEXT: adds x1, x2, x3, lsr #64
287 // CHECK-ERROR-NEXT: ^
288 // CHECK-ERROR-NEXT: error: expected integer shift amount
289 // CHECK-ERROR-NEXT: adds x1, x2, x3, asr #-1
290 // CHECK-ERROR-NEXT: ^
291 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
292 // CHECK-ERROR-NEXT: adds x1, x2, x3, asr #64
293 // CHECK-ERROR-NEXT: ^
307 // CHECK-ERROR: error: expected integer shift amount
308 // CHECK-ERROR-NEXT: sub w1, w2, w3, lsl #-1
309 // CHECK-ERROR-NEXT: ^
310 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
311 // CHECK-ERROR-NEXT: sub w1, w2, w3, lsl #32
312 // CHECK-ERROR-NEXT: ^
313 // CHECK-ERROR-NEXT: error: expected integer shift amount
314 // CHECK-ERROR-NEXT: sub w1, w2, w3, lsr #-1
315 // CHECK-ERROR-NEXT: ^
316 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
317 // CHECK-ERROR-NEXT: sub w1, w2, w3, lsr #32
318 // CHECK-ERROR-NEXT: ^
319 // CHECK-ERROR-NEXT: error: expected integer shift amount
320 // CHECK-ERROR-NEXT: sub w1, w2, w3, asr #-1
321 // CHECK-ERROR-NEXT: ^
322 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
323 // CHECK-ERROR-NEXT: sub w1, w2, w3, asr #32
324 // CHECK-ERROR-NEXT: ^
325 // CHECK-ERROR-NEXT: error: expected integer shift amount
326 // CHECK-ERROR-NEXT: sub x1, x2, x3, lsl #-1
327 // CHECK-ERROR-NEXT: ^
328 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
329 // CHECK-ERROR-NEXT: sub x1, x2, x3, lsl #64
330 // CHECK-ERROR-NEXT: ^
331 // CHECK-ERROR-NEXT: error: expected integer shift amount
332 // CHECK-ERROR-NEXT: sub x1, x2, x3, lsr #-1
333 // CHECK-ERROR-NEXT: ^
334 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
335 // CHECK-ERROR-NEXT: sub x1, x2, x3, lsr #64
336 // CHECK-ERROR-NEXT: ^
337 // CHECK-ERROR-NEXT: error: expected integer shift amount
338 // CHECK-ERROR-NEXT: sub x1, x2, x3, asr #-1
339 // CHECK-ERROR-NEXT: ^
340 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
341 // CHECK-ERROR-NEXT: sub x1, x2, x3, asr #64
342 // CHECK-ERROR-NEXT: ^
356 // CHECK-ERROR: error: expected integer shift amount
357 // CHECK-ERROR-NEXT: subs w1, w2, w3, lsl #-1
358 // CHECK-ERROR-NEXT: ^
359 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
360 // CHECK-ERROR-NEXT: subs w1, w2, w3, lsl #32
361 // CHECK-ERROR-NEXT: ^
362 // CHECK-ERROR-NEXT: error: expected integer shift amount
363 // CHECK-ERROR-NEXT: subs w1, w2, w3, lsr #-1
364 // CHECK-ERROR-NEXT: ^
365 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
366 // CHECK-ERROR-NEXT: subs w1, w2, w3, lsr #32
367 // CHECK-ERROR-NEXT: ^
368 // CHECK-ERROR-NEXT: error: expected integer shift amount
369 // CHECK-ERROR-NEXT: subs w1, w2, w3, asr #-1
370 // CHECK-ERROR-NEXT: ^
371 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
372 // CHECK-ERROR-NEXT: subs w1, w2, w3, asr #32
373 // CHECK-ERROR-NEXT: ^
374 // CHECK-ERROR-NEXT: error: expected integer shift amount
375 // CHECK-ERROR-NEXT: subs x1, x2, x3, lsl #-1
376 // CHECK-ERROR-NEXT: ^
377 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
378 // CHECK-ERROR-NEXT: subs x1, x2, x3, lsl #64
379 // CHECK-ERROR-NEXT: ^
380 // CHECK-ERROR-NEXT: error: expected integer shift amount
381 // CHECK-ERROR-NEXT: subs x1, x2, x3, lsr #-1
382 // CHECK-ERROR-NEXT: ^
383 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
384 // CHECK-ERROR-NEXT: subs x1, x2, x3, lsr #64
385 // CHECK-ERROR-NEXT: ^
386 // CHECK-ERROR-NEXT: error: expected integer shift amount
387 // CHECK-ERROR-NEXT: subs x1, x2, x3, asr #-1
388 // CHECK-ERROR-NEXT: ^
389 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
390 // CHECK-ERROR-NEXT: subs x1, x2, x3, asr #64
391 // CHECK-ERROR-NEXT: ^
405 // CHECK-ERROR: error: expected integer shift amount
406 // CHECK-ERROR-NEXT: cmn w9, w10, lsl #-1
407 // CHECK-ERROR-NEXT: ^
408 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
409 // CHECK-ERROR-NEXT: cmn w9, w10, lsl #32
410 // CHECK-ERROR-NEXT: ^
411 // CHECK-ERROR-NEXT: error: expected integer shift amount
412 // CHECK-ERROR-NEXT: cmn w11, w12, lsr #-1
413 // CHECK-ERROR-NEXT: ^
414 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
415 // CHECK-ERROR-NEXT: cmn w11, w12, lsr #32
416 // CHECK-ERROR-NEXT: ^
417 // CHECK-ERROR-NEXT: error: expected integer shift amount
418 // CHECK-ERROR-NEXT: cmn w19, wzr, asr #-1
419 // CHECK-ERROR-NEXT: ^
420 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
421 // CHECK-ERROR-NEXT: cmn wzr, wzr, asr #32
422 // CHECK-ERROR-NEXT: ^
423 // CHECK-ERROR-NEXT: error: expected integer shift amount
424 // CHECK-ERROR-NEXT: cmn x9, x10, lsl #-1
425 // CHECK-ERROR-NEXT: ^
426 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
427 // CHECK-ERROR-NEXT: cmn x9, x10, lsl #64
428 // CHECK-ERROR-NEXT: ^
429 // CHECK-ERROR-NEXT: error: expected integer shift amount
430 // CHECK-ERROR-NEXT: cmn x11, x12, lsr #-1
431 // CHECK-ERROR-NEXT: ^
432 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
433 // CHECK-ERROR-NEXT: cmn x11, x12, lsr #64
434 // CHECK-ERROR-NEXT: ^
435 // CHECK-ERROR-NEXT: error: expected integer shift amount
436 // CHECK-ERROR-NEXT: cmn x19, xzr, asr #-1
437 // CHECK-ERROR-NEXT: ^
438 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
439 // CHECK-ERROR-NEXT: cmn xzr, xzr, asr #64
440 // CHECK-ERROR-NEXT: ^
454 // CHECK-ERROR: error: expected integer shift amount
455 // CHECK-ERROR-NEXT: cmp w9, w10, lsl #-1
456 // CHECK-ERROR-NEXT: ^
457 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
458 // CHECK-ERROR-NEXT: cmp w9, w10, lsl #32
459 // CHECK-ERROR-NEXT: ^
460 // CHECK-ERROR-NEXT: error: expected integer shift amount
461 // CHECK-ERROR-NEXT: cmp w11, w12, lsr #-1
462 // CHECK-ERROR-NEXT: ^
463 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
464 // CHECK-ERROR-NEXT: cmp w11, w12, lsr #32
465 // CHECK-ERROR-NEXT: ^
466 // CHECK-ERROR-NEXT: error: expected integer shift amount
467 // CHECK-ERROR-NEXT: cmp w19, wzr, asr #-1
468 // CHECK-ERROR-NEXT: ^
469 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
470 // CHECK-ERROR-NEXT: cmp wzr, wzr, asr #32
471 // CHECK-ERROR-NEXT: ^
472 // CHECK-ERROR-NEXT: error: expected integer shift amount
473 // CHECK-ERROR-NEXT: cmp x9, x10, lsl #-1
474 // CHECK-ERROR-NEXT: ^
475 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
476 // CHECK-ERROR-NEXT: cmp x9, x10, lsl #64
477 // CHECK-ERROR-NEXT: ^
478 // CHECK-ERROR-NEXT: error: expected integer shift amount
479 // CHECK-ERROR-NEXT: cmp x11, x12, lsr #-1
480 // CHECK-ERROR-NEXT: ^
481 // CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
482 // CHECK-ERROR-NEXT: cmp x11, x12, lsr #64
483 // CHECK-ERROR-NEXT: ^
484 // CHECK-ERROR-NEXT: error: expected integer shift amount
485 // CHECK-ERROR-NEXT: cmp x19, xzr, asr #-1
486 // CHECK-ERROR-NEXT: ^
487 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
488 // CHECK-ERROR-NEXT: cmp xzr, xzr, asr #64
489 // CHECK-ERROR-NEXT: ^
503 // CHECK-ERROR: error: expected integer shift amount
504 // CHECK-ERROR-NEXT: neg w9, w10, lsl #-1
505 // CHECK-ERROR-NEXT: ^
506 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
507 // CHECK-ERROR-NEXT: neg w9, w10, lsl #32
508 // CHECK-ERROR-NEXT: ^
509 // CHECK-ERROR-NEXT: error: expected integer shift amount
510 // CHECK-ERROR-NEXT: neg w11, w12, lsr #-1
511 // CHECK-ERROR-NEXT: ^
512 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
513 // CHECK-ERROR-NEXT: neg w11, w12, lsr #32
514 // CHECK-ERROR-NEXT: ^
515 // CHECK-ERROR-NEXT: error: expected integer shift amount
516 // CHECK-ERROR-NEXT: neg w19, wzr, asr #-1
517 // CHECK-ERROR-NEXT: ^
518 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
519 // CHECK-ERROR-NEXT: neg wzr, wzr, asr #32
520 // CHECK-ERROR-NEXT: ^
521 // CHECK-ERROR-NEXT: error: expected integer shift amount
522 // CHECK-ERROR-NEXT: neg x9, x10, lsl #-1
523 // CHECK-ERROR-NEXT: ^
524 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
525 // CHECK-ERROR-NEXT: neg x9, x10, lsl #64
526 // CHECK-ERROR-NEXT: ^
527 // CHECK-ERROR-NEXT: error: expected integer shift amount
528 // CHECK-ERROR-NEXT: neg x11, x12, lsr #-1
529 // CHECK-ERROR-NEXT: ^
530 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
531 // CHECK-ERROR-NEXT: neg x11, x12, lsr #64
532 // CHECK-ERROR-NEXT: ^
533 // CHECK-ERROR-NEXT: error: expected integer shift amount
534 // CHECK-ERROR-NEXT: neg x19, xzr, asr #-1
535 // CHECK-ERROR-NEXT: ^
536 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
537 // CHECK-ERROR-NEXT: neg xzr, xzr, asr #64
538 // CHECK-ERROR-NEXT: ^
552 // CHECK-ERROR: error: expected integer shift amount
553 // CHECK-ERROR-NEXT: negs w9, w10, lsl #-1
554 // CHECK-ERROR-NEXT: ^
555 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
556 // CHECK-ERROR-NEXT: negs w9, w10, lsl #32
557 // CHECK-ERROR-NEXT: ^
558 // CHECK-ERROR-NEXT: error: expected integer shift amount
559 // CHECK-ERROR-NEXT: negs w11, w12, lsr #-1
560 // CHECK-ERROR-NEXT: ^
561 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
562 // CHECK-ERROR-NEXT: negs w11, w12, lsr #32
563 // CHECK-ERROR-NEXT: ^
564 // CHECK-ERROR-NEXT: error: expected integer shift amount
565 // CHECK-ERROR-NEXT: negs w19, wzr, asr #-1
566 // CHECK-ERROR-NEXT: ^
567 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
568 // CHECK-ERROR-NEXT: negs wzr, wzr, asr #32
569 // CHECK-ERROR-NEXT: ^
570 // CHECK-ERROR-NEXT: error: expected integer shift amount
571 // CHECK-ERROR-NEXT: negs x9, x10, lsl #-1
572 // CHECK-ERROR-NEXT: ^
573 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
574 // CHECK-ERROR-NEXT: negs x9, x10, lsl #64
575 // CHECK-ERROR-NEXT: ^
576 // CHECK-ERROR-NEXT: error: expected integer shift amount
577 // CHECK-ERROR-NEXT: negs x11, x12, lsr #-1
578 // CHECK-ERROR-NEXT: ^
579 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
580 // CHECK-ERROR-NEXT: negs x11, x12, lsr #64
581 // CHECK-ERROR-NEXT: ^
582 // CHECK-ERROR-NEXT: error: expected integer shift amount
583 // CHECK-ERROR-NEXT: negs x19, xzr, asr #-1
584 // CHECK-ERROR-NEXT: ^
585 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
586 // CHECK-ERROR-NEXT: negs xzr, xzr, asr #64
587 // CHECK-ERROR-NEXT: ^
596 // CHECK-ERROR: error: invalid operand for instruction
597 // CHECK-ERROR-NEXT: adc wsp, w3, w5
598 // CHECK-ERROR-NEXT: ^
599 // CHECK-ERROR-NEXT: error: invalid operand for instruction
600 // CHECK-ERROR-NEXT: adc w1, wsp, w2
601 // CHECK-ERROR-NEXT: ^
602 // CHECK-ERROR-NEXT: error: invalid operand for instruction
603 // CHECK-ERROR-NEXT: adc w0, w10, wsp
604 // CHECK-ERROR-NEXT: ^
609 // CHECK-ERROR: error: invalid operand for instruction
610 // CHECK-ERROR-NEXT: adc sp, x3, x5
611 // CHECK-ERROR-NEXT: ^
612 // CHECK-ERROR-NEXT: error: invalid operand for instruction
613 // CHECK-ERROR-NEXT: adc x1, sp, x2
614 // CHECK-ERROR-NEXT: ^
615 // CHECK-ERROR-NEXT: error: invalid operand for instruction
616 // CHECK-ERROR-NEXT: adc x0, x10, sp
617 // CHECK-ERROR-NEXT: ^
622 // CHECK-ERROR: error: invalid operand for instruction
623 // CHECK-ERROR-NEXT: adcs wsp, w3, w5
624 // CHECK-ERROR-NEXT: ^
625 // CHECK-ERROR-NEXT: error: invalid operand for instruction
626 // CHECK-ERROR-NEXT: adcs w1, wsp, w2
627 // CHECK-ERROR-NEXT: ^
628 // CHECK-ERROR-NEXT: error: invalid operand for instruction
629 // CHECK-ERROR-NEXT: adcs w0, w10, wsp
630 // CHECK-ERROR-NEXT: ^
635 // CHECK-ERROR: error: invalid operand for instruction
636 // CHECK-ERROR-NEXT: adcs sp, x3, x5
637 // CHECK-ERROR-NEXT: ^
638 // CHECK-ERROR-NEXT: error: invalid operand for instruction
639 // CHECK-ERROR-NEXT: adcs x1, sp, x2
640 // CHECK-ERROR-NEXT: ^
641 // CHECK-ERROR-NEXT: error: invalid operand for instruction
642 // CHECK-ERROR-NEXT: adcs x0, x10, sp
643 // CHECK-ERROR-NEXT: ^
648 // CHECK-ERROR: error: invalid operand for instruction
649 // CHECK-ERROR-NEXT: sbc wsp, w3, w5
650 // CHECK-ERROR-NEXT: ^
651 // CHECK-ERROR-NEXT: error: invalid operand for instruction
652 // CHECK-ERROR-NEXT: sbc w1, wsp, w2
653 // CHECK-ERROR-NEXT: ^
654 // CHECK-ERROR-NEXT: error: invalid operand for instruction
655 // CHECK-ERROR-NEXT: sbc w0, w10, wsp
656 // CHECK-ERROR-NEXT: ^
661 // CHECK-ERROR: error: invalid operand for instruction
662 // CHECK-ERROR-NEXT: sbc sp, x3, x5
663 // CHECK-ERROR-NEXT: ^
664 // CHECK-ERROR-NEXT: error: invalid operand for instruction
665 // CHECK-ERROR-NEXT: sbc x1, sp, x2
666 // CHECK-ERROR-NEXT: ^
667 // CHECK-ERROR-NEXT: error: invalid operand for instruction
668 // CHECK-ERROR-NEXT: sbc x0, x10, sp
669 // CHECK-ERROR-NEXT: ^
674 // CHECK-ERROR: error: invalid operand for instruction
675 // CHECK-ERROR-NEXT: sbcs wsp, w3, w5
676 // CHECK-ERROR-NEXT: ^
677 // CHECK-ERROR-NEXT: error: invalid operand for instruction
678 // CHECK-ERROR-NEXT: sbcs w1, wsp, w2
679 // CHECK-ERROR-NEXT: ^
680 // CHECK-ERROR-NEXT: error: invalid operand for instruction
681 // CHECK-ERROR-NEXT: sbcs w0, w10, wsp
682 // CHECK-ERROR-NEXT: ^
687 // CHECK-ERROR: error: invalid operand for instruction
688 // CHECK-ERROR-NEXT: sbcs sp, x3, x5
689 // CHECK-ERROR-NEXT: ^
690 // CHECK-ERROR-NEXT: error: invalid operand for instruction
691 // CHECK-ERROR-NEXT: sbcs x1, sp, x2
692 // CHECK-ERROR-NEXT: ^
693 // CHECK-ERROR-NEXT: error: invalid operand for instruction
694 // CHECK-ERROR-NEXT: sbcs x0, x10, sp
695 // CHECK-ERROR-NEXT: ^
701 // CHECK-ERROR: error: invalid operand for instruction
702 // CHECK-ERROR-NEXT: ngc wsp, w3
703 // CHECK-ERROR-NEXT: ^
704 // CHECK-ERROR-NEXT: error: invalid operand for instruction
705 // CHECK-ERROR-NEXT: ngc w9, wsp
706 // CHECK-ERROR-NEXT: ^
707 // CHECK-ERROR-NEXT: error: invalid operand for instruction
708 // CHECK-ERROR-NEXT: ngc sp, x9
709 // CHECK-ERROR-NEXT: ^
710 // CHECK-ERROR-NEXT: error: invalid operand for instruction
711 // CHECK-ERROR-NEXT: ngc x2, sp
712 // CHECK-ERROR-NEXT: ^
718 // CHECK-ERROR: error: invalid operand for instruction
719 // CHECK-ERROR-NEXT: ngcs wsp, w3
720 // CHECK-ERROR-NEXT: ^
721 // CHECK-ERROR-NEXT: error: invalid operand for instruction
722 // CHECK-ERROR-NEXT: ngcs w9, wsp
723 // CHECK-ERROR-NEXT: ^
724 // CHECK-ERROR-NEXT: error: invalid operand for instruction
725 // CHECK-ERROR-NEXT: ngcs sp, x9
726 // CHECK-ERROR-NEXT: ^
727 // CHECK-ERROR-NEXT: error: invalid operand for instruction
728 // CHECK-ERROR-NEXT: ngcs x2, sp
729 // CHECK-ERROR-NEXT: ^
739 // CHECK-ERROR: error: expected compatible register or logical immediate
740 // CHECK-ERROR-NEXT: and w2, w3, #4294967296
741 // CHECK-ERROR-NEXT: ^
742 // CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
743 // CHECK-ERROR-NEXT: eor w2, w3, #4294967296
744 // CHECK-ERROR-NEXT: ^
745 // CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
746 // CHECK-ERROR-NEXT: orr w2, w3, #4294967296
747 // CHECK-ERROR-NEXT: ^
748 // CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
749 // CHECK-ERROR-NEXT: ands w2, w3, #4294967296
750 // CHECK-ERROR-NEXT: ^
762 // CHECK-ERROR: error: invalid operand for instruction
763 // CHECK-ERROR-NEXT: sbfm x3, w13, #0, #0
764 // CHECK-ERROR-NEXT: ^
765 // CHECK-ERROR-NEXT: error: invalid operand for instruction
766 // CHECK-ERROR-NEXT: sbfm w12, x9, #0, #0
767 // CHECK-ERROR-NEXT: ^
768 // CHECK-ERROR-NEXT: error: invalid operand for instruction
769 // CHECK-ERROR-NEXT: sbfm sp, x3, #3, #5
770 // CHECK-ERROR-NEXT: ^
771 // CHECK-ERROR-NEXT: error: invalid operand for instruction
772 // CHECK-ERROR-NEXT: sbfm w3, wsp, #1, #9
773 // CHECK-ERROR-NEXT: ^
774 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
775 // CHECK-ERROR-NEXT: sbfm x9, x5, #-1, #0
776 // CHECK-ERROR-NEXT: ^
777 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
778 // CHECK-ERROR-NEXT: sbfm x9, x5, #0, #-1
779 // CHECK-ERROR-NEXT: ^
785 // CHECK-ERROR: error: {{expected|immediate must be an}} integer in range [0, 31]
786 // CHECK-ERROR-NEXT: sbfm w3, w5, #32, #1
787 // CHECK-ERROR-NEXT: ^
788 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
789 // CHECK-ERROR-NEXT: sbfm w7, w11, #19, #32
790 // CHECK-ERROR-NEXT: ^
791 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
792 // CHECK-ERROR-NEXT: sbfm x29, x30, #64, #0
793 // CHECK-ERROR-NEXT: ^
794 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
795 // CHECK-ERROR-NEXT: sbfm x10, x20, #63, #64
796 // CHECK-ERROR-NEXT: ^
802 // CHECK-ERROR: error: {{expected|immediate must be an}} integer in range [0, 31]
803 // CHECK-ERROR-NEXT: ubfm w3, w5, #32, #1
804 // CHECK-ERROR-NEXT: ^
805 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
806 // CHECK-ERROR-NEXT: ubfm w7, w11, #19, #32
807 // CHECK-ERROR-NEXT: ^
808 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
809 // CHECK-ERROR-NEXT: ubfm x29, x30, #64, #0
810 // CHECK-ERROR-NEXT: ^
811 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
812 // CHECK-ERROR-NEXT: ubfm x10, x20, #63, #64
813 // CHECK-ERROR-NEXT: ^
819 // CHECK-ERROR: error: {{expected|immediate must be an}} integer in range [0, 31]
820 // CHECK-ERROR-NEXT: bfm w3, w5, #32, #1
821 // CHECK-ERROR-NEXT: ^
822 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
823 // CHECK-ERROR-NEXT: bfm w7, w11, #19, #32
824 // CHECK-ERROR-NEXT: ^
825 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
826 // CHECK-ERROR-NEXT: bfm x29, x30, #64, #0
827 // CHECK-ERROR-NEXT: ^
828 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
829 // CHECK-ERROR-NEXT: bfm x10, x20, #63, #64
830 // CHECK-ERROR-NEXT: ^
835 // CHECK-ERROR-AARCH64: error: invalid operand for instruction
836 // CHECK-ERROR-AARCH64-NEXT: sxtb x3, x2
837 // CHECK-ERROR-AARCH64-NEXT: ^
838 // CHECK-ERROR-AARCH64-NEXT: error: invalid operand for instruction
839 // CHECK-ERROR-AARCH64-NEXT: sxth xzr, xzr
840 // CHECK-ERROR-AARCH64-NEXT: ^
841 // CHECK-ERROR-AARCH64-NEXT: error: invalid operand for instruction
842 // CHECK-ERROR-AARCH64-NEXT: sxtw x3, x5
843 // CHECK-ERROR-AARCH64-NEXT: ^
850 // CHECK-ERROR: error: invalid operand for instruction
851 // CHECK-ERROR-NEXT: uxtb x3, x12
852 // CHECK-ERROR-NEXT: ^
853 // CHECK-ERROR-NEXT: error: invalid operand for instruction
854 // CHECK-ERROR-NEXT: uxth x5, x9
855 // CHECK-ERROR-NEXT: ^
856 // CHECK-ERROR-AARCH64-NEXT: error: invalid instruction
857 // CHECK-ERROR-AARCH64-NEXT: uxtw x3, x5
858 // CHECK-ERROR-AARCH64-NEXT: ^
859 // CHECK-ERROR-NEXT: error: invalid operand for instruction
860 // CHECK-ERROR-NEXT: uxtb x2, sp
861 // CHECK-ERROR-NEXT: ^
862 // CHECK-ERROR-NEXT: error: invalid operand for instruction
863 // CHECK-ERROR-NEXT: uxtb sp, xzr
864 // CHECK-ERROR-NEXT: ^
871 // CHECK-ERROR: error: invalid operand for instruction
872 // CHECK-ERROR-NEXT: asr x3, w2, #1
873 // CHECK-ERROR-NEXT: ^
874 // CHECK-ERROR-NEXT: error: invalid operand for instruction
875 // CHECK-ERROR-NEXT: asr sp, x2, #1
876 // CHECK-ERROR-NEXT: ^
877 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
878 // CHECK-ERROR-NEXT: asr x25, x26, #-1
879 // CHECK-ERROR-NEXT: ^
880 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
881 // CHECK-ERROR-NEXT: asr x25, x26, #64
882 // CHECK-ERROR-NEXT: ^
883 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
884 // CHECK-ERROR-NEXT: asr w9, w8, #32
885 // CHECK-ERROR-NEXT: ^
895 // CHECK-ERROR-AARCH64: error: expected integer in range [<lsb>, 31]
896 // CHECK-ERROR-ARM64: error: expected integer in range [1, 32]
897 // CHECK-ERROR-NEXT: sbfiz w1, w2, #0, #0
898 // CHECK-ERROR-NEXT: ^
899 // CHECK-ERROR-NEXT: error: invalid operand for instruction
900 // CHECK-ERROR-NEXT: sbfiz wsp, w9, #0, #1
901 // CHECK-ERROR-NEXT: ^
902 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
903 // CHECK-ERROR-NEXT: sbfiz w9, w10, #32, #1
904 // CHECK-ERROR-NEXT: ^
905 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
906 // CHECK-ERROR-NEXT: sbfiz w11, w12, #32, #0
907 // CHECK-ERROR-NEXT: ^
908 // CHECK-ERROR-NEXT: error: requested insert overflows register
909 // CHECK-ERROR-NEXT: sbfiz w9, w10, #10, #23
910 // CHECK-ERROR-NEXT: ^
911 // CHECK-ERROR-NEXT: error: requested insert overflows register
912 // CHECK-ERROR-NEXT: sbfiz x3, x5, #12, #53
913 // CHECK-ERROR-NEXT: ^
914 // CHECK-ERROR-NEXT: error: invalid operand for instruction
915 // CHECK-ERROR-NEXT: sbfiz sp, x3, #7, #6
916 // CHECK-ERROR-NEXT: ^
917 // CHECK-ERROR-NEXT: error: invalid operand for instruction
918 // CHECK-ERROR-NEXT: sbfiz w3, wsp, #10, #8
919 // CHECK-ERROR-NEXT: ^
929 // CHECK-ERROR-AARCH64: error: expected integer in range [<lsb>, 31]
930 // CHECK-ERROR-ARM64: error: expected integer in range [1, 32]
931 // CHECK-ERROR-NEXT: sbfx w1, w2, #0, #0
932 // CHECK-ERROR-NEXT: ^
933 // CHECK-ERROR-NEXT: error: invalid operand for instruction
934 // CHECK-ERROR-NEXT: sbfx wsp, w9, #0, #1
935 // CHECK-ERROR-NEXT: ^
936 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
937 // CHECK-ERROR-NEXT: sbfx w9, w10, #32, #1
938 // CHECK-ERROR-NEXT: ^
939 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
940 // CHECK-ERROR-NEXT: sbfx w11, w12, #32, #0
941 // CHECK-ERROR-NEXT: ^
942 // CHECK-ERROR-NEXT: error: requested extract overflows register
943 // CHECK-ERROR-NEXT: sbfx w9, w10, #10, #23
944 // CHECK-ERROR-NEXT: ^
945 // CHECK-ERROR-NEXT: error: requested extract overflows register
946 // CHECK-ERROR-NEXT: sbfx x3, x5, #12, #53
947 // CHECK-ERROR-NEXT: ^
948 // CHECK-ERROR-NEXT: error: invalid operand for instruction
949 // CHECK-ERROR-NEXT: sbfx sp, x3, #7, #6
950 // CHECK-ERROR-NEXT: ^
951 // CHECK-ERROR-NEXT: error: invalid operand for instruction
952 // CHECK-ERROR-NEXT: sbfx w3, wsp, #10, #8
953 // CHECK-ERROR-NEXT: ^
963 // CHECK-ERROR-AARCH64: error: expected integer in range [<lsb>, 31]
964 // CHECK-ERROR-ARM64: error: expected integer in range [1, 32]
965 // CHECK-ERROR-NEXT: bfi w1, w2, #0, #0
966 // CHECK-ERROR-NEXT: ^
967 // CHECK-ERROR-NEXT: error: invalid operand for instruction
968 // CHECK-ERROR-NEXT: bfi wsp, w9, #0, #1
969 // CHECK-ERROR-NEXT: ^
970 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
971 // CHECK-ERROR-NEXT: bfi w9, w10, #32, #1
972 // CHECK-ERROR-NEXT: ^
973 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
974 // CHECK-ERROR-NEXT: bfi w11, w12, #32, #0
975 // CHECK-ERROR-NEXT: ^
976 // CHECK-ERROR-NEXT: error: requested insert overflows register
977 // CHECK-ERROR-NEXT: bfi w9, w10, #10, #23
978 // CHECK-ERROR-NEXT: ^
979 // CHECK-ERROR-NEXT: error: requested insert overflows register
980 // CHECK-ERROR-NEXT: bfi x3, x5, #12, #53
981 // CHECK-ERROR-NEXT: ^
982 // CHECK-ERROR-NEXT: error: invalid operand for instruction
983 // CHECK-ERROR-NEXT: bfi sp, x3, #7, #6
984 // CHECK-ERROR-NEXT: ^
985 // CHECK-ERROR-NEXT: error: invalid operand for instruction
986 // CHECK-ERROR-NEXT: bfi w3, wsp, #10, #8
987 // CHECK-ERROR-NEXT: ^
997 // CHECK-ERROR-AARCH64: error: expected integer in range [<lsb>, 31]
998 // CHECK-ERROR-ARM64: error: expected integer in range [1, 32]
999 // CHECK-ERROR-NEXT: bfxil w1, w2, #0, #0
1000 // CHECK-ERROR-NEXT: ^
1001 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1002 // CHECK-ERROR-NEXT: bfxil wsp, w9, #0, #1
1003 // CHECK-ERROR-NEXT: ^
1004 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1005 // CHECK-ERROR-NEXT: bfxil w9, w10, #32, #1
1006 // CHECK-ERROR-NEXT: ^
1007 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1008 // CHECK-ERROR-NEXT: bfxil w11, w12, #32, #0
1009 // CHECK-ERROR-NEXT: ^
1010 // CHECK-ERROR-NEXT: error: requested extract overflows register
1011 // CHECK-ERROR-NEXT: bfxil w9, w10, #10, #23
1012 // CHECK-ERROR-NEXT: ^
1013 // CHECK-ERROR-NEXT: error: requested extract overflows register
1014 // CHECK-ERROR-NEXT: bfxil x3, x5, #12, #53
1015 // CHECK-ERROR-NEXT: ^
1016 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1017 // CHECK-ERROR-NEXT: bfxil sp, x3, #7, #6
1018 // CHECK-ERROR-NEXT: ^
1019 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1020 // CHECK-ERROR-NEXT: bfxil w3, wsp, #10, #8
1021 // CHECK-ERROR-NEXT: ^
1031 // CHECK-ERROR-AARCH64: error: expected integer in range [<lsb>, 31]
1032 // CHECK-ERROR-ARM64: error: expected integer in range [1, 32]
1033 // CHECK-ERROR-NEXT: ubfiz w1, w2, #0, #0
1034 // CHECK-ERROR-NEXT: ^
1035 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1036 // CHECK-ERROR-NEXT: ubfiz wsp, w9, #0, #1
1037 // CHECK-ERROR-NEXT: ^
1038 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1039 // CHECK-ERROR-NEXT: ubfiz w9, w10, #32, #1
1040 // CHECK-ERROR-NEXT: ^
1041 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1042 // CHECK-ERROR-NEXT: ubfiz w11, w12, #32, #0
1043 // CHECK-ERROR-NEXT: ^
1044 // CHECK-ERROR-NEXT: error: requested insert overflows register
1045 // CHECK-ERROR-NEXT: ubfiz w9, w10, #10, #23
1046 // CHECK-ERROR-NEXT: ^
1047 // CHECK-ERROR-NEXT: error: requested insert overflows register
1048 // CHECK-ERROR-NEXT: ubfiz x3, x5, #12, #53
1049 // CHECK-ERROR-NEXT: ^
1050 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1051 // CHECK-ERROR-NEXT: ubfiz sp, x3, #7, #6
1052 // CHECK-ERROR-NEXT: ^
1053 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1054 // CHECK-ERROR-NEXT: ubfiz w3, wsp, #10, #8
1055 // CHECK-ERROR-NEXT: ^
1065 // CHECK-ERROR-AARCH64: error: expected integer in range [<lsb>, 31]
1066 // CHECK-ERROR-ARM64: error: expected integer in range [1, 32]
1067 // CHECK-ERROR-NEXT: ubfx w1, w2, #0, #0
1068 // CHECK-ERROR-NEXT: ^
1069 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1070 // CHECK-ERROR-NEXT: ubfx wsp, w9, #0, #1
1071 // CHECK-ERROR-NEXT: ^
1072 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1073 // CHECK-ERROR-NEXT: ubfx w9, w10, #32, #1
1074 // CHECK-ERROR-NEXT: ^
1075 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1076 // CHECK-ERROR-NEXT: ubfx w11, w12, #32, #0
1077 // CHECK-ERROR-NEXT: ^
1078 // CHECK-ERROR-NEXT: error: requested extract overflows register
1079 // CHECK-ERROR-NEXT: ubfx w9, w10, #10, #23
1080 // CHECK-ERROR-NEXT: ^
1081 // CHECK-ERROR-NEXT: error: requested extract overflows register
1082 // CHECK-ERROR-NEXT: ubfx x3, x5, #12, #53
1083 // CHECK-ERROR-NEXT: ^
1084 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1085 // CHECK-ERROR-NEXT: ubfx sp, x3, #7, #6
1086 // CHECK-ERROR-NEXT: ^
1087 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1088 // CHECK-ERROR-NEXT: ubfx w3, wsp, #10, #8
1089 // CHECK-ERROR-NEXT: ^
1095 // CHECK-ERROR: error: invalid operand for instruction
1096 // CHECK-ERROR-NEXT: bfc wsp, #3, #6
1097 // CHECK-ERROR-NEXT: ^
1098 // CHECK-ERROR-NEXT: error: requested insert overflows register
1099 // CHECK-ERROR-NEXT: bfc w4, #2, #31
1100 // CHECK-ERROR-NEXT: ^
1101 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1102 // CHECK-ERROR-NEXT: bfc sp, #0, #1
1103 // CHECK-ERROR-NEXT: ^
1104 // CHECK-ERROR-NEXT: error: expected integer in range [1, 32]
1105 // CHECK-ERROR-NEXT: bfc x6, #0, #0
1106 // CHECK-ERROR-NEXT: ^
1115 // CHECK-ERROR: error: invalid operand for instruction
1116 // CHECK-ERROR-NEXT: cbnz wsp, lbl
1117 // CHECK-ERROR-NEXT: ^
1118 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1119 // CHECK-ERROR-NEXT: cbz sp, lbl
1120 // CHECK-ERROR-NEXT: ^
1121 // CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
1122 // CHECK-ERROR-NEXT: cbz x3, x5
1123 // CHECK-ERROR-NEXT: ^
1128 // CHECK-ERROR: error: expected label or encodable integer pc offset
1129 // CHECK-ERROR-NEXT: cbz w20, #1048576
1130 // CHECK-ERROR-NEXT: ^
1131 // CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
1132 // CHECK-ERROR-NEXT: cbnz xzr, #-1048580
1133 // CHECK-ERROR-NEXT: ^
1134 // CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
1135 // CHECK-ERROR-NEXT: cbz x29, #1
1136 // CHECK-ERROR-NEXT: ^
1143 // CHECK-ERROR: error: invalid condition code
1144 // CHECK-ERROR-NEXT: b.zf lbl
1145 // CHECK-ERROR-NEXT: ^
1150 // CHECK-ERROR: error: expected label or encodable integer pc offset
1151 // CHECK-ERROR-NEXT: b.eq #1048576
1152 // CHECK-ERROR-NEXT: ^
1153 // CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
1154 // CHECK-ERROR-NEXT: b.ge #-1048580
1155 // CHECK-ERROR-NEXT: ^
1156 // CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
1157 // CHECK-ERROR-NEXT: b.cc #1
1158 // CHECK-ERROR-NEXT: ^
1169 // CHECK-ERROR: error: invalid operand for instruction
1170 // CHECK-ERROR-NEXT: ccmp wsp, #4, #2, ne
1171 // CHECK-ERROR-NEXT: ^
1172 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1173 // CHECK-ERROR-NEXT: ccmp w25, #-1, #15, hs
1174 // CHECK-ERROR-NEXT: ^
1175 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1176 // CHECK-ERROR-NEXT: ccmp w3, #32, #0, ge
1177 // CHECK-ERROR-NEXT: ^
1178 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1179 // CHECK-ERROR-NEXT: ccmp w19, #5, #-1, lt
1180 // CHECK-ERROR-NEXT: ^
1181 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1182 // CHECK-ERROR-NEXT: ccmp w20, #7, #16, hs
1183 // CHECK-ERROR-NEXT: ^
1190 // CHECK-ERROR: error: invalid operand for instruction
1191 // CHECK-ERROR-NEXT: ccmp sp, #4, #2, ne
1192 // CHECK-ERROR-NEXT: ^
1193 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1194 // CHECK-ERROR-NEXT: ccmp x25, #-1, #15, hs
1195 // CHECK-ERROR-NEXT: ^
1196 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1197 // CHECK-ERROR-NEXT: ccmp x3, #32, #0, ge
1198 // CHECK-ERROR-NEXT: ^
1199 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1200 // CHECK-ERROR-NEXT: ccmp x19, #5, #-1, lt
1201 // CHECK-ERROR-NEXT: ^
1202 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1203 // CHECK-ERROR-NEXT: ccmp x20, #7, #16, hs
1204 // CHECK-ERROR-NEXT: ^
1211 // CHECK-ERROR: error: invalid operand for instruction
1212 // CHECK-ERROR-NEXT: ccmn wsp, #4, #2, ne
1213 // CHECK-ERROR-NEXT: ^
1214 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1215 // CHECK-ERROR-NEXT: ccmn w25, #-1, #15, hs
1216 // CHECK-ERROR-NEXT: ^
1217 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1218 // CHECK-ERROR-NEXT: ccmn w3, #32, #0, ge
1219 // CHECK-ERROR-NEXT: ^
1220 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1221 // CHECK-ERROR-NEXT: ccmn w19, #5, #-1, lt
1222 // CHECK-ERROR-NEXT: ^
1223 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1224 // CHECK-ERROR-NEXT: ccmn w20, #7, #16, hs
1225 // CHECK-ERROR-NEXT: ^
1232 // CHECK-ERROR: error: invalid operand for instruction
1233 // CHECK-ERROR-NEXT: ccmn sp, #4, #2, ne
1234 // CHECK-ERROR-NEXT: ^
1235 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1236 // CHECK-ERROR-NEXT: ccmn x25, #-1, #15, hs
1237 // CHECK-ERROR-NEXT: ^
1238 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1239 // CHECK-ERROR-NEXT: ccmn x3, #32, #0, ge
1240 // CHECK-ERROR-NEXT: ^
1241 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1242 // CHECK-ERROR-NEXT: ccmn x19, #5, #-1, lt
1243 // CHECK-ERROR-NEXT: ^
1244 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1245 // CHECK-ERROR-NEXT: ccmn x20, #7, #16, hs
1246 // CHECK-ERROR-NEXT: ^
1256 // CHECK-ERROR: error: invalid operand for instruction
1257 // CHECK-ERROR-NEXT: ccmp wsp, w4, #2, ne
1258 // CHECK-ERROR-NEXT: ^
1259 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1260 // CHECK-ERROR-NEXT: ccmp w3, wsp, #0, ge
1261 // CHECK-ERROR-NEXT: ^
1262 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1263 // CHECK-ERROR-NEXT: ccmp w19, w5, #-1, lt
1264 // CHECK-ERROR-NEXT: ^
1265 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1266 // CHECK-ERROR-NEXT: ccmp w20, w7, #16, hs
1267 // CHECK-ERROR-NEXT: ^
1273 // CHECK-ERROR: error: invalid operand for instruction
1274 // CHECK-ERROR-NEXT: ccmp sp, x4, #2, ne
1275 // CHECK-ERROR-NEXT: ^
1276 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1277 // CHECK-ERROR-NEXT: ccmp x25, sp, #15, hs
1278 // CHECK-ERROR-NEXT: ^
1279 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1280 // CHECK-ERROR-NEXT: ccmp x19, x5, #-1, lt
1281 // CHECK-ERROR-NEXT: ^
1282 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1283 // CHECK-ERROR-NEXT: ccmp x20, x7, #16, hs
1284 // CHECK-ERROR-NEXT: ^
1290 // CHECK-ERROR: error: invalid operand for instruction
1291 // CHECK-ERROR-NEXT: ccmn wsp, w4, #2, ne
1292 // CHECK-ERROR-NEXT: ^
1293 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1294 // CHECK-ERROR-NEXT: ccmn w25, wsp, #15, hs
1295 // CHECK-ERROR-NEXT: ^
1296 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1297 // CHECK-ERROR-NEXT: ccmn w19, w5, #-1, lt
1298 // CHECK-ERROR-NEXT: ^
1299 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1300 // CHECK-ERROR-NEXT: ccmn w20, w7, #16, hs
1301 // CHECK-ERROR-NEXT: ^
1307 // CHECK-ERROR: error: invalid operand for instruction
1308 // CHECK-ERROR-NEXT: ccmn sp, x4, #2, ne
1309 // CHECK-ERROR-NEXT: ^
1310 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1311 // CHECK-ERROR-NEXT: ccmn x25, sp, #15, hs
1312 // CHECK-ERROR-NEXT: ^
1313 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1314 // CHECK-ERROR-NEXT: ccmn x19, x5, #-1, lt
1315 // CHECK-ERROR-NEXT: ^
1316 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1317 // CHECK-ERROR-NEXT: ccmn x20, x7, #16, hs
1318 // CHECK-ERROR-NEXT: ^
1332 // CHECK-ERROR: error: invalid operand for instruction
1333 // CHECK-ERROR-NEXT: csel w4, wsp, w9, eq
1334 // CHECK-ERROR-NEXT: ^
1335 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1336 // CHECK-ERROR-NEXT: csel wsp, w2, w3, ne
1337 // CHECK-ERROR-NEXT: ^
1338 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1339 // CHECK-ERROR-NEXT: csel w10, w11, wsp, ge
1340 // CHECK-ERROR-NEXT: ^
1341 // CHECK-ERROR-NEXT: error: expected AArch64 condition code
1342 // CHECK-ERROR-NEXT: csel w1, w2, w3, #3
1343 // CHECK-ERROR-NEXT: ^
1344 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1345 // CHECK-ERROR-NEXT: csel x4, sp, x9, eq
1346 // CHECK-ERROR-NEXT: ^
1347 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1348 // CHECK-ERROR-NEXT: csel sp, x2, x3, ne
1349 // CHECK-ERROR-NEXT: ^
1350 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1351 // CHECK-ERROR-NEXT: csel x10, x11, sp, ge
1352 // CHECK-ERROR-NEXT: ^
1353 // CHECK-ERROR-NEXT: error: expected AArch64 condition code
1354 // CHECK-ERROR-NEXT: csel x1, x2, x3, #3
1355 // CHECK-ERROR-NEXT: ^
1359 // CHECK-ERROR: error: invalid operand for instruction
1360 // CHECK-ERROR-NEXT: csinc w20, w21, wsp, mi
1361 // CHECK-ERROR-NEXT: ^
1362 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1363 // CHECK-ERROR-NEXT: csinc sp, x30, x29, eq
1364 // CHECK-ERROR-NEXT: ^
1368 // CHECK-ERROR: error: invalid operand for instruction
1369 // CHECK-ERROR-NEXT: csinv w20, wsp, wsp, mi
1370 // CHECK-ERROR-NEXT: ^
1371 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1372 // CHECK-ERROR-NEXT: csinv sp, x30, x29, le
1373 // CHECK-ERROR-NEXT: ^
1377 // CHECK-ERROR: error: invalid operand for instruction
1378 // CHECK-ERROR-NEXT: csneg w20, w21, wsp, mi
1379 // CHECK-ERROR-NEXT: ^
1380 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1381 // CHECK-ERROR-NEXT: csneg x0, sp, x29, le
1382 // CHECK-ERROR-NEXT: ^
1388 // CHECK-ERROR: error: invalid operand for instruction
1389 // CHECK-ERROR-NEXT: cset wsp, lt
1390 // CHECK-ERROR-NEXT: ^
1391 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1392 // CHECK-ERROR-NEXT: csetm sp, ge
1393 // CHECK-ERROR-NEXT: ^
1394 // CHECK-ERROR-NEXT: error: condition codes AL and NV are invalid for this instruction
1395 // CHECK-ERROR-NEXT: cset w1, al
1396 // CHECK-ERROR-NEXT: ^
1397 // CHECK-ERROR-NEXT: error: condition codes AL and NV are invalid for this instruction
1398 // CHECK-ERROR-NEXT: csetm x6, nv
1399 // CHECK-ERROR-NEXT: ^
1404 // CHECK-ERROR: error: invalid operand for instruction
1405 // CHECK-ERROR-NEXT: cinc w3, wsp, ne
1406 // CHECK-ERROR-NEXT: ^
1407 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1408 // CHECK-ERROR-NEXT: cinc sp, x9, eq
1409 // CHECK-ERROR-NEXT: ^
1410 // CHECK-ERROR-NEXT: error: condition codes AL and NV are invalid for this instruction
1411 // CHECK-ERROR-NEXT: cinc x2, x0, nv
1412 // CHECK-ERROR-NEXT: ^
1417 // CHECK-ERROR: error: invalid operand for instruction
1418 // CHECK-ERROR-NEXT: cinv w3, wsp, ne
1419 // CHECK-ERROR-NEXT: ^
1420 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1421 // CHECK-ERROR-NEXT: cinv sp, x9, eq
1422 // CHECK-ERROR-NEXT: ^
1423 // CHECK-ERROR-NEXT: error: condition codes AL and NV are invalid for this instruction
1424 // CHECK-ERROR-NEXT: cinv w8, x7, nv
1425 // CHECK-ERROR-NEXT: ^
1430 // CHECK-ERROR: error: invalid operand for instruction
1431 // CHECK-ERROR-NEXT: cneg w3, wsp, ne
1432 // CHECK-ERROR-NEXT: ^
1433 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1434 // CHECK-ERROR-NEXT: cneg sp, x9, eq
1435 // CHECK-ERROR-NEXT: ^
1436 // CHECK-ERROR-NEXT: error: condition codes AL and NV are invalid for this instruction
1437 // CHECK-ERROR-NEXT: cneg x4, x5, al
1438 // CHECK-ERROR-NEXT: ^
1444 //CHECK-ERROR: error: invalid operand for instruction
1445 //CHECK-ERROR-NEXT: rbit x23, w2
1448 //CHECK-ERROR: error: invalid operand for instruction
1449 //CHECK-ERROR-NEXT: cls sp, x2
1452 //CHECK-ERROR: error: invalid operand for instruction
1453 //CHECK-ERROR-NEXT: clz wsp, w3
1459 //CHECK-ERROR: error: invalid operand for instruction
1460 //CHECK-ERROR-NEXT: udiv x23, w2, x18
1463 //CHECK-ERROR: error: invalid operand for instruction
1464 //CHECK-ERROR-NEXT: lsl sp, x2, x4
1467 //CHECK-ERROR: error: invalid operand for instruction
1468 //CHECK-ERROR-NEXT: asr wsp, w3, w9
1475 //CHECK-ERROR: error: invalid operand for instruction
1476 //CHECK-ERROR-NEXT: madd sp, x3, x9, x10
1485 // CHECK-ERROR: error: {{expected|immediate must be an}} integer in range [0, 65535]
1486 // CHECK-ERROR-NEXT: svc #-1
1487 // CHECK-ERROR-NEXT: ^
1488 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 65535]
1489 // CHECK-ERROR-NEXT: hlt #65536
1490 // CHECK-ERROR-NEXT: ^
1491 // CHECK-ERROR-NEXT: error: {{invalid instruction|unrecognized instruction mnemonic}}
1492 // CHECK-ERROR-NEXT: dcps4 #43
1493 // CHECK-ERROR-NEXT: ^
1494 // CHECK-ERROR-NEXT: error: {{invalid instruction|unrecognized instruction mnemonic}}
1495 // CHECK-ERROR-NEXT: dcps4
1496 // CHECK-ERROR-NEXT: ^
1504 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1505 // CHECK-ERROR-NEXT: extr w2, w20, w30, #-1
1506 // CHECK-ERROR-NEXT: ^
1507 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1508 // CHECK-ERROR-NEXT: extr w9, w19, w20, #32
1509 // CHECK-ERROR-NEXT: ^
1513 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
1514 // CHECK-ERROR-NEXT: extr x10, x15, x20, #-1
1515 // CHECK-ERROR-NEXT: ^
1516 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
1517 // CHECK-ERROR-NEXT: extr x20, x25, x30, #64
1518 // CHECK-ERROR-NEXT: ^
1522 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
1523 // CHECK-ERROR-NEXT: ror w9, w10, #32
1524 // CHECK-ERROR-NEXT: ^
1525 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
1526 // CHECK-ERROR-NEXT: ror x10, x11, #64
1527 // CHECK-ERROR-NEXT: ^
1534 // CHECK-ERROR-AARCH64: error: expected floating-point constant #0.0
1535 // CHECK-ERROR-ARM64: error: invalid operand for instruction
1536 // CHECK-ERROR-NEXT: fcmp s3, d2
1537 // CHECK-ERROR-NEXT: ^
1543 // CHECK-ERROR: error: expected floating-point constant #0.0
1544 // CHECK-ERROR-NEXT: fcmp s9, #-0.0
1545 // CHECK-ERROR-NEXT: ^
1546 // CHECK-ERROR-NEXT: error: expected floating-point constant #0.0
1547 // CHECK-ERROR-NEXT: fcmp d3, #-0.0
1548 // CHECK-ERROR-NEXT: ^
1549 // CHECK-ERROR-NEXT: error: expected floating-point constant #0.0
1550 // CHECK-ERROR-NEXT: fcmp s1, #1.0
1551 // CHECK-ERROR-NEXT: ^
1552 // CHECK-ERROR-NEXT: error: expected floating-point constant #0.0
1553 // CHECK-ERROR-NEXT: fcmpe s30, #-0.0
1554 // CHECK-ERROR-NEXT: ^
1562 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1563 // CHECK-ERROR-NEXT: fccmp s19, s5, #-1, lt
1564 // CHECK-ERROR-NEXT: ^
1565 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1566 // CHECK-ERROR-NEXT: fccmp s20, s7, #16, hs
1567 // CHECK-ERROR-NEXT: ^
1571 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1572 // CHECK-ERROR-NEXT: fccmp d19, d5, #-1, lt
1573 // CHECK-ERROR-NEXT: ^
1574 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1575 // CHECK-ERROR-NEXT: fccmp d20, d7, #16, hs
1576 // CHECK-ERROR-NEXT: ^
1580 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1581 // CHECK-ERROR-NEXT: fccmpe s19, s5, #-1, lt
1582 // CHECK-ERROR-NEXT: ^
1583 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1584 // CHECK-ERROR-NEXT: fccmpe s20, s7, #16, hs
1585 // CHECK-ERROR-NEXT: ^
1589 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1590 // CHECK-ERROR-NEXT: fccmpe d19, d5, #-1, lt
1591 // CHECK-ERROR-NEXT: ^
1592 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
1593 // CHECK-ERROR-NEXT: fccmpe d20, d7, #16, hs
1594 // CHECK-ERROR-NEXT: ^
1603 // CHECK-ERROR: error: invalid operand for instruction
1604 // CHECK-ERROR-NEXT: fcsel q3, q20, q9, pl
1605 // CHECK-ERROR-NEXT: ^
1606 // CHECK-ERROR-NEXT: error: instruction requires: fullfp16
1607 // CHECK-ERROR-NEXT: fcsel h9, h10, h11, mi
1608 // CHECK-ERROR-NEXT: ^
1609 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1610 // CHECK-ERROR-NEXT: fcsel b9, b10, b11, mi
1611 // CHECK-ERROR-NEXT: ^
1619 // CHECK-ERROR: error: expected compatible register or floating-point constant
1620 // CHECK-ERROR-NEXT: fmov d0, s3
1621 // CHECK-ERROR-NEXT: ^
1622 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1623 // CHECK-ERROR-NEXT: fcvt d0, d1
1624 // CHECK-ERROR-NEXT: ^
1634 // CHECK-ERROR: error: invalid operand for instruction
1635 // CHECK-ERROR-NEXT: fadd s0, d3, d7
1636 // CHECK-ERROR-NEXT: ^
1637 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1638 // CHECK-ERROR-NEXT: fmaxnm d3, s19, d12
1639 // CHECK-ERROR-NEXT: ^
1640 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1641 // CHECK-ERROR-NEXT: fnmul d1, d9, s18
1642 // CHECK-ERROR-NEXT: ^
1652 // CHECK-ERROR: error: invalid operand for instruction
1653 // CHECK-ERROR-NEXT: fmadd b3, b4, b5, b6
1654 // CHECK-ERROR-NEXT: ^
1655 // CHECK-ERROR-NEXT: error: instruction requires: fullfp16
1656 // CHECK-ERROR-NEXT: fmsub h1, h2, h3, h4
1657 // CHECK-ERROR-NEXT: ^
1658 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1659 // CHECK-ERROR-NEXT: fnmadd q3, q5, q6, q7
1660 // CHECK-ERROR-NEXT: ^
1661 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1662 // CHECK-ERROR-NEXT: fnmsub s2, s4, d5, h9
1663 // CHECK-ERROR-NEXT: ^
1672 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 32]
1673 // CHECK-ERROR-NEXT: fcvtzs w13, s31, #0
1674 // CHECK-ERROR-NEXT: ^
1675 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 32]
1676 // CHECK-ERROR-NEXT: fcvtzs w19, s20, #33
1677 // CHECK-ERROR-NEXT: ^
1678 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1679 // CHECK-ERROR-NEXT: fcvtzs wsp, s19, #14
1680 // CHECK-ERROR-NEXT: ^
1685 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 64]
1686 // CHECK-ERROR-NEXT: fcvtzs x13, s31, #0
1687 // CHECK-ERROR-NEXT: ^
1688 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 64]
1689 // CHECK-ERROR-NEXT: fcvtzs x19, s20, #65
1690 // CHECK-ERROR-NEXT: ^
1691 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1692 // CHECK-ERROR-NEXT: fcvtzs sp, s19, #14
1693 // CHECK-ERROR-NEXT: ^
1698 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 32]
1699 // CHECK-ERROR-NEXT: fcvtzu w13, s31, #0
1700 // CHECK-ERROR-NEXT: ^
1701 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 32]
1702 // CHECK-ERROR-NEXT: fcvtzu w19, s20, #33
1703 // CHECK-ERROR-NEXT: ^
1704 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1705 // CHECK-ERROR-NEXT: fcvtzu wsp, s19, #14
1706 // CHECK-ERROR-NEXT: ^
1711 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 64]
1712 // CHECK-ERROR-NEXT: fcvtzu x13, s31, #0
1713 // CHECK-ERROR-NEXT: ^
1714 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 64]
1715 // CHECK-ERROR-NEXT: fcvtzu x19, s20, #65
1716 // CHECK-ERROR-NEXT: ^
1717 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1718 // CHECK-ERROR-NEXT: fcvtzu sp, s19, #14
1719 // CHECK-ERROR-NEXT: ^
1724 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1725 // CHECK-ERROR-NEXT: scvtf w13, s31, #0
1726 // CHECK-ERROR-NEXT: ^
1727 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1728 // CHECK-ERROR-NEXT: scvtf w19, s20, #33
1729 // CHECK-ERROR-NEXT: ^
1730 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1731 // CHECK-ERROR-NEXT: scvtf wsp, s19, #14
1732 // CHECK-ERROR-NEXT: ^
1737 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1738 // CHECK-ERROR-NEXT: scvtf x13, s31, #0
1739 // CHECK-ERROR-NEXT: ^
1740 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1741 // CHECK-ERROR-NEXT: scvtf x19, s20, #65
1742 // CHECK-ERROR-NEXT: ^
1743 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1744 // CHECK-ERROR-NEXT: scvtf sp, s19, #14
1745 // CHECK-ERROR-NEXT: ^
1750 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1751 // CHECK-ERROR-NEXT: ucvtf w13, s31, #0
1752 // CHECK-ERROR-NEXT: ^
1753 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1754 // CHECK-ERROR-NEXT: ucvtf w19, s20, #33
1755 // CHECK-ERROR-NEXT: ^
1756 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1757 // CHECK-ERROR-NEXT: ucvtf wsp, s19, #14
1758 // CHECK-ERROR-NEXT: ^
1763 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1764 // CHECK-ERROR-NEXT: ucvtf x13, s31, #0
1765 // CHECK-ERROR-NEXT: ^
1766 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1767 // CHECK-ERROR-NEXT: ucvtf x19, s20, #65
1768 // CHECK-ERROR-NEXT: ^
1769 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1770 // CHECK-ERROR-NEXT: ucvtf sp, s19, #14
1771 // CHECK-ERROR-NEXT: ^
1779 // CHECK-ERROR: error: expected compatible register or floating-point constant
1780 // CHECK-ERROR-NEXT: fmov d3, #0.0625
1781 // CHECK-ERROR-NEXT: ^
1782 // CHECK-ERROR-NEXT: error: expected compatible register or floating-point constant
1783 // CHECK-ERROR-NEXT: fmov s2, #32.0
1784 // CHECK-ERROR-NEXT: ^
1789 // CHECK-ERROR: error: expected compatible register or floating-point constant
1790 // CHECK-ERROR-NEXT: fmov s9, #1.03125
1791 // CHECK-ERROR-NEXT: ^
1792 // CHECK-ERROR-NEXT: error: expected compatible register or floating-point constant
1793 // CHECK-ERROR-NEXT: fmov s28, #1.96875
1794 // CHECK-ERROR-NEXT: ^
1798 // CHECK-ERROR-AARCH64: error: expected compatible register or floating-point constant
1799 // CHECK-ERROR-AARCH64-NEXT: fmov d0, #0.0
1800 // CHECK-ERROR-AARCH64-NEXT: ^
1811 // CHECK-ERROR: error: expected lane specifier '[1]'
1812 // CHECK-ERROR-NEXT: fmov x3, v0.d[0]
1813 // CHECK-ERROR-NEXT: ^
1814 // CHECK-ERROR-AARCH64-NEXT: error: lane number incompatible with layout
1815 // CHECK-ERROR-ARM64-NEXT: error: invalid operand for instruction
1816 // CHECK-ERROR-NEXT: fmov v29.1d[1], x2
1817 // CHECK-ERROR-NEXT: ^
1818 // CHECK-ERROR-AARCH64-NEXT: error: lane number incompatible with layout
1819 // CHECK-ERROR-ARM64-NEXT: error: expected lane specifier '[1]'
1820 // CHECK-ERROR-NEXT: fmov x7, v0.d[2]
1821 // CHECK-ERROR-NEXT: ^
1822 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1823 // CHECK-ERROR-NEXT: fcvtns sp, s5
1824 // CHECK-ERROR-NEXT: ^
1825 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1826 // CHECK-ERROR-NEXT: scvtf s6, wsp
1827 // CHECK-ERROR-NEXT: ^
1835 // CHECK-ERROR: error: invalid operand for instruction
1836 // CHECK-ERROR-NEXT: ldr sp, some_label
1837 // CHECK-ERROR-NEXT: ^
1838 // CHECK-ERROR-NEXT: error: invalid operand for instruction
1839 // CHECK-ERROR-NEXT: ldrsw w3, somewhere
1840 // CHECK-ERROR-NEXT: ^
1845 // CHECK-ERROR: error: expected label or encodable integer pc offset
1846 // CHECK-ERROR-NEXT: ldrsw x2, #1048576
1847 // CHECK-ERROR-NEXT: ^
1848 // CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
1849 // CHECK-ERROR-NEXT: ldr q0, #-1048580
1850 // CHECK-ERROR-NEXT: ^
1851 // CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
1852 // CHECK-ERROR-NEXT: ldr x0, #2
1853 // CHECK-ERROR-NEXT: ^
1861 // CHECK-ERROR-AARCH64: error: expected '#0'
1862 // CHECK-ERROR-ARM64: error: index must be absent or #0
1863 // CHECK-ERROR-NEXT: stxrb w2, w3, [x4, #20]
1864 // CHECK-ERROR-NEXT: ^
1865 // CHECK-ERROR: error: invalid operand for instruction
1866 // CHECK-ERROR-NEXT: stlxrh w10, w11, [w2]
1867 // CHECK-ERROR-NEXT: ^
1870 // CHECK-ERROR: error: invalid operand for instruction
1871 // CHECK-ERROR-NEXT: stlxr x20, w21, [sp]
1872 // CHECK-ERROR-NEXT: ^
1875 // CHECK-ERROR: error: invalid operand for instruction
1876 // CHECK-ERROR-NEXT: ldxr sp, [sp]
1877 // CHECK-ERROR-NEXT: ^
1880 // CHECK-ERROR: error: invalid operand for instruction
1881 // CHECK-ERROR-NEXT: stxp x1, x2, x3, [x4]
1882 // CHECK-ERROR-NEXT: ^
1885 // CHECK-ERROR: error: invalid operand for instruction
1886 // CHECK-ERROR-NEXT: stlxp w5, x1, w4, [x5]
1887 // CHECK-ERROR-NEXT: ^
1890 // CHECK-ERROR: error: invalid operand for instruction
1891 // CHECK-ERROR-NEXT: stlxp w17, w6, x7, [x22]
1892 // CHECK-ERROR-NEXT: ^
1902 // CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
1903 // CHECK-ERROR-NEXT: ldurb w2, [sp, #256]
1904 // CHECK-ERROR-NEXT: ^
1905 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1906 // CHECK-ERROR-NEXT: sturh w17, [x1, #256]
1907 // CHECK-ERROR-NEXT: ^
1908 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1909 // CHECK-ERROR-NEXT: ldursw x20, [x1, #256]
1910 // CHECK-ERROR-NEXT: ^
1911 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1912 // CHECK-ERROR-NEXT: ldur x12, [sp, #256]
1913 // CHECK-ERROR-NEXT: ^
1920 // CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
1921 // CHECK-ERROR-NEXT: stur h2, [x2, #-257]
1922 // CHECK-ERROR-NEXT: ^
1923 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1924 // CHECK-ERROR-NEXT: stur b2, [x2, #-257]
1925 // CHECK-ERROR-NEXT: ^
1926 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1927 // CHECK-ERROR-NEXT: ldursb x9, [sp, #-257]
1928 // CHECK-ERROR-NEXT: ^
1929 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1930 // CHECK-ERROR-NEXT: ldur w2, [x30, #-257]
1931 // CHECK-ERROR-NEXT: ^
1932 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1933 // CHECK-ERROR-NEXT: stur q9, [x20, #-257]
1934 // CHECK-ERROR-NEXT: ^
1937 // CHECK-ERROR: error: invalid operand for instruction
1938 // CHECK-ERROR-NEXT: prfum pstl3strm, [xzr]
1939 // CHECK-ERROR-NEXT: ^
1946 // CHECK-ERROR-AARCH64: error: {{expected symbolic reference or integer|index must be a multiple of…
1947 // CHECK-ERROR-ARM64: error: invalid operand for instruction
1948 // CHECK-ERROR-NEXT: ldr x3, [x4, #25], #0
1949 // CHECK-ERROR-NEXT: ^
1950 // CHECK-ERROR-AARCH64-NEXT: error: invalid operand for instruction
1951 // CHECK-ERROR-AARCH64-NEXT: ldr x4, [x9, #0], #4
1952 // CHECK-ERROR-AARCH64-NEXT: ^
1960 // CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
1961 // CHECK-ERROR-NEXT: strb w1, [x19], #256
1962 // CHECK-ERROR-NEXT: ^
1963 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1964 // CHECK-ERROR-NEXT: strb w9, [sp], #-257
1965 // CHECK-ERROR-NEXT: ^
1966 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1967 // CHECK-ERROR-NEXT: strh w1, [x19], #256
1968 // CHECK-ERROR-NEXT: ^
1969 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1970 // CHECK-ERROR-NEXT: strh w9, [sp], #-257
1971 // CHECK-ERROR-NEXT: ^
1972 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1973 // CHECK-ERROR-NEXT: str w1, [x19], #256
1974 // CHECK-ERROR-NEXT: ^
1975 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1976 // CHECK-ERROR-NEXT: str w9, [sp], #-257
1977 // CHECK-ERROR-NEXT: ^
1985 // CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
1986 // CHECK-ERROR-NEXT: ldrb w1, [x19], #256
1987 // CHECK-ERROR-NEXT: ^
1988 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1989 // CHECK-ERROR-NEXT: ldrb w9, [sp], #-257
1990 // CHECK-ERROR-NEXT: ^
1991 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1992 // CHECK-ERROR-NEXT: ldrh w1, [x19], #256
1993 // CHECK-ERROR-NEXT: ^
1994 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1995 // CHECK-ERROR-NEXT: ldrh w9, [sp], #-257
1996 // CHECK-ERROR-NEXT: ^
1997 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
1998 // CHECK-ERROR-NEXT: ldr w1, [x19], #256
1999 // CHECK-ERROR-NEXT: ^
2000 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2001 // CHECK-ERROR-NEXT: ldr w9, [sp], #-257
2002 // CHECK-ERROR-NEXT: ^
2010 // CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
2011 // CHECK-ERROR-NEXT: ldrsb x2, [x3], #256
2012 // CHECK-ERROR-NEXT: ^
2013 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2014 // CHECK-ERROR-NEXT: ldrsb x22, [x13], #-257
2015 // CHECK-ERROR-NEXT: ^
2016 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2017 // CHECK-ERROR-NEXT: ldrsh x2, [x3], #256
2018 // CHECK-ERROR-NEXT: ^
2019 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2020 // CHECK-ERROR-NEXT: ldrsh x22, [x13], #-257
2021 // CHECK-ERROR-NEXT: ^
2022 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2023 // CHECK-ERROR-NEXT: ldrsw x2, [x3], #256
2024 // CHECK-ERROR-NEXT: ^
2025 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2026 // CHECK-ERROR-NEXT: ldrsw x22, [x13], #-257
2027 // CHECK-ERROR-NEXT: ^
2033 // CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
2034 // CHECK-ERROR-NEXT: ldrsb w2, [x3], #256
2035 // CHECK-ERROR-NEXT: ^
2036 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2037 // CHECK-ERROR-NEXT: ldrsb w22, [x13], #-257
2038 // CHECK-ERROR-NEXT: ^
2039 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2040 // CHECK-ERROR-NEXT: ldrsh w2, [x3], #256
2041 // CHECK-ERROR-NEXT: ^
2042 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2043 // CHECK-ERROR-NEXT: ldrsh w22, [x13], #-257
2044 // CHECK-ERROR-NEXT: ^
2056 // CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
2057 // CHECK-ERROR-NEXT: str b3, [x3], #256
2058 // CHECK-ERROR-NEXT: ^
2059 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2060 // CHECK-ERROR-NEXT: str b3, [x13], #-257
2061 // CHECK-ERROR-NEXT: ^
2062 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2063 // CHECK-ERROR-NEXT: str h3, [x3], #256
2064 // CHECK-ERROR-NEXT: ^
2065 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2066 // CHECK-ERROR-NEXT: str h3, [x13], #-257
2067 // CHECK-ERROR-NEXT: ^
2068 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2069 // CHECK-ERROR-NEXT: str s3, [x3], #256
2070 // CHECK-ERROR-NEXT: ^
2071 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2072 // CHECK-ERROR-NEXT: str s3, [x13], #-257
2073 // CHECK-ERROR-NEXT: ^
2074 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2075 // CHECK-ERROR-NEXT: str d3, [x3], #256
2076 // CHECK-ERROR-NEXT: ^
2077 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2078 // CHECK-ERROR-NEXT: str d3, [x13], #-257
2079 // CHECK-ERROR-NEXT: ^
2080 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2081 // CHECK-ERROR-NEXT: str q3, [x3], #256
2082 // CHECK-ERROR-NEXT: ^
2083 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2084 // CHECK-ERROR-NEXT: str q3, [x13], #-257
2085 // CHECK-ERROR-NEXT: ^
2097 // CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
2098 // CHECK-ERROR-NEXT: ldr b3, [x3], #256
2099 // CHECK-ERROR-NEXT: ^
2100 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2101 // CHECK-ERROR-NEXT: ldr b3, [x13], #-257
2102 // CHECK-ERROR-NEXT: ^
2103 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2104 // CHECK-ERROR-NEXT: ldr h3, [x3], #256
2105 // CHECK-ERROR-NEXT: ^
2106 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2107 // CHECK-ERROR-NEXT: ldr h3, [x13], #-257
2108 // CHECK-ERROR-NEXT: ^
2109 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2110 // CHECK-ERROR-NEXT: ldr s3, [x3], #256
2111 // CHECK-ERROR-NEXT: ^
2112 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2113 // CHECK-ERROR-NEXT: ldr s3, [x13], #-257
2114 // CHECK-ERROR-NEXT: ^
2115 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2116 // CHECK-ERROR-NEXT: ldr d3, [x3], #256
2117 // CHECK-ERROR-NEXT: ^
2118 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2119 // CHECK-ERROR-NEXT: ldr d3, [x13], #-257
2120 // CHECK-ERROR-NEXT: ^
2121 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2122 // CHECK-ERROR-NEXT: ldr q3, [x3], #256
2123 // CHECK-ERROR-NEXT: ^
2124 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2125 // CHECK-ERROR-NEXT: ldr q3, [x13], #-257
2126 // CHECK-ERROR-NEXT: ^
2133 // CHECK-ERROR: error:
2134 // CHECK-ERROR-NEXT: ldr x3, [x4]!
2135 // CHECK-ERROR-NEXT: ^
2143 // CHECK-ERROR: error: invalid operand for instruction
2144 // CHECK-ERROR-NEXT: strb w1, [x19, #256]!
2145 // CHECK-ERROR-NEXT: ^
2146 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2147 // CHECK-ERROR-NEXT: strb w9, [sp, #-257]!
2148 // CHECK-ERROR-NEXT: ^
2149 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2150 // CHECK-ERROR-NEXT: strh w1, [x19, #256]!
2151 // CHECK-ERROR-NEXT: ^
2152 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2153 // CHECK-ERROR-NEXT: strh w9, [sp, #-257]!
2154 // CHECK-ERROR-NEXT: ^
2155 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2156 // CHECK-ERROR-NEXT: str w1, [x19, #256]!
2157 // CHECK-ERROR-NEXT: ^
2158 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2159 // CHECK-ERROR-NEXT: str w9, [sp, #-257]!
2160 // CHECK-ERROR-NEXT: ^
2168 // CHECK-ERROR: error: invalid operand for instruction
2169 // CHECK-ERROR-NEXT: ldrb w1, [x19, #256]!
2170 // CHECK-ERROR-NEXT: ^
2171 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2172 // CHECK-ERROR-NEXT: ldrb w9, [sp, #-257]!
2173 // CHECK-ERROR-NEXT: ^
2174 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2175 // CHECK-ERROR-NEXT: ldrh w1, [x19, #256]!
2176 // CHECK-ERROR-NEXT: ^
2177 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2178 // CHECK-ERROR-NEXT: ldrh w9, [sp, #-257]!
2179 // CHECK-ERROR-NEXT: ^
2180 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2181 // CHECK-ERROR-NEXT: ldr w1, [x19, #256]!
2182 // CHECK-ERROR-NEXT: ^
2183 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2184 // CHECK-ERROR-NEXT: ldr w9, [sp, #-257]!
2185 // CHECK-ERROR-NEXT: ^
2193 // CHECK-ERROR: error: invalid operand for instruction
2194 // CHECK-ERROR-NEXT: ldrsb x2, [x3, #256]!
2195 // CHECK-ERROR-NEXT: ^
2196 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2197 // CHECK-ERROR-NEXT: ldrsb x22, [x13, #-257]!
2198 // CHECK-ERROR-NEXT: ^
2199 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2200 // CHECK-ERROR-NEXT: ldrsh x2, [x3, #256]!
2201 // CHECK-ERROR-NEXT: ^
2202 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2203 // CHECK-ERROR-NEXT: ldrsh x22, [x13, #-257]!
2204 // CHECK-ERROR-NEXT: ^
2205 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2206 // CHECK-ERROR-NEXT: ldrsw x2, [x3, #256]!
2207 // CHECK-ERROR-NEXT: ^
2208 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2209 // CHECK-ERROR-NEXT: ldrsw x22, [x13, #-257]!
2210 // CHECK-ERROR-NEXT: ^
2216 // CHECK-ERROR: error: invalid operand for instruction
2217 // CHECK-ERROR-NEXT: ldrsb w2, [x3, #256]!
2218 // CHECK-ERROR-NEXT: ^
2219 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2220 // CHECK-ERROR-NEXT: ldrsb w22, [x13, #-257]!
2221 // CHECK-ERROR-NEXT: ^
2222 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2223 // CHECK-ERROR-NEXT: ldrsh w2, [x3, #256]!
2224 // CHECK-ERROR-NEXT: ^
2225 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2226 // CHECK-ERROR-NEXT: ldrsh w22, [x13, #-257]!
2227 // CHECK-ERROR-NEXT: ^
2237 // CHECK-ERROR: error: invalid operand for instruction
2238 // CHECK-ERROR-NEXT: str b3, [x3, #256]!
2239 // CHECK-ERROR-NEXT: ^
2240 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2241 // CHECK-ERROR-NEXT: str b3, [x13, #-257]!
2242 // CHECK-ERROR-NEXT: ^
2243 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2244 // CHECK-ERROR-NEXT: str h3, [x3, #256]!
2245 // CHECK-ERROR-NEXT: ^
2246 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2247 // CHECK-ERROR-NEXT: str h3, [x13, #-257]!
2248 // CHECK-ERROR-NEXT: ^
2249 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2250 // CHECK-ERROR-NEXT: str s3, [x3, #256]!
2251 // CHECK-ERROR-NEXT: ^
2252 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2253 // CHECK-ERROR-NEXT: str s3, [x13, #-257]!
2254 // CHECK-ERROR-NEXT: ^
2255 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2256 // CHECK-ERROR-NEXT: str d3, [x3, #256]!
2257 // CHECK-ERROR-NEXT: ^
2258 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2259 // CHECK-ERROR-NEXT: str d3, [x13, #-257]!
2260 // CHECK-ERROR-NEXT: ^
2270 // CHECK-ERROR: error: invalid operand for instruction
2271 // CHECK-ERROR-NEXT: ldr b3, [x3, #256]!
2272 // CHECK-ERROR-NEXT: ^
2273 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2274 // CHECK-ERROR-NEXT: ldr b3, [x13, #-257]!
2275 // CHECK-ERROR-NEXT: ^
2276 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2277 // CHECK-ERROR-NEXT: ldr h3, [x3, #256]!
2278 // CHECK-ERROR-NEXT: ^
2279 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2280 // CHECK-ERROR-NEXT: ldr h3, [x13, #-257]!
2281 // CHECK-ERROR-NEXT: ^
2282 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2283 // CHECK-ERROR-NEXT: ldr s3, [x3, #256]!
2284 // CHECK-ERROR-NEXT: ^
2285 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2286 // CHECK-ERROR-NEXT: ldr s3, [x13, #-257]!
2287 // CHECK-ERROR-NEXT: ^
2288 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2289 // CHECK-ERROR-NEXT: ldr d3, [x3, #256]!
2290 // CHECK-ERROR-NEXT: ^
2291 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2292 // CHECK-ERROR-NEXT: ldr d3, [x13, #-257]!
2293 // CHECK-ERROR-NEXT: ^
2303 // CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
2304 // CHECK-ERROR-NEXT: ldtrb w2, [sp, #256]
2305 // CHECK-ERROR-NEXT: ^
2306 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2307 // CHECK-ERROR-NEXT: sttrh w17, [x1, #256]
2308 // CHECK-ERROR-NEXT: ^
2309 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2310 // CHECK-ERROR-NEXT: ldtrsw x20, [x1, #256]
2311 // CHECK-ERROR-NEXT: ^
2312 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2313 // CHECK-ERROR-NEXT: ldtr x12, [sp, #256]
2314 // CHECK-ERROR-NEXT: ^
2321 // CHECK-ERROR: error: invalid operand for instruction
2322 // CHECK-ERROR-NEXT: sttr h2, [x2, #-257]
2323 // CHECK-ERROR-NEXT: ^
2324 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2325 // CHECK-ERROR-NEXT: sttr b2, [x2, #-257]
2326 // CHECK-ERROR-NEXT: ^
2327 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2328 // CHECK-ERROR-NEXT: ldtrsb x9, [sp, #-257]
2329 // CHECK-ERROR-NEXT: ^
2330 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2331 // CHECK-ERROR-NEXT: ldtr w2, [x30, #-257]
2332 // CHECK-ERROR-NEXT: ^
2333 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2334 // CHECK-ERROR-NEXT: sttr q9, [x20, #-257]
2335 // CHECK-ERROR-NEXT: ^
2348 // CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
2349 // CHECK-ERROR-NEXT: ldr q0, [x11, #65536]
2350 // CHECK-ERROR-NEXT: ^
2351 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2352 // CHECK-ERROR-NEXT: ldr x0, [sp, #32768]
2353 // CHECK-ERROR-NEXT: ^
2354 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2355 // CHECK-ERROR-NEXT: ldr w0, [x4, #16384]
2356 // CHECK-ERROR-NEXT: ^
2357 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2358 // CHECK-ERROR-NEXT: ldrh w2, [x21, #8192]
2359 // CHECK-ERROR-NEXT: ^
2360 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2361 // CHECK-ERROR-NEXT: ldrb w3, [x12, #4096]
2362 // CHECK-ERROR-NEXT: ^
2368 // CHECK-ERROR-AARCH64: error: too few operands for instruction
2369 // CHECK-ERROR-AARCH64-NEXT: ldr w0, [x0, #2]
2370 // CHECK-ERROR-AARCH64-NEXT: ^
2371 // CHECK-ERROR-AARCH64-NEXT: error: too few operands for instruction
2372 // CHECK-ERROR-AARCH64-NEXT: ldrsh w2, [x0, #123]
2373 // CHECK-ERROR-AARCH64-NEXT: ^
2374 // CHECK-ERROR-AARCH64-NEXT: error: too few operands for instruction
2375 // CHECK-ERROR-AARCH64-NEXT: str q0, [x0, #8]
2376 // CHECK-ERROR-AARCH64-NEXT: ^
2381 // CHECK-ERROR: error: invalid operand for instruction
2382 // CHECK-ERROR-NEXT: ldr w0, [w20]
2383 // CHECK-ERROR-NEXT: ^
2384 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2385 // CHECK-ERROR-NEXT: ldrsh x3, [wsp]
2386 // CHECK-ERROR-NEXT: ^
2393 // CHECK-ERROR: error: invalid operand for instruction
2394 // CHECK-ERROR-NEXT: strb w0, [wsp]
2395 // CHECK-ERROR-NEXT: ^
2396 // CHECK-ERROR-AARCH64: error: invalid operand for instruction
2397 // CHECK-ERROR-AARCH64-NEXT: strh w31, [x23, #1]
2398 // CHECK-ERROR-AARCH64-NEXT: ^
2399 // CHECK-ERROR-AARCH64-NEXT: error: too few operands for instruction
2400 // CHECK-ERROR-AARCH64-NEXT: str x5, [x22, #12]
2401 // CHECK-ERROR-AARCH64-NEXT: ^
2402 // CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
2403 // CHECK-ERROR-NEXT: str w7, [x12, #16384]
2404 // CHECK-ERROR-NEXT: ^
2411 // CHECK-ERROR-AARCH64: error: Invalid immediate for instruction
2412 // CHECK-ERROR-ARM64: error: prefetch operand out of range, [0,31] expected
2413 // CHECK-ERROR-NEXT: prfm #-1, [sp]
2414 // CHECK-ERROR-NEXT: ^
2415 // CHECK-ERROR-AARCH64-NEXT: error: Invalid immediate for instruction
2416 // CHECK-ERROR-ARM64-NEXT: error: prefetch operand out of range, [0,31] expected
2417 // CHECK-ERROR-NEXT: prfm #32, [sp, #8]
2418 // CHECK-ERROR-NEXT: ^
2419 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2420 // CHECK-ERROR-NEXT: prfm pldl1strm, [w3, #8]
2421 // CHECK-ERROR-NEXT: ^
2422 // CHECK-ERROR-AARCH64-NEXT: error: operand specifier not recognised
2423 // CHECK-ERROR-ARM64-NEXT: error: pre-fetch hint expected
2424 // CHECK-ERROR-NEXT: prfm wibble, [sp]
2425 // CHECK-ERROR-NEXT: ^
2437 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2438 // CHECK-ERROR-NEXT: ldr w3, [xzr, x3]
2439 // CHECK-ERROR-NEXT: ^
2440 // CHECK-ERROR-NEXT: error: expected #imm after shift specifier
2441 // CHECK-ERROR-NEXT: ldr w4, [x0, x4, lsl]
2442 // CHECK-ERROR-NEXT: ^
2443 // CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0 or #2
2444 // CHECK-ERROR-NEXT: ldr w9, [x5, x5, uxtw]
2445 // CHECK-ERROR-NEXT: ^
2446 // CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0 or #2
2447 // CHECK-ERROR-NEXT: ldr w10, [x6, x9, sxtw #2]
2448 // CHECK-ERROR-NEXT: ^
2449 // CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #2
2450 // CHECK-ERROR-NEXT: ldr w11, [x7, w2, lsl #2]
2451 // CHECK-ERROR-NEXT: ^
2452 // CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #2
2453 // CHECK-ERROR-NEXT: ldr w12, [x8, w1, sxtx]
2454 // CHECK-ERROR-NEXT: ^
2458 // CHECK-ERROR-NEXT: error: expected integer shift amount
2459 // CHECK-ERROR-NEXT: ldrsb w9, [x4, x2, lsl #-1]
2460 // CHECK-ERROR-NEXT: ^
2461 // CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0
2462 // CHECK-ERROR-NEXT: strb w9, [x4, x2, lsl #1]
2463 // CHECK-ERROR-NEXT: ^
2467 // CHECK-ERROR-NEXT: error: expected integer shift amount
2468 // CHECK-ERROR-NEXT: ldrsh w9, [x4, x2, lsl #-1]
2469 // CHECK-ERROR-NEXT: ^
2470 // CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #1
2471 // CHECK-ERROR-NEXT: ldr h13, [x4, w2, uxtw #2]
2472 // CHECK-ERROR-NEXT: ^
2477 // CHECK-ERROR-NEXT: error: expected integer shift amount
2478 // CHECK-ERROR-NEXT: str w9, [x5, w9, sxtw #-1]
2479 // CHECK-ERROR-NEXT: ^
2480 // CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #2
2481 // CHECK-ERROR-NEXT: str s3, [sp, w9, uxtw #1]
2482 // CHECK-ERROR-NEXT: ^
2483 // CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0 or #2
2484 // CHECK-ERROR-NEXT: ldrsw x9, [x15, x4, sxtx #3]
2485 // CHECK-ERROR-NEXT: ^
2490 // CHECK-ERROR-NEXT: error: expected integer shift amount
2491 // CHECK-ERROR-NEXT: str xzr, [x5, x9, sxtx #-1]
2492 // CHECK-ERROR-NEXT: ^
2493 // CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0 or #3
2494 // CHECK-ERROR-NEXT: prfm pldl3keep, [sp, x20, lsl #2]
2495 // CHECK-ERROR-NEXT: ^
2496 // CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #3
2497 // CHECK-ERROR-NEXT: ldr d3, [x20, wzr, uxtw #4]
2498 // CHECK-ERROR-NEXT: ^
2503 // CHECK-ERROR-NEXT: error: expected integer shift amount
2504 // CHECK-ERROR-NEXT: ldr q5, [sp, x2, lsl #-1]
2505 // CHECK-ERROR-NEXT: ^
2506 // CHECK-ERROR-AARCH64-NEXT: error: expected 'lsl' or 'sxtw' with optional shift of #0 or #4
2507 // CHECK-ERROR-ARM64-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #4
2508 // CHECK-ERROR-NEXT: ldr q10, [x20, w4, uxtw #2]
2509 // CHECK-ERROR-NEXT: ^
2510 // CHECK-ERROR-AARCH64-NEXT: error: expected 'lsl' or 'sxtw' with optional shift of #0 or #4
2511 // CHECK-ERROR-ARM64-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #4
2512 // CHECK-ERROR-NEXT: str q21, [x20, w4, uxtw #5]
2513 // CHECK-ERROR-NEXT: ^
2523 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2524 // CHECK-ERROR-NEXT: ldp w3, w2, [x4, #1]
2525 // CHECK-ERROR-NEXT: ^
2526 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2527 // CHECK-ERROR-NEXT: stp w1, w2, [x3, #253]
2528 // CHECK-ERROR-NEXT: ^
2529 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2530 // CHECK-ERROR-NEXT: stp w9, w10, [x5, #256]
2531 // CHECK-ERROR-NEXT: ^
2532 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2533 // CHECK-ERROR-NEXT: ldp w11, w12, [x9, #-260]
2534 // CHECK-ERROR-NEXT: ^
2535 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2536 // CHECK-ERROR-NEXT: stp wsp, w9, [sp]
2537 // CHECK-ERROR-NEXT: ^
2542 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2543 // CHECK-ERROR-NEXT: ldpsw x9, x2, [sp, #2]
2544 // CHECK-ERROR-NEXT: ^
2545 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2546 // CHECK-ERROR-NEXT: ldpsw x1, x2, [x10, #256]
2547 // CHECK-ERROR-NEXT: ^
2548 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2549 // CHECK-ERROR-NEXT: ldpsw x3, x4, [x11, #-260]
2550 // CHECK-ERROR-NEXT: ^
2555 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2556 // CHECK-ERROR-NEXT: ldp x2, x5, [sp, #4]
2557 // CHECK-ERROR-NEXT: ^
2558 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2559 // CHECK-ERROR-NEXT: ldp x5, x6, [x9, #512]
2560 // CHECK-ERROR-NEXT: ^
2561 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2562 // CHECK-ERROR-NEXT: stp x7, x8, [x10, #-520]
2563 // CHECK-ERROR-NEXT: ^
2567 // CHECK-ERROR: error: invalid operand for instruction
2568 // CHECK-ERROR-NEXT: ldp sp, x3, [x10]
2569 // CHECK-ERROR-NEXT: ^
2570 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2571 // CHECK-ERROR-NEXT: stp x3, sp, [x9]
2572 // CHECK-ERROR-NEXT: ^
2577 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2578 // CHECK-ERROR-NEXT: stp s3, s5, [sp, #-2]
2579 // CHECK-ERROR-NEXT: ^
2580 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2581 // CHECK-ERROR-NEXT: ldp s6, s26, [x4, #-260]
2582 // CHECK-ERROR-NEXT: ^
2583 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2584 // CHECK-ERROR-NEXT: stp s13, s19, [x5, #256]
2585 // CHECK-ERROR-NEXT: ^
2590 // CHECK-ERROR: error: invalid operand for instruction
2591 // CHECK-ERROR-NEXT: ldp d3, d4, [xzr]
2592 // CHECK-ERROR-NEXT: ^
2593 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2594 // CHECK-ERROR-NEXT: ldp d5, d6, [x0, #512]
2595 // CHECK-ERROR-NEXT: ^
2596 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2597 // CHECK-ERROR-NEXT: stp d7, d8, [x0, #-520]
2598 // CHECK-ERROR-NEXT: ^
2604 // CHECK-ERROR: error: invalid operand for instruction
2605 // CHECK-ERROR-NEXT: ldp d3, q2, [sp]
2606 // CHECK-ERROR-NEXT: ^
2607 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 10…
2608 // CHECK-ERROR-NEXT: ldp q3, q5, [sp, #8]
2609 // CHECK-ERROR-NEXT: ^
2610 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 10…
2611 // CHECK-ERROR-NEXT: stp q20, q25, [x5, #1024]
2612 // CHECK-ERROR-NEXT: ^
2613 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 10…
2614 // CHECK-ERROR-NEXT: ldp q30, q15, [x23, #-1040]
2615 // CHECK-ERROR-NEXT: ^
2626 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2627 // CHECK-ERROR-NEXT: ldp w3, w2, [x4], #1
2628 // CHECK-ERROR-NEXT: ^
2629 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2630 // CHECK-ERROR-NEXT: stp w1, w2, [x3], #253
2631 // CHECK-ERROR-NEXT: ^
2632 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2633 // CHECK-ERROR-NEXT: stp w9, w10, [x5], #256
2634 // CHECK-ERROR-NEXT: ^
2635 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2636 // CHECK-ERROR-NEXT: ldp w11, w12, [x9], #-260
2637 // CHECK-ERROR-NEXT: ^
2638 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2639 // CHECK-ERROR-NEXT: stp wsp, w9, [sp], #0
2640 // CHECK-ERROR-NEXT: ^
2645 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2646 // CHECK-ERROR-NEXT: ldpsw x9, x2, [sp], #2
2647 // CHECK-ERROR-NEXT: ^
2648 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2649 // CHECK-ERROR-NEXT: ldpsw x1, x2, [x10], #256
2650 // CHECK-ERROR-NEXT: ^
2651 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2652 // CHECK-ERROR-NEXT: ldpsw x3, x4, [x11], #-260
2653 // CHECK-ERROR-NEXT: ^
2658 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2659 // CHECK-ERROR-NEXT: ldp x2, x5, [sp], #4
2660 // CHECK-ERROR-NEXT: ^
2661 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2662 // CHECK-ERROR-NEXT: ldp x5, x6, [x9], #512
2663 // CHECK-ERROR-NEXT: ^
2664 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2665 // CHECK-ERROR-NEXT: stp x7, x8, [x10], #-520
2666 // CHECK-ERROR-NEXT: ^
2670 // CHECK-ERROR: error: invalid operand for instruction
2671 // CHECK-ERROR-NEXT: ldp sp, x3, [x10], #0
2672 // CHECK-ERROR-NEXT: ^
2673 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2674 // CHECK-ERROR-NEXT: stp x3, sp, [x9], #0
2675 // CHECK-ERROR-NEXT: ^
2680 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2681 // CHECK-ERROR-NEXT: stp s3, s5, [sp], #-2
2682 // CHECK-ERROR-NEXT: ^
2683 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2684 // CHECK-ERROR-NEXT: ldp s6, s26, [x4], #-260
2685 // CHECK-ERROR-NEXT: ^
2686 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2687 // CHECK-ERROR-NEXT: stp s13, s19, [x5], #256
2688 // CHECK-ERROR-NEXT: ^
2693 // CHECK-ERROR: error: invalid operand for instruction
2694 // CHECK-ERROR-NEXT: ldp d3, d4, [xzr], #0
2695 // CHECK-ERROR-NEXT: ^
2696 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2697 // CHECK-ERROR-NEXT: ldp d5, d6, [x0], #512
2698 // CHECK-ERROR-NEXT: ^
2699 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2700 // CHECK-ERROR-NEXT: stp d7, d8, [x0], #-520
2701 // CHECK-ERROR-NEXT: ^
2707 // CHECK-ERROR: error: invalid operand for instruction
2708 // CHECK-ERROR-NEXT: ldp d3, q2, [sp], #0
2709 // CHECK-ERROR-NEXT: ^
2710 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 10…
2711 // CHECK-ERROR-NEXT: ldp q3, q5, [sp], #8
2712 // CHECK-ERROR-NEXT: ^
2713 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 10…
2714 // CHECK-ERROR-NEXT: stp q20, q25, [x5], #1024
2715 // CHECK-ERROR-NEXT: ^
2716 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 10…
2717 // CHECK-ERROR-NEXT: ldp q30, q15, [x23], #-1040
2718 // CHECK-ERROR-NEXT: ^
2729 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2730 // CHECK-ERROR-NEXT: ldp w3, w2, [x4, #1]!
2731 // CHECK-ERROR-NEXT: ^
2732 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2733 // CHECK-ERROR-NEXT: stp w1, w2, [x3, #253]!
2734 // CHECK-ERROR-NEXT: ^
2735 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2736 // CHECK-ERROR-NEXT: stp w9, w10, [x5, #256]!
2737 // CHECK-ERROR-NEXT: ^
2738 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2739 // CHECK-ERROR-NEXT: ldp w11, w12, [x9, #-260]!
2740 // CHECK-ERROR-NEXT: ^
2741 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2742 // CHECK-ERROR-NEXT: stp wsp, w9, [sp, #0]!
2743 // CHECK-ERROR-NEXT: ^
2748 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2749 // CHECK-ERROR-NEXT: ldpsw x9, x2, [sp, #2]!
2750 // CHECK-ERROR-NEXT: ^
2751 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2752 // CHECK-ERROR-NEXT: ldpsw x1, x2, [x10, #256]!
2753 // CHECK-ERROR-NEXT: ^
2754 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2755 // CHECK-ERROR-NEXT: ldpsw x3, x4, [x11, #-260]!
2756 // CHECK-ERROR-NEXT: ^
2761 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2762 // CHECK-ERROR-NEXT: ldp x2, x5, [sp, #4]!
2763 // CHECK-ERROR-NEXT: ^
2764 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2765 // CHECK-ERROR-NEXT: ldp x5, x6, [x9, #512]!
2766 // CHECK-ERROR-NEXT: ^
2767 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2768 // CHECK-ERROR-NEXT: stp x7, x8, [x10, #-520]!
2769 // CHECK-ERROR-NEXT: ^
2773 // CHECK-ERROR: error: invalid operand for instruction
2774 // CHECK-ERROR-NEXT: ldp sp, x3, [x10, #0]!
2775 // CHECK-ERROR-NEXT: ^
2776 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2777 // CHECK-ERROR-NEXT: stp x3, sp, [x9, #0]!
2778 // CHECK-ERROR-NEXT: ^
2783 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2784 // CHECK-ERROR-NEXT: stp s3, s5, [sp, #-2]!
2785 // CHECK-ERROR-NEXT: ^
2786 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2787 // CHECK-ERROR-NEXT: ldp s6, s26, [x4, #-260]!
2788 // CHECK-ERROR-NEXT: ^
2789 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2790 // CHECK-ERROR-NEXT: stp s13, s19, [x5, #256]!
2791 // CHECK-ERROR-NEXT: ^
2796 // CHECK-ERROR: error: invalid operand for instruction
2797 // CHECK-ERROR-NEXT: ldp d3, d4, [xzr, #0]!
2798 // CHECK-ERROR-NEXT: ^
2799 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2800 // CHECK-ERROR-NEXT: ldp d5, d6, [x0, #512]!
2801 // CHECK-ERROR-NEXT: ^
2802 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2803 // CHECK-ERROR-NEXT: stp d7, d8, [x0, #-520]!
2804 // CHECK-ERROR-NEXT: ^
2810 // CHECK-ERROR: error: invalid operand for instruction
2811 // CHECK-ERROR-NEXT: ldp d3, q2, [sp, #0]!
2812 // CHECK-ERROR-NEXT: ^
2813 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 10…
2814 // CHECK-ERROR-NEXT: ldp q3, q5, [sp, #8]!
2815 // CHECK-ERROR-NEXT: ^
2816 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 10…
2817 // CHECK-ERROR-NEXT: stp q20, q25, [x5, #1024]!
2818 // CHECK-ERROR-NEXT: ^
2819 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 10…
2820 // CHECK-ERROR-NEXT: ldp q30, q15, [x23, #-1040]!
2821 // CHECK-ERROR-NEXT: ^
2831 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2832 // CHECK-ERROR-NEXT: ldnp w3, w2, [x4, #1]
2833 // CHECK-ERROR-NEXT: ^
2834 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2835 // CHECK-ERROR-NEXT: stnp w1, w2, [x3, #253]
2836 // CHECK-ERROR-NEXT: ^
2837 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2838 // CHECK-ERROR-NEXT: stnp w9, w10, [x5, #256]
2839 // CHECK-ERROR-NEXT: ^
2840 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2841 // CHECK-ERROR-NEXT: ldnp w11, w12, [x9, #-260]
2842 // CHECK-ERROR-NEXT: ^
2843 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2844 // CHECK-ERROR-NEXT: stnp wsp, w9, [sp]
2845 // CHECK-ERROR-NEXT: ^
2850 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2851 // CHECK-ERROR-NEXT: ldnp x2, x5, [sp, #4]
2852 // CHECK-ERROR-NEXT: ^
2853 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2854 // CHECK-ERROR-NEXT: ldnp x5, x6, [x9, #512]
2855 // CHECK-ERROR-NEXT: ^
2856 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2857 // CHECK-ERROR-NEXT: stnp x7, x8, [x10, #-520]
2858 // CHECK-ERROR-NEXT: ^
2862 // CHECK-ERROR: error: invalid operand for instruction
2863 // CHECK-ERROR-NEXT: ldnp sp, x3, [x10]
2864 // CHECK-ERROR-NEXT: ^
2865 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2866 // CHECK-ERROR-NEXT: stnp x3, sp, [x9]
2867 // CHECK-ERROR-NEXT: ^
2872 // CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2873 // CHECK-ERROR-NEXT: stnp s3, s5, [sp, #-2]
2874 // CHECK-ERROR-NEXT: ^
2875 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2876 // CHECK-ERROR-NEXT: ldnp s6, s26, [x4, #-260]
2877 // CHECK-ERROR-NEXT: ^
2878 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
2879 // CHECK-ERROR-NEXT: stnp s13, s19, [x5, #256]
2880 // CHECK-ERROR-NEXT: ^
2885 // CHECK-ERROR: error: invalid operand for instruction
2886 // CHECK-ERROR-NEXT: ldnp d3, d4, [xzr]
2887 // CHECK-ERROR-NEXT: ^
2888 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2889 // CHECK-ERROR-NEXT: ldnp d5, d6, [x0, #512]
2890 // CHECK-ERROR-NEXT: ^
2891 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
2892 // CHECK-ERROR-NEXT: stnp d7, d8, [x0, #-520]
2893 // CHECK-ERROR-NEXT: ^
2899 // CHECK-ERROR: error: invalid operand for instruction
2900 // CHECK-ERROR-NEXT: ldnp d3, q2, [sp]
2901 // CHECK-ERROR-NEXT: ^
2902 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 10…
2903 // CHECK-ERROR-NEXT: ldnp q3, q5, [sp, #8]
2904 // CHECK-ERROR-NEXT: ^
2905 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 10…
2906 // CHECK-ERROR-NEXT: stnp q20, q25, [x5, #1024]
2907 // CHECK-ERROR-NEXT: ^
2908 // CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 10…
2909 // CHECK-ERROR-NEXT: ldnp q30, q15, [x23, #-1040]
2910 // CHECK-ERROR-NEXT: ^
2917 // CHECK-ERROR: error: expected compatible register or logical immediate
2918 // CHECK-ERROR-NEXT: orr w0, w1, #0xffffffff
2919 // CHECK-ERROR-NEXT: ^
2920 // CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
2921 // CHECK-ERROR-NEXT: and x3, x5, #0xffffffffffffffff
2922 // CHECK-ERROR-NEXT: ^
2926 // CHECK-ERROR: error: expected compatible register or logical immediate
2927 // CHECK-ERROR-NEXT: ands w3, w9, #0x0
2928 // CHECK-ERROR-NEXT: ^
2929 // CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
2930 // CHECK-ERROR-NEXT: eor x2, x0, #0x0
2931 // CHECK-ERROR-NEXT: ^
2935 // CHECK-ERROR: error: expected compatible register or logical immediate
2936 // CHECK-ERROR-NEXT: eor w3, w5, #0x83
2937 // CHECK-ERROR-NEXT: ^
2938 // CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
2939 // CHECK-ERROR-NEXT: eor x9, x20, #0x1234
2940 // CHECK-ERROR-NEXT: ^
2944 // CHECK-ERROR: error: invalid operand for instruction
2945 // CHECK-ERROR-NEXT: and wzr, w4, 0xffff0000
2946 // CHECK-ERROR-NEXT: ^
2947 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2948 // CHECK-ERROR-NEXT: eor xzr, x9, #0xffff0000ffff0000
2949 // CHECK-ERROR-NEXT: ^
2953 // CHECK-ERROR: error: invalid operand for instruction
2954 // CHECK-ERROR-NEXT: orr w3, wsp, #0xf0f0f0f0
2955 // CHECK-ERROR-NEXT: ^
2956 // CHECK-ERROR-NEXT: error: invalid operand for instruction
2957 // CHECK-ERROR-NEXT: ands x3, sp, #0xaaaaaaaaaaaaaaaa
2958 // CHECK-ERROR-NEXT: ^
2961 // CHECK-ERROR: error: invalid operand for instruction
2962 // CHECK-ERROR-NEXT: tst sp, #0xe0e0e0e0e0e0e0e0
2963 // CHECK-ERROR-NEXT: ^
2969 // CHECK-ERROR: error: invalid operand for instruction
2970 // CHECK-ERROR-NEXT: movi wzr, #0x44444444
2971 // CHECK-ERROR-NEXT: ^
2972 // CHECK-ERROR: error: invalid operand for instruction
2973 // CHECK-ERROR-NEXT: movi w3, #0xffff
2974 // CHECK-ERROR-NEXT: ^
2975 // CHECK-ERROR: error: invalid operand for instruction
2976 // CHECK-ERROR-NEXT: movi x9, #0x0000ffff00000000
2977 // CHECK-ERROR-NEXT: ^
2988 // CHECK-ERROR: error: expected integer shift amount
2989 // CHECK-ERROR-NEXT: and w2, w24, w6, lsl #-1
2990 // CHECK-ERROR-NEXT: ^
2991 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
2992 // CHECK-ERROR-NEXT: and w4, w6, w12, lsl #32
2993 // CHECK-ERROR-NEXT: ^
2994 // CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
2995 // CHECK-ERROR-NEXT: and x4, x6, x12, lsl #64
2996 // CHECK-ERROR-NEXT: ^
2997 // CHECK-ERROR-NEXT: error: expected #imm after shift specifier
2998 // CHECK-ERROR-NEXT: and x2, x5, x11, asr
2999 // CHECK-ERROR-NEXT: ^
3009 // CHECK-ERROR: error: expected compatible register or logical immediate
3010 // CHECK-ERROR-NEXT: orn wsp, w3, w5
3011 // CHECK-ERROR-NEXT: ^
3012 // CHECK-ERROR-NEXT: error: invalid operand for instruction
3013 // CHECK-ERROR-NEXT: bics x20, sp, x9, lsr #0
3014 // CHECK-ERROR-NEXT: ^
3015 // CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
3016 // CHECK-ERROR-NEXT: orn x2, x6, sp, lsl #3
3017 // CHECK-ERROR-NEXT: ^
3024 // CHECK-ERROR: error: invalid operand for instruction
3025 // CHECK-ERROR-NEXT: and x3, w2, w1
3026 // CHECK-ERROR-NEXT: ^
3027 // CHECK-ERROR-NEXT: error: invalid operand for instruction
3028 // CHECK-ERROR-NEXT: ands w1, x12, w2
3029 // CHECK-ERROR-NEXT: ^
3030 // CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
3031 // CHECK-ERROR-NEXT: and x4, x5, w6, lsl #12
3032 // CHECK-ERROR-NEXT: ^
3033 // CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
3034 // CHECK-ERROR-NEXT: orr w2, w5, x7, asr #0
3035 // CHECK-ERROR-NEXT: ^
3039 // CHECK-ERROR: error: invalid operand for instruction
3040 // CHECK-ERROR-NEXT: mov w3, w7, lsl #13
3041 // CHECK-ERROR-NEXT: ^
3055 // CHECK-ERROR: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 6…
3056 // CHECK-ERROR-NEXT: movz w3, #65536, lsl #0
3057 // CHECK-ERROR-NEXT: ^
3058 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3059 // CHECK-ERROR-NEXT: movz w4, #65536
3060 // CHECK-ERROR-NEXT: ^
3061 // CHECK-ERROR-AARCH64-NEXT: error: expected relocated symbol or integer in range [0, 65535]
3062 // CHECK-ERROR-ARM64-NEXT: error: expected 'lsl' with optional integer 0 or 16
3063 // CHECK-ERROR-NEXT: movn w1, #2, lsl #1
3064 // CHECK-ERROR-NEXT: ^
3065 // CHECK-ERROR-AARCH64-NEXT: error: only 'lsl #+N' valid after immediate
3066 // CHECK-ERROR-ARM64-NEXT: error: expected integer shift amount
3067 // CHECK-ERROR-NEXT: movk w3, #0, lsl #-1
3068 // CHECK-ERROR-NEXT: ^
3069 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3070 // CHECK-ERROR-NEXT: movn w2, #-1, lsl #0
3071 // CHECK-ERROR-NEXT: ^
3072 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3073 // CHECK-ERROR-NEXT: movz x3, #-1
3074 // CHECK-ERROR-NEXT: ^
3075 // CHECK-ERROR-AARCH64-NEXT: error: expected relocated symbol or integer in range [0, 65535]
3076 // CHECK-ERROR-ARM64-NEXT: error: expected 'lsl' with optional integer 0 or 16
3077 // CHECK-ERROR-NEXT: movk w3, #1, lsl #32
3078 // CHECK-ERROR-NEXT: ^
3079 // CHECK-ERROR-AARCH64-NEXT: error: expected relocated symbol or integer in range [0, 65535]
3080 // CHECK-ERROR-ARM64-NEXT: error: expected 'lsl' with optional integer 0, 16, 32 or 48
3081 // CHECK-ERROR-NEXT: movn x2, #12, lsl #64
3082 // CHECK-ERROR-NEXT: ^
3090 // CHECK-ERROR: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 6…
3091 // CHECK-ERROR-NEXT: movz x12, #:abs_g0:sym, lsl #16
3092 // CHECK-ERROR-NEXT: ^
3093 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3094 // CHECK-ERROR-NEXT: movz x12, #:abs_g0:sym, lsl #0
3095 // CHECK-ERROR-NEXT: ^
3096 // CHECK-ERROR-AARCH64-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer i…
3097 // CHECK-ERROR-AARCH64-NEXT: movn x2, #:abs_g0:sym
3098 // CHECK-ERROR-AARCH64-NEXT: ^
3099 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3100 // CHECK-ERROR-NEXT: movk w3, #:abs_g0:sym
3101 // CHECK-ERROR-NEXT: ^
3102 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3103 // CHECK-ERROR-NEXT: movz x3, #:abs_g0_nc:sym
3104 // CHECK-ERROR-NEXT: ^
3105 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3106 // CHECK-ERROR-NEXT: movn x4, #:abs_g0_nc:sym
3107 // CHECK-ERROR-NEXT: ^
3113 // CHECK-ERROR-AARCH64: error: {{expected relocated symbol or|immediate must be an}} integer in ran…
3114 // CHECK-ERROR-AARCH64-NEXT: movn x2, #:abs_g1:sym
3115 // CHECK-ERROR-AARCH64-NEXT: ^
3116 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3117 // CHECK-ERROR-NEXT: movk w3, #:abs_g1:sym
3118 // CHECK-ERROR-NEXT: ^
3119 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3120 // CHECK-ERROR-NEXT: movz x3, #:abs_g1_nc:sym
3121 // CHECK-ERROR-NEXT: ^
3122 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3123 // CHECK-ERROR-NEXT: movn x4, #:abs_g1_nc:sym
3124 // CHECK-ERROR-NEXT: ^
3132 // CHECK-ERROR: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 6…
3133 // CHECK-ERROR-NEXT: movz w12, #:abs_g2:sym
3134 // CHECK-ERROR-NEXT: ^
3135 // CHECK-ERROR-AARCH64-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer i…
3136 // CHECK-ERROR-AARCH64-NEXT: movn x12, #:abs_g2:sym
3137 // CHECK-ERROR-AARCH64-NEXT: ^
3138 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3139 // CHECK-ERROR-NEXT: movk x13, #:abs_g2:sym
3140 // CHECK-ERROR-NEXT: ^
3141 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3142 // CHECK-ERROR-NEXT: movk w3, #:abs_g2_nc:sym
3143 // CHECK-ERROR-NEXT: ^
3144 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3145 // CHECK-ERROR-NEXT: movz x13, #:abs_g2_nc:sym
3146 // CHECK-ERROR-NEXT: ^
3147 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3148 // CHECK-ERROR-NEXT: movn x24, #:abs_g2_nc:sym
3149 // CHECK-ERROR-NEXT: ^
3154 // CHECK-ERROR-AARCH64: error: {{expected relocated symbol or|immediate must be an}} integer in ran…
3155 // CHECK-ERROR-AARCH64-NEXT: movn x19, #:abs_g3:sym
3156 // CHECK-ERROR-AARCH64-NEXT: ^
3157 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3158 // CHECK-ERROR-NEXT: movz w20, #:abs_g3:sym
3159 // CHECK-ERROR-NEXT: ^
3160 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3161 // CHECK-ERROR-NEXT: movk w21, #:abs_g3:sym
3162 // CHECK-ERROR-NEXT: ^
3166 // CHECK-ERROR: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 6…
3167 // CHECK-ERROR-NEXT: movk x19, #:abs_g0_s:sym
3168 // CHECK-ERROR-NEXT: ^
3169 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3170 // CHECK-ERROR-NEXT: movk w23, #:abs_g0_s:sym
3171 // CHECK-ERROR-NEXT: ^
3175 // CHECK-ERROR: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 6…
3176 // CHECK-ERROR-NEXT: movk x19, #:abs_g1_s:sym
3177 // CHECK-ERROR-NEXT: ^
3178 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3179 // CHECK-ERROR-NEXT: movk w23, #:abs_g1_s:sym
3180 // CHECK-ERROR-NEXT: ^
3186 // CHECK-ERROR: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 6…
3187 // CHECK-ERROR-NEXT: movz w2, #:abs_g2_s:sym
3188 // CHECK-ERROR-NEXT: ^
3189 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3190 // CHECK-ERROR-NEXT: movn w29, #:abs_g2_s:sym
3191 // CHECK-ERROR-NEXT: ^
3192 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3193 // CHECK-ERROR-NEXT: movk x19, #:abs_g2_s:sym
3194 // CHECK-ERROR-NEXT: ^
3195 // CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range …
3196 // CHECK-ERROR-NEXT: movk w23, #:abs_g2_s:sym
3197 // CHECK-ERROR-NEXT: ^
3206 // CHECK-ERROR: error: invalid operand for instruction
3207 // CHECK-ERROR-NEXT: adr sp, loc
3208 // CHECK-ERROR-NEXT: ^
3209 // CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
3210 // CHECK-ERROR-NEXT: adrp x3, #20
3211 // CHECK-ERROR-NEXT: ^
3212 // CHECK-ERROR-NEXT: error: invalid operand for instruction
3213 // CHECK-ERROR-NEXT: adrp w2, loc
3214 // CHECK-ERROR-NEXT: ^
3220 // CHECK-ERROR: error: expected label or encodable integer pc offset
3221 // CHECK-ERROR-NEXT: adr x9, #1048576
3222 // CHECK-ERROR-NEXT: ^
3223 // CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
3224 // CHECK-ERROR-NEXT: adr x2, #-1048577
3225 // CHECK-ERROR-NEXT: ^
3226 // CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
3227 // CHECK-ERROR-NEXT: adrp x9, #4294967296
3228 // CHECK-ERROR-NEXT: ^
3229 // CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
3230 // CHECK-ERROR-NEXT: adrp x20, #-4294971392
3231 // CHECK-ERROR-NEXT: ^
3239 // CHECK-ERROR: error: {{expected|immediate must be an}} integer in range [0, 127]
3240 // CHECK-ERROR-NEXT: hint #-1
3241 // CHECK-ERROR-NEXT: ^
3242 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 127]
3243 // CHECK-ERROR-NEXT: hint #128
3244 // CHECK-ERROR-NEXT: ^
3248 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
3249 // CHECK-ERROR-NEXT: clrex #-1
3250 // CHECK-ERROR-NEXT: ^
3251 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
3252 // CHECK-ERROR-NEXT: clrex #16
3253 // CHECK-ERROR-NEXT: ^
3259 // CHECK-ERROR-NEXT: error: {{Invalid immediate for instruction|barrier operand out of range}}
3260 // CHECK-ERROR-NEXT: dsb #-1
3261 // CHECK-ERROR-NEXT: ^
3262 // CHECK-ERROR-NEXT: error: {{Invalid immediate for instruction|barrier operand out of range}}
3263 // CHECK-ERROR-NEXT: dsb #16
3264 // CHECK-ERROR-NEXT: ^
3265 // CHECK-ERROR-NEXT: error: {{Invalid immediate for instruction|barrier operand out of range}}
3266 // CHECK-ERROR-NEXT: dmb #-1
3267 // CHECK-ERROR-NEXT: ^
3268 // CHECK-ERROR-NEXT: error: {{Invalid immediate for instruction|barrier operand out of range}}
3269 // CHECK-ERROR-NEXT: dmb #16
3270 // CHECK-ERROR-NEXT: ^
3274 // CHECK-ERROR-NEXT: error: {{Invalid immediate for instruction|barrier operand out of range}}
3275 // CHECK-ERROR-NEXT: isb #-1
3276 // CHECK-ERROR-NEXT: ^
3277 // CHECK-ERROR-NEXT: error: {{Invalid immediate for instruction|barrier operand out of range}}
3278 // CHECK-ERROR-NEXT: isb #16
3279 // CHECK-ERROR-NEXT: ^
3285 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
3286 // CHECK-ERROR-NEXT: msr daifset, x4
3287 // CHECK-ERROR-NEXT: ^
3288 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
3289 // CHECK-ERROR-NEXT: msr spsel, #-1
3290 // CHECK-ERROR-NEXT: ^
3291 // CHECK-ERROR-NEXT: error: {{expected comma before next operand|unexpected token in argument list}}
3292 // CHECK-ERROR-NEXT: msr spsel #-1
3293 // CHECK-ERROR-NEXT: ^
3294 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
3295 // CHECK-ERROR-NEXT: msr daifclr, #16
3296 // CHECK-ERROR-NEXT: ^
3306 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 7]
3307 // CHECK-ERROR-NEXT: sys #8, c1, c2, #7, x9
3308 // CHECK-ERROR-NEXT: ^
3309 // CHECK-ERROR-NEXT: error: Expected cN operand where 0 <= N <= 15
3310 // CHECK-ERROR-NEXT: sys #3, c16, c2, #3, x10
3311 // CHECK-ERROR-NEXT: ^
3312 // CHECK-ERROR-NEXT: error: Expected cN operand where 0 <= N <= 15
3313 // CHECK-ERROR-NEXT: sys #2, c11, c16, #5
3314 // CHECK-ERROR-NEXT: ^
3315 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 7]
3316 // CHECK-ERROR-NEXT: sys #4, c9, c8, #8, xzr
3317 // CHECK-ERROR-NEXT: ^
3318 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 7]
3319 // CHECK-ERROR-NEXT: sysl x11, #8, c1, c2, #7
3320 // CHECK-ERROR-NEXT: ^
3321 // CHECK-ERROR-NEXT: error: Expected cN operand where 0 <= N <= 15
3322 // CHECK-ERROR-NEXT: sysl x13, #3, c16, c2, #3
3323 // CHECK-ERROR-NEXT: ^
3324 // CHECK-ERROR-NEXT: error: Expected cN operand where 0 <= N <= 15
3325 // CHECK-ERROR-NEXT: sysl x9, #2, c11, c16, #5
3326 // CHECK-ERROR-NEXT: ^
3327 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 7]
3328 // CHECK-ERROR-NEXT: sysl x4, #4, c9, c8, #8
3329 // CHECK-ERROR-NEXT: ^
3334 // CHECK-ERROR-NEXT: error: specified {{IC|ic}} op does not use a register
3335 // CHECK-ERROR-NEXT: ic ialluis, x2
3336 // CHECK-ERROR-NEXT: ^
3337 // CHECK-ERROR-AARCH64-NEXT: error: operand specifier not recognised
3338 // CHECK-ERROR-ARM64-NEXT: error: invalid operand for IC instruction
3339 // CHECK-ERROR-NEXT: ic allu, x7
3340 // CHECK-ERROR-NEXT: ^
3341 // CHECK-ERROR-NEXT: error: specified {{IC|ic}} op requires a register
3342 // CHECK-ERROR-NEXT: ic ivau
3343 // CHECK-ERROR-NEXT: ^
3377 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3378 // CHECK-ERROR-NEXT: tlbi IPAS2E1IS
3379 // CHECK-ERROR-NEXT: ^
3380 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3381 // CHECK-ERROR-NEXT: tlbi IPAS2LE1IS
3382 // CHECK-ERROR-NEXT: ^
3383 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
3384 // CHECK-ERROR-NEXT: tlbi VMALLE1IS, x12
3385 // CHECK-ERROR-NEXT: ^
3386 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
3387 // CHECK-ERROR-NEXT: tlbi ALLE2IS, x11
3388 // CHECK-ERROR-NEXT: ^
3389 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
3390 // CHECK-ERROR-NEXT: tlbi ALLE3IS, x20
3391 // CHECK-ERROR-NEXT: ^
3392 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3393 // CHECK-ERROR-NEXT: tlbi VAE1IS
3394 // CHECK-ERROR-NEXT: ^
3395 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3396 // CHECK-ERROR-NEXT: tlbi VAE2IS
3397 // CHECK-ERROR-NEXT: ^
3398 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3399 // CHECK-ERROR-NEXT: tlbi VAE3IS
3400 // CHECK-ERROR-NEXT: ^
3401 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3402 // CHECK-ERROR-NEXT: tlbi ASIDE1IS
3403 // CHECK-ERROR-NEXT: ^
3404 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3405 // CHECK-ERROR-NEXT: tlbi VAAE1IS
3406 // CHECK-ERROR-NEXT: ^
3407 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
3408 // CHECK-ERROR-NEXT: tlbi ALLE1IS, x0
3409 // CHECK-ERROR-NEXT: ^
3410 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3411 // CHECK-ERROR-NEXT: tlbi VALE1IS
3412 // CHECK-ERROR-NEXT: ^
3413 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3414 // CHECK-ERROR-NEXT: tlbi VALE2IS
3415 // CHECK-ERROR-NEXT: ^
3416 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3417 // CHECK-ERROR-NEXT: tlbi VALE3IS
3418 // CHECK-ERROR-NEXT: ^
3419 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
3420 // CHECK-ERROR-NEXT: tlbi VMALLS12E1IS, xzr
3421 // CHECK-ERROR-NEXT: ^
3422 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3423 // CHECK-ERROR-NEXT: tlbi VAALE1IS
3424 // CHECK-ERROR-NEXT: ^
3425 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3426 // CHECK-ERROR-NEXT: tlbi IPAS2E1
3427 // CHECK-ERROR-NEXT: ^
3428 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3429 // CHECK-ERROR-NEXT: tlbi IPAS2LE1
3430 // CHECK-ERROR-NEXT: ^
3431 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
3432 // CHECK-ERROR-NEXT: tlbi VMALLE1, x9
3433 // CHECK-ERROR-NEXT: ^
3434 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
3435 // CHECK-ERROR-NEXT: tlbi ALLE2, x10
3436 // CHECK-ERROR-NEXT: ^
3437 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
3438 // CHECK-ERROR-NEXT: tlbi ALLE3, x11
3439 // CHECK-ERROR-NEXT: ^
3440 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3441 // CHECK-ERROR-NEXT: tlbi VAE1
3442 // CHECK-ERROR-NEXT: ^
3443 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3444 // CHECK-ERROR-NEXT: tlbi VAE2
3445 // CHECK-ERROR-NEXT: ^
3446 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3447 // CHECK-ERROR-NEXT: tlbi VAE3
3448 // CHECK-ERROR-NEXT: ^
3449 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3450 // CHECK-ERROR-NEXT: tlbi ASIDE1
3451 // CHECK-ERROR-NEXT: ^
3452 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3453 // CHECK-ERROR-NEXT: tlbi VAAE1
3454 // CHECK-ERROR-NEXT: ^
3455 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
3456 // CHECK-ERROR-NEXT: tlbi ALLE1, x25
3457 // CHECK-ERROR-NEXT: ^
3458 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3459 // CHECK-ERROR-NEXT: tlbi VALE1
3460 // CHECK-ERROR-NEXT: ^
3461 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3462 // CHECK-ERROR-NEXT: tlbi VALE2
3463 // CHECK-ERROR-NEXT: ^
3464 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3465 // CHECK-ERROR-NEXT: tlbi VALE3
3466 // CHECK-ERROR-NEXT: ^
3467 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
3468 // CHECK-ERROR-NEXT: tlbi VMALLS12E1, x15
3469 // CHECK-ERROR-NEXT: ^
3470 // CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
3471 // CHECK-ERROR-NEXT: tlbi VAALE1
3472 // CHECK-ERROR-NEXT: ^
3527 // CHECK-ERROR: error: expected writable system register or pstate
3528 // CHECK-ERROR-NEXT: msr MDCCSR_EL0, x12
3529 // CHECK-ERROR-NEXT: ^
3530 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3531 // CHECK-ERROR-NEXT: msr DBGDTRRX_EL0, x12
3532 // CHECK-ERROR-NEXT: ^
3533 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3534 // CHECK-ERROR-NEXT: msr MDRAR_EL1, x12
3535 // CHECK-ERROR-NEXT: ^
3536 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3537 // CHECK-ERROR-NEXT: msr OSLSR_EL1, x12
3538 // CHECK-ERROR-NEXT: ^
3539 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3540 // CHECK-ERROR-NEXT: msr DBGAUTHSTATUS_EL1, x12
3541 // CHECK-ERROR-NEXT: ^
3542 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3543 // CHECK-ERROR-NEXT: msr MIDR_EL1, x12
3544 // CHECK-ERROR-NEXT: ^
3545 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3546 // CHECK-ERROR-NEXT: msr CCSIDR_EL1, x12
3547 // CHECK-ERROR-NEXT: ^
3548 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3549 // CHECK-ERROR-NEXT: msr CLIDR_EL1, x12
3550 // CHECK-ERROR-NEXT: ^
3551 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3552 // CHECK-ERROR-NEXT: msr CTR_EL0, x12
3553 // CHECK-ERROR-NEXT: ^
3554 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3555 // CHECK-ERROR-NEXT: msr MPIDR_EL1, x12
3556 // CHECK-ERROR-NEXT: ^
3557 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3558 // CHECK-ERROR-NEXT: msr REVIDR_EL1, x12
3559 // CHECK-ERROR-NEXT: ^
3560 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3561 // CHECK-ERROR-NEXT: msr AIDR_EL1, x12
3562 // CHECK-ERROR-NEXT: ^
3563 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3564 // CHECK-ERROR-NEXT: msr DCZID_EL0, x12
3565 // CHECK-ERROR-NEXT: ^
3566 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3567 // CHECK-ERROR-NEXT: msr ID_PFR0_EL1, x12
3568 // CHECK-ERROR-NEXT: ^
3569 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3570 // CHECK-ERROR-NEXT: msr ID_PFR1_EL1, x12
3571 // CHECK-ERROR-NEXT: ^
3572 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3573 // CHECK-ERROR-NEXT: msr ID_DFR0_EL1, x12
3574 // CHECK-ERROR-NEXT: ^
3575 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3576 // CHECK-ERROR-NEXT: msr ID_AFR0_EL1, x12
3577 // CHECK-ERROR-NEXT: ^
3578 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3579 // CHECK-ERROR-NEXT: msr ID_MMFR0_EL1, x12
3580 // CHECK-ERROR-NEXT: ^
3581 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3582 // CHECK-ERROR-NEXT: msr ID_MMFR1_EL1, x12
3583 // CHECK-ERROR-NEXT: ^
3584 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3585 // CHECK-ERROR-NEXT: msr ID_MMFR2_EL1, x12
3586 // CHECK-ERROR-NEXT: ^
3587 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3588 // CHECK-ERROR-NEXT: msr ID_MMFR3_EL1, x12
3589 // CHECK-ERROR-NEXT: ^
3590 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3591 // CHECK-ERROR-NEXT: msr ID_MMFR4_EL1, x12
3592 // CHECK-ERROR-NEXT: ^
3593 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3594 // CHECK-ERROR-NEXT: msr ID_ISAR0_EL1, x12
3595 // CHECK-ERROR-NEXT: ^
3596 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3597 // CHECK-ERROR-NEXT: msr ID_ISAR1_EL1, x12
3598 // CHECK-ERROR-NEXT: ^
3599 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3600 // CHECK-ERROR-NEXT: msr ID_ISAR2_EL1, x12
3601 // CHECK-ERROR-NEXT: ^
3602 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3603 // CHECK-ERROR-NEXT: msr ID_ISAR3_EL1, x12
3604 // CHECK-ERROR-NEXT: ^
3605 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3606 // CHECK-ERROR-NEXT: msr ID_ISAR4_EL1, x12
3607 // CHECK-ERROR-NEXT: ^
3608 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3609 // CHECK-ERROR-NEXT: msr ID_ISAR5_EL1, x12
3610 // CHECK-ERROR-NEXT: ^
3611 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3612 // CHECK-ERROR-NEXT: msr MVFR0_EL1, x12
3613 // CHECK-ERROR-NEXT: ^
3614 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3615 // CHECK-ERROR-NEXT: msr MVFR1_EL1, x12
3616 // CHECK-ERROR-NEXT: ^
3617 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3618 // CHECK-ERROR-NEXT: msr MVFR2_EL1, x12
3619 // CHECK-ERROR-NEXT: ^
3620 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3621 // CHECK-ERROR-NEXT: msr ID_AA64PFR0_EL1, x12
3622 // CHECK-ERROR-NEXT: ^
3623 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3624 // CHECK-ERROR-NEXT: msr ID_AA64PFR1_EL1, x12
3625 // CHECK-ERROR-NEXT: ^
3626 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3627 // CHECK-ERROR-NEXT: msr ID_AA64DFR0_EL1, x12
3628 // CHECK-ERROR-NEXT: ^
3629 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3630 // CHECK-ERROR-NEXT: msr ID_AA64DFR1_EL1, x12
3631 // CHECK-ERROR-NEXT: ^
3632 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3633 // CHECK-ERROR-NEXT: msr ID_AA64AFR0_EL1, x12
3634 // CHECK-ERROR-NEXT: ^
3635 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3636 // CHECK-ERROR-NEXT: msr ID_AA64AFR1_EL1, x12
3637 // CHECK-ERROR-NEXT: ^
3638 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3639 // CHECK-ERROR-NEXT: msr ID_AA64ISAR0_EL1, x12
3640 // CHECK-ERROR-NEXT: ^
3641 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3642 // CHECK-ERROR-NEXT: msr ID_AA64ISAR1_EL1, x12
3643 // CHECK-ERROR-NEXT: ^
3644 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3645 // CHECK-ERROR-NEXT: msr ID_AA64MMFR0_EL1, x12
3646 // CHECK-ERROR-NEXT: ^
3647 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3648 // CHECK-ERROR-NEXT: msr ID_AA64MMFR1_EL1, x12
3649 // CHECK-ERROR-NEXT: ^
3650 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3651 // CHECK-ERROR-NEXT: msr PMCEID0_EL0, x12
3652 // CHECK-ERROR-NEXT: ^
3653 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3654 // CHECK-ERROR-NEXT: msr PMCEID1_EL0, x12
3655 // CHECK-ERROR-NEXT: ^
3656 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3657 // CHECK-ERROR-NEXT: msr RVBAR_EL1, x12
3658 // CHECK-ERROR-NEXT: ^
3659 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3660 // CHECK-ERROR-NEXT: msr RVBAR_EL2, x12
3661 // CHECK-ERROR-NEXT: ^
3662 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3663 // CHECK-ERROR-NEXT: msr RVBAR_EL3, x12
3664 // CHECK-ERROR-NEXT: ^
3665 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3666 // CHECK-ERROR-NEXT: msr ISR_EL1, x12
3667 // CHECK-ERROR-NEXT: ^
3668 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3669 // CHECK-ERROR-NEXT: msr CNTPCT_EL0, x12
3670 // CHECK-ERROR-NEXT: ^
3671 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3672 // CHECK-ERROR-NEXT: msr CNTVCT_EL0, x12
3673 // CHECK-ERROR-NEXT: ^
3674 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3675 // CHECK-ERROR-NEXT: msr PMEVCNTR31_EL0, x12
3676 // CHECK-ERROR-NEXT: ^
3677 // CHECK-ERROR-NEXT: error: expected writable system register or pstate
3678 // CHECK-ERROR-NEXT: msr PMEVTYPER31_EL0, x12
3679 // CHECK-ERROR-NEXT: ^
3686 // CHECK-ERROR: error: expected readable system register
3687 // CHECK-ERROR-NEXT: mrs x9, DBGDTRTX_EL0
3688 // CHECK-ERROR-NEXT: ^
3689 // CHECK-ERROR-NEXT: error: expected readable system register
3690 // CHECK-ERROR-NEXT: mrs x9, OSLAR_EL1
3691 // CHECK-ERROR-NEXT: ^
3692 // CHECK-ERROR-NEXT: error: expected readable system register
3693 // CHECK-ERROR-NEXT: mrs x9, PMSWINC_EL0
3694 // CHECK-ERROR-NEXT: ^
3695 // CHECK-ERROR-NEXT: error: expected readable system register
3696 // CHECK-ERROR-NEXT: mrs x9, PMEVCNTR31_EL0
3697 // CHECK-ERROR-NEXT: ^
3698 // CHECK-ERROR-NEXT: error: expected readable system register
3699 // CHECK-ERROR-NEXT: mrs x9, PMEVTYPER31_EL0
3700 // CHECK-ERROR-NEXT: ^
3708 // CHECK-ERROR-NEXT: error: expected readable system register
3709 // CHECK-ERROR-NEXT: mrs x12, s3_8_c11_c13_2
3710 // CHECK-ERROR-NEXT: ^
3711 // CHECK-ERROR-NEXT: error: expected readable system register
3712 // CHECK-ERROR-NEXT: mrs x19, s3_2_c15_c16_2
3713 // CHECK-ERROR-NEXT: ^
3714 // CHECK-ERROR-NEXT: error: expected readable system register
3715 // CHECK-ERROR-NEXT: mrs x30, s3_2_c15_c1_8
3716 // CHECK-ERROR-NEXT: ^
3717 // CHECK-ERROR-NEXT: error: expected readable system register
3718 // CHECK-ERROR-NEXT: mrs x4, s4_7_c15_c15_7
3719 // CHECK-ERROR-NEXT: ^
3720 // CHECK-ERROR-NEXT: error: expected readable system register
3721 // CHECK-ERROR-NEXT: mrs x14, s3_7_c16_c15_7
3722 // CHECK-ERROR-NEXT: ^
3732 // CHECK-ERROR: error: {{expected|immediate must be an}} integer in range [0, 31]
3733 // CHECK-ERROR-NEXT: tbz w3, #-1, addr
3734 // CHECK-ERROR-NEXT: ^
3735 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
3736 // CHECK-ERROR-NEXT: tbz w3, #32, nowhere
3737 // CHECK-ERROR-NEXT: ^
3738 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
3739 // CHECK-ERROR-NEXT: tbz x9, #-1, there
3740 // CHECK-ERROR-NEXT: ^
3741 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
3742 // CHECK-ERROR-NEXT: tbz x20, #64, dont
3743 // CHECK-ERROR-NEXT: ^
3749 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
3750 // CHECK-ERROR-NEXT: tbnz w3, #-1, addr
3751 // CHECK-ERROR-NEXT: ^
3752 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
3753 // CHECK-ERROR-NEXT: tbnz w3, #32, nowhere
3754 // CHECK-ERROR-NEXT: ^
3755 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
3756 // CHECK-ERROR-NEXT: tbnz x9, #-1, there
3757 // CHECK-ERROR-NEXT: ^
3758 // CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
3759 // CHECK-ERROR-NEXT: tbnz x20, #64, dont
3768 // CHECK-ERROR: error: expected label or encodable integer pc offset
3769 // CHECK-ERROR-NEXT: b #134217728
3770 // CHECK-ERROR-NEXT: ^
3771 // CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
3772 // CHECK-ERROR-NEXT: b #-134217732
3773 // CHECK-ERROR-NEXT: ^
3774 // CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
3775 // CHECK-ERROR-NEXT: b #1
3776 // CHECK-ERROR-NEXT: ^
3784 // CHECK-ERROR: error: invalid operand for instruction
3785 // CHECK-ERROR-NEXT: br w2
3786 // CHECK-ERROR-NEXT: ^
3787 // CHECK-ERROR-NEXT: error: invalid operand for instruction
3788 // CHECK-ERROR-NEXT: br sp
3789 // CHECK-ERROR-NEXT: ^
3794 // CHECK-ERROR: error: invalid operand for instruction
3795 // CHECK-ERROR-NEXT: eret x2
3796 // CHECK-ERROR-NEXT: ^
3797 // CHECK-ERROR-NEXT: error: invalid operand for instruction
3798 // CHECK-ERROR-NEXT: drps x2
3799 // CHECK-ERROR-NEXT: ^