OSDN Git Service

Update to LLVM 3.5a.
[android-x86/external-llvm.git] / test / MC / SystemZ / insn-bad.s
1 # For z10 only.
2 # RUN: not llvm-mc -triple s390x-linux-gnu -mcpu=z10 < %s 2> %t
3 # RUN: FileCheck < %t %s
4
5 #CHECK: error: invalid operand
6 #CHECK: a       %r0, -1
7 #CHECK: error: invalid operand
8 #CHECK: a       %r0, 4096
9
10         a       %r0, -1
11         a       %r0, 4096
12
13 #CHECK: error: invalid operand
14 #CHECK: adb     %f0, -1
15 #CHECK: error: invalid operand
16 #CHECK: adb     %f0, 4096
17
18         adb     %f0, -1
19         adb     %f0, 4096
20
21 #CHECK: error: invalid operand
22 #CHECK: aeb     %f0, -1
23 #CHECK: error: invalid operand
24 #CHECK: aeb     %f0, 4096
25
26         aeb     %f0, -1
27         aeb     %f0, 4096
28
29 #CHECK: error: invalid operand
30 #CHECK: afi     %r0, (-1 << 31) - 1
31 #CHECK: error: invalid operand
32 #CHECK: afi     %r0, (1 << 31)
33
34         afi     %r0, (-1 << 31) - 1
35         afi     %r0, (1 << 31)
36
37 #CHECK: error: invalid operand
38 #CHECK: ag      %r0, -524289
39 #CHECK: error: invalid operand
40 #CHECK: ag      %r0, 524288
41
42         ag      %r0, -524289
43         ag      %r0, 524288
44
45 #CHECK: error: invalid operand
46 #CHECK: agf     %r0, -524289
47 #CHECK: error: invalid operand
48 #CHECK: agf     %r0, 524288
49
50         agf     %r0, -524289
51         agf     %r0, 524288
52
53 #CHECK: error: invalid operand
54 #CHECK: agfi    %r0, (-1 << 31) - 1
55 #CHECK: error: invalid operand
56 #CHECK: agfi    %r0, (1 << 31)
57
58         agfi    %r0, (-1 << 31) - 1
59         agfi    %r0, (1 << 31)
60
61 #CHECK: error: invalid operand
62 #CHECK: aghi    %r0, -32769
63 #CHECK: error: invalid operand
64 #CHECK: aghi    %r0, 32768
65 #CHECK: error: invalid operand
66 #CHECK: aghi    %r0, foo
67
68         aghi    %r0, -32769
69         aghi    %r0, 32768
70         aghi    %r0, foo
71
72 #CHECK: error: {{(instruction requires: distinct-ops)?}}
73 #CHECK: aghik   %r1, %r2, 3
74
75         aghik   %r1, %r2, 3
76
77 #CHECK: error: {{(instruction requires: distinct-ops)?}}
78 #CHECK: agrk    %r2,%r3,%r4
79
80         agrk    %r2,%r3,%r4
81
82 #CHECK: error: invalid operand
83 #CHECK: agsi    -524289, 0
84 #CHECK: error: invalid operand
85 #CHECK: agsi    524288, 0
86 #CHECK: error: invalid use of indexed addressing
87 #CHECK: agsi    0(%r1,%r2), 0
88 #CHECK: error: invalid operand
89 #CHECK: agsi    0, -129
90 #CHECK: error: invalid operand
91 #CHECK: agsi    0, 128
92
93         agsi    -524289, 0
94         agsi    524288, 0
95         agsi    0(%r1,%r2), 0
96         agsi    0, -129
97         agsi    0, 128
98
99 #CHECK: error: invalid operand
100 #CHECK: ah      %r0, -1
101 #CHECK: error: invalid operand
102 #CHECK: ah      %r0, 4096
103
104         ah      %r0, -1
105         ah      %r0, 4096
106
107 #CHECK: error: invalid operand
108 #CHECK: ahi     %r0, -32769
109 #CHECK: error: invalid operand
110 #CHECK: ahi     %r0, 32768
111 #CHECK: error: invalid operand
112 #CHECK: ahi     %r0, foo
113
114         ahi     %r0, -32769
115         ahi     %r0, 32768
116         ahi     %r0, foo
117
118 #CHECK: error: {{(instruction requires: distinct-ops)?}}
119 #CHECK: ahik    %r1, %r2, 3
120
121         ahik    %r1, %r2, 3
122
123 #CHECK: error: invalid operand
124 #CHECK: ahy     %r0, -524289
125 #CHECK: error: invalid operand
126 #CHECK: ahy     %r0, 524288
127
128         ahy     %r0, -524289
129         ahy     %r0, 524288
130
131 #CHECK: error: {{(instruction requires: high-word)?}}
132 #CHECK: aih     %r0, 0
133
134         aih     %r0, 0
135
136 #CHECK: error: invalid operand
137 #CHECK: al      %r0, -1
138 #CHECK: error: invalid operand
139 #CHECK: al      %r0, 4096
140
141         al      %r0, -1
142         al      %r0, 4096
143
144 #CHECK: error: invalid operand
145 #CHECK: alc     %r0, -524289
146 #CHECK: error: invalid operand
147 #CHECK: alc     %r0, 524288
148
149         alc     %r0, -524289
150         alc     %r0, 524288
151
152 #CHECK: error: invalid operand
153 #CHECK: alcg    %r0, -524289
154 #CHECK: error: invalid operand
155 #CHECK: alcg    %r0, 524288
156
157         alcg    %r0, -524289
158         alcg    %r0, 524288
159
160 #CHECK: error: invalid operand
161 #CHECK: alfi    %r0, -1
162 #CHECK: error: invalid operand
163 #CHECK: alfi    %r0, (1 << 32)
164
165         alfi    %r0, -1
166         alfi    %r0, (1 << 32)
167
168 #CHECK: error: {{(instruction requires: distinct-ops)?}}
169 #CHECK: alghsik %r1, %r2, 3
170
171         alghsik %r1, %r2, 3
172
173 #CHECK: error: {{(instruction requires: distinct-ops)?}}
174 #CHECK: alhsik  %r1, %r2, 3
175
176         alhsik  %r1, %r2, 3
177
178 #CHECK: error: invalid operand
179 #CHECK: alg     %r0, -524289
180 #CHECK: error: invalid operand
181 #CHECK: alg     %r0, 524288
182
183         alg     %r0, -524289
184         alg     %r0, 524288
185
186 #CHECK: error: invalid operand
187 #CHECK: algf    %r0, -524289
188 #CHECK: error: invalid operand
189 #CHECK: algf    %r0, 524288
190
191         algf    %r0, -524289
192         algf    %r0, 524288
193
194 #CHECK: error: invalid operand
195 #CHECK: algfi   %r0, -1
196 #CHECK: error: invalid operand
197 #CHECK: algfi   %r0, (1 << 32)
198
199         algfi   %r0, -1
200         algfi   %r0, (1 << 32)
201
202 #CHECK: error: {{(instruction requires: distinct-ops)?}}
203 #CHECK: algrk   %r2,%r3,%r4
204
205         algrk   %r2,%r3,%r4
206
207 #CHECK: error: {{(instruction requires: distinct-ops)?}}
208 #CHECK: alrk    %r2,%r3,%r4
209
210         alrk    %r2,%r3,%r4
211
212 #CHECK: error: invalid operand
213 #CHECK: aly     %r0, -524289
214 #CHECK: error: invalid operand
215 #CHECK: aly     %r0, 524288
216
217         aly     %r0, -524289
218         aly     %r0, 524288
219
220 #CHECK: error: {{(instruction requires: distinct-ops)?}}
221 #CHECK: ark     %r2,%r3,%r4
222
223         ark     %r2,%r3,%r4
224
225 #CHECK: error: invalid operand
226 #CHECK: asi     -524289, 0
227 #CHECK: error: invalid operand
228 #CHECK: asi     524288, 0
229 #CHECK: error: invalid use of indexed addressing
230 #CHECK: asi     0(%r1,%r2), 0
231 #CHECK: error: invalid operand
232 #CHECK: asi     0, -129
233 #CHECK: error: invalid operand
234 #CHECK: asi     0, 128
235
236         asi     -524289, 0
237         asi     524288, 0
238         asi     0(%r1,%r2), 0
239         asi     0, -129
240         asi     0, 128
241
242 #CHECK: error: invalid register pair
243 #CHECK: axbr    %f0, %f2
244 #CHECK: error: invalid register pair
245 #CHECK: axbr    %f2, %f0
246
247         axbr    %f0, %f2
248         axbr    %f2, %f0
249
250
251 #CHECK: error: invalid operand
252 #CHECK: ay      %r0, -524289
253 #CHECK: error: invalid operand
254 #CHECK: ay      %r0, 524288
255
256         ay      %r0, -524289
257         ay      %r0, 524288
258
259 #CHECK: error: invalid operand
260 #CHECK: bcr     -1, %r1
261 #CHECK: error: invalid operand
262 #CHECK: bcr     16, %r1
263
264         bcr     -1, %r1
265         bcr     16, %r1
266
267 #CHECK: error: offset out of range
268 #CHECK: bras    %r0, -0x100002
269 #CHECK: error: offset out of range
270 #CHECK: bras    %r0, -1
271 #CHECK: error: offset out of range
272 #CHECK: bras    %r0, 1
273 #CHECK: error: offset out of range
274 #CHECK: bras    %r0, 0x10000
275
276         bras    %r0, -0x100002
277         bras    %r0, -1
278         bras    %r0, 1
279         bras    %r0, 0x10000
280
281 #CHECK: error: offset out of range
282 #CHECK: brasl   %r0, -0x1000000002
283 #CHECK: error: offset out of range
284 #CHECK: brasl   %r0, -1
285 #CHECK: error: offset out of range
286 #CHECK: brasl   %r0, 1
287 #CHECK: error: offset out of range
288 #CHECK: brasl   %r0, 0x100000000
289
290         brasl   %r0, -0x1000000002
291         brasl   %r0, -1
292         brasl   %r0, 1
293         brasl   %r0, 0x100000000
294
295 #CHECK: error: offset out of range
296 #CHECK: brc     0, -0x100002
297 #CHECK: error: offset out of range
298 #CHECK: brc     0, -1
299 #CHECK: error: offset out of range
300 #CHECK: brc     0, 1
301 #CHECK: error: offset out of range
302 #CHECK: brc     0, 0x10000
303
304         brc     0, -0x100002
305         brc     0, -1
306         brc     0, 1
307         brc     0, 0x10000
308
309 #CHECK: error: invalid operand
310 #CHECK: brc     foo, bar
311 #CHECK: error: invalid operand
312 #CHECK: brc     -1, bar
313 #CHECK: error: invalid operand
314 #CHECK: brc     16, bar
315
316         brc     foo, bar
317         brc     -1, bar
318         brc     16, bar
319
320 #CHECK: error: offset out of range
321 #CHECK: brcl    0, -0x1000000002
322 #CHECK: error: offset out of range
323 #CHECK: brcl    0, -1
324 #CHECK: error: offset out of range
325 #CHECK: brcl    0, 1
326 #CHECK: error: offset out of range
327 #CHECK: brcl    0, 0x100000000
328
329         brcl    0, -0x1000000002
330         brcl    0, -1
331         brcl    0, 1
332         brcl    0, 0x100000000
333
334 #CHECK: error: invalid operand
335 #CHECK: brcl    foo, bar
336 #CHECK: error: invalid operand
337 #CHECK: brcl    -1, bar
338 #CHECK: error: invalid operand
339 #CHECK: brcl    16, bar
340
341         brcl    foo, bar
342         brcl    -1, bar
343         brcl    16, bar
344
345 #CHECK: error: offset out of range
346 #CHECK: brct    %r0, -0x100002
347 #CHECK: error: offset out of range
348 #CHECK: brct    %r0, -1
349 #CHECK: error: offset out of range
350 #CHECK: brct    %r0, 1
351 #CHECK: error: offset out of range
352 #CHECK: brct    %r0, 0x10000
353
354         brct    %r0, -0x100002
355         brct    %r0, -1
356         brct    %r0, 1
357         brct    %r0, 0x10000
358
359 #CHECK: error: offset out of range
360 #CHECK: brctg   %r0, -0x100002
361 #CHECK: error: offset out of range
362 #CHECK: brctg   %r0, -1
363 #CHECK: error: offset out of range
364 #CHECK: brctg   %r0, 1
365 #CHECK: error: offset out of range
366 #CHECK: brctg   %r0, 0x10000
367
368         brctg   %r0, -0x100002
369         brctg   %r0, -1
370         brctg   %r0, 1
371         brctg   %r0, 0x10000
372
373 #CHECK: error: invalid operand
374 #CHECK: c       %r0, -1
375 #CHECK: error: invalid operand
376 #CHECK: c       %r0, 4096
377
378         c       %r0, -1
379         c       %r0, 4096
380
381 #CHECK: error: invalid operand
382 #CHECK: cdb     %f0, -1
383 #CHECK: error: invalid operand
384 #CHECK: cdb     %f0, 4096
385
386         cdb     %f0, -1
387         cdb     %f0, 4096
388
389 #CHECK: error: {{(instruction requires: fp-extension)?}}
390 #CHECK: cdlfbr  %f0, 0, %r0, 0
391
392         cdlfbr  %f0, 0, %r0, 0
393
394 #CHECK: error: {{(instruction requires: fp-extension)?}}
395 #CHECK: cdlgbr  %f0, 0, %r0, 0
396
397         cdlgbr  %f0, 0, %r0, 0
398
399 #CHECK: error: invalid operand
400 #CHECK: ceb     %f0, -1
401 #CHECK: error: invalid operand
402 #CHECK: ceb     %f0, 4096
403
404         ceb     %f0, -1
405         ceb     %f0, 4096
406
407 #CHECK: error: {{(instruction requires: fp-extension)?}}
408 #CHECK: celfbr  %f0, 0, %r0, 0
409
410         celfbr  %f0, 0, %r0, 0
411
412 #CHECK: error: {{(instruction requires: fp-extension)?}}
413 #CHECK: celgbr  %f0, 0, %r0, 0
414
415         celgbr  %f0, 0, %r0, 0
416
417 #CHECK: error: invalid operand
418 #CHECK: cfdbr   %r0, -1, %f0
419 #CHECK: error: invalid operand
420 #CHECK: cfdbr   %r0, 16, %f0
421
422         cfdbr   %r0, -1, %f0
423         cfdbr   %r0, 16, %f0
424
425 #CHECK: error: invalid operand
426 #CHECK: cfebr   %r0, -1, %f0
427 #CHECK: error: invalid operand
428 #CHECK: cfebr   %r0, 16, %f0
429
430         cfebr   %r0, -1, %f0
431         cfebr   %r0, 16, %f0
432
433 #CHECK: error: invalid operand
434 #CHECK: cfi     %r0, (-1 << 31) - 1
435 #CHECK: error: invalid operand
436 #CHECK: cfi     %r0, (1 << 31)
437
438         cfi     %r0, (-1 << 31) - 1
439         cfi     %r0, (1 << 31)
440
441 #CHECK: error: invalid operand
442 #CHECK: cfxbr   %r0, -1, %f0
443 #CHECK: error: invalid operand
444 #CHECK: cfxbr   %r0, 16, %f0
445 #CHECK: error: invalid register pair
446 #CHECK: cfxbr   %r0, 0, %f2
447
448         cfxbr   %r0, -1, %f0
449         cfxbr   %r0, 16, %f0
450         cfxbr   %r0, 0, %f2
451
452
453 #CHECK: error: invalid operand
454 #CHECK: cg      %r0, -524289
455 #CHECK: error: invalid operand
456 #CHECK: cg      %r0, 524288
457
458         cg      %r0, -524289
459         cg      %r0, 524288
460
461 #CHECK: error: invalid operand
462 #CHECK: cgdbr   %r0, -1, %f0
463 #CHECK: error: invalid operand
464 #CHECK: cgdbr   %r0, 16, %f0
465
466         cgdbr   %r0, -1, %f0
467         cgdbr   %r0, 16, %f0
468
469 #CHECK: error: invalid operand
470 #CHECK: cgebr   %r0, -1, %f0
471 #CHECK: error: invalid operand
472 #CHECK: cgebr   %r0, 16, %f0
473
474         cgebr   %r0, -1, %f0
475         cgebr   %r0, 16, %f0
476
477 #CHECK: error: invalid operand
478 #CHECK: cgf     %r0, -524289
479 #CHECK: error: invalid operand
480 #CHECK: cgf     %r0, 524288
481
482         cgf     %r0, -524289
483         cgf     %r0, 524288
484
485 #CHECK: error: invalid operand
486 #CHECK: cgfi    %r0, (-1 << 31) - 1
487 #CHECK: error: invalid operand
488 #CHECK: cgfi    %r0, (1 << 31)
489
490         cgfi    %r0, (-1 << 31) - 1
491         cgfi    %r0, (1 << 31)
492
493 #CHECK: error: offset out of range
494 #CHECK: cgfrl   %r0, -0x1000000002
495 #CHECK: error: offset out of range
496 #CHECK: cgfrl   %r0, -1
497 #CHECK: error: offset out of range
498 #CHECK: cgfrl   %r0, 1
499 #CHECK: error: offset out of range
500 #CHECK: cgfrl   %r0, 0x100000000
501
502         cgfrl   %r0, -0x1000000002
503         cgfrl   %r0, -1
504         cgfrl   %r0, 1
505         cgfrl   %r0, 0x100000000
506
507 #CHECK: error: invalid operand
508 #CHECK: cgh     %r0, -524289
509 #CHECK: error: invalid operand
510 #CHECK: cgh     %r0, 524288
511
512         cgh     %r0, -524289
513         cgh     %r0, 524288
514
515 #CHECK: error: invalid operand
516 #CHECK: cghi    %r0, -32769
517 #CHECK: error: invalid operand
518 #CHECK: cghi    %r0, 32768
519 #CHECK: error: invalid operand
520 #CHECK: cghi    %r0, foo
521
522         cghi    %r0, -32769
523         cghi    %r0, 32768
524         cghi    %r0, foo
525
526 #CHECK: error: offset out of range
527 #CHECK: cghrl   %r0, -0x1000000002
528 #CHECK: error: offset out of range
529 #CHECK: cghrl   %r0, -1
530 #CHECK: error: offset out of range
531 #CHECK: cghrl   %r0, 1
532 #CHECK: error: offset out of range
533 #CHECK: cghrl   %r0, 0x100000000
534
535         cghrl   %r0, -0x1000000002
536         cghrl   %r0, -1
537         cghrl   %r0, 1
538         cghrl   %r0, 0x100000000
539
540 #CHECK: error: invalid operand
541 #CHECK: cghsi   -1, 0
542 #CHECK: error: invalid operand
543 #CHECK: cghsi   4096, 0
544 #CHECK: error: invalid use of indexed addressing
545 #CHECK: cghsi   0(%r1,%r2), 0
546 #CHECK: error: invalid operand
547 #CHECK: cghsi   0, -32769
548 #CHECK: error: invalid operand
549 #CHECK: cghsi   0, 32768
550
551         cghsi   -1, 0
552         cghsi   4096, 0
553         cghsi   0(%r1,%r2), 0
554         cghsi   0, -32769
555         cghsi   0, 32768
556
557 #CHECK: error: invalid operand
558 #CHECK: cgij    %r0, -129, 0, 0
559 #CHECK: error: invalid operand
560 #CHECK: cgij    %r0, 128, 0, 0
561
562         cgij    %r0, -129, 0, 0
563         cgij    %r0, 128, 0, 0
564
565 #CHECK: error: offset out of range
566 #CHECK: cgij    %r0, 0, 0, -0x100002
567 #CHECK: error: offset out of range
568 #CHECK: cgij    %r0, 0, 0, -1
569 #CHECK: error: offset out of range
570 #CHECK: cgij    %r0, 0, 0, 1
571 #CHECK: error: offset out of range
572 #CHECK: cgij    %r0, 0, 0, 0x10000
573
574         cgij    %r0, 0, 0, -0x100002
575         cgij    %r0, 0, 0, -1
576         cgij    %r0, 0, 0, 1
577         cgij    %r0, 0, 0, 0x10000
578
579 #CHECK: error: invalid instruction
580 #CHECK: cgijo   %r0, 0, 0, 0
581 #CHECK: error: invalid instruction
582 #CHECK: cgijno  %r0, 0, 0, 0
583
584         cgijo   %r0, 0, 0, 0
585         cgijno  %r0, 0, 0, 0
586
587 #CHECK: error: offset out of range
588 #CHECK: cgrj    %r0, %r0, 0, -0x100002
589 #CHECK: error: offset out of range
590 #CHECK: cgrj    %r0, %r0, 0, -1
591 #CHECK: error: offset out of range
592 #CHECK: cgrj    %r0, %r0, 0, 1
593 #CHECK: error: offset out of range
594 #CHECK: cgrj    %r0, %r0, 0, 0x10000
595
596         cgrj    %r0, %r0, 0, -0x100002
597         cgrj    %r0, %r0, 0, -1
598         cgrj    %r0, %r0, 0, 1
599         cgrj    %r0, %r0, 0, 0x10000
600
601 #CHECK: error: invalid instruction
602 #CHECK: cgrjo   %r0, %r0, 0, 0
603 #CHECK: error: invalid instruction
604 #CHECK: cgrjno  %r0, %r0, 0, 0
605
606         cgrjo   %r0, %r0, 0, 0
607         cgrjno  %r0, %r0, 0, 0
608
609 #CHECK: error: offset out of range
610 #CHECK: cgrl    %r0, -0x1000000002
611 #CHECK: error: offset out of range
612 #CHECK: cgrl    %r0, -1
613 #CHECK: error: offset out of range
614 #CHECK: cgrl    %r0, 1
615 #CHECK: error: offset out of range
616 #CHECK: cgrl    %r0, 0x100000000
617
618         cgrl    %r0, -0x1000000002
619         cgrl    %r0, -1
620         cgrl    %r0, 1
621         cgrl    %r0, 0x100000000
622
623 #CHECK: error: invalid operand
624 #CHECK: cgxbr   %r0, -1, %f0
625 #CHECK: error: invalid operand
626 #CHECK: cgxbr   %r0, 16, %f0
627 #CHECK: error: invalid register pair
628 #CHECK: cgxbr   %r0, 0, %f2
629
630         cgxbr   %r0, -1, %f0
631         cgxbr   %r0, 16, %f0
632         cgxbr   %r0, 0, %f2
633
634
635 #CHECK: error: invalid operand
636 #CHECK: ch      %r0, -1
637 #CHECK: error: invalid operand
638 #CHECK: ch      %r0, 4096
639
640         ch      %r0, -1
641         ch      %r0, 4096
642
643 #CHECK: error: {{(instruction requires: high-word)?}}
644 #CHECK: chf     %r0, 0
645
646         chf     %r0, 0
647
648 #CHECK: error: invalid operand
649 #CHECK: chhsi   -1, 0
650 #CHECK: error: invalid operand
651 #CHECK: chhsi   4096, 0
652 #CHECK: error: invalid use of indexed addressing
653 #CHECK: chhsi   0(%r1,%r2), 0
654 #CHECK: error: invalid operand
655 #CHECK: chhsi   0, -32769
656 #CHECK: error: invalid operand
657 #CHECK: chhsi   0, 32768
658
659         chhsi   -1, 0
660         chhsi   4096, 0
661         chhsi   0(%r1,%r2), 0
662         chhsi   0, -32769
663         chhsi   0, 32768
664
665 #CHECK: error: invalid operand
666 #CHECK: chi     %r0, -32769
667 #CHECK: error: invalid operand
668 #CHECK: chi     %r0, 32768
669 #CHECK: error: invalid operand
670 #CHECK: chi     %r0, foo
671
672         chi     %r0, -32769
673         chi     %r0, 32768
674         chi     %r0, foo
675
676 #CHECK: error: offset out of range
677 #CHECK: chrl    %r0, -0x1000000002
678 #CHECK: error: offset out of range
679 #CHECK: chrl    %r0, -1
680 #CHECK: error: offset out of range
681 #CHECK: chrl    %r0, 1
682 #CHECK: error: offset out of range
683 #CHECK: chrl    %r0, 0x100000000
684
685         chrl    %r0, -0x1000000002
686         chrl    %r0, -1
687         chrl    %r0, 1
688         chrl    %r0, 0x100000000
689
690 #CHECK: error: invalid operand
691 #CHECK: chsi    -1, 0
692 #CHECK: error: invalid operand
693 #CHECK: chsi    4096, 0
694 #CHECK: error: invalid use of indexed addressing
695 #CHECK: chsi    0(%r1,%r2), 0
696 #CHECK: error: invalid operand
697 #CHECK: chsi    0, -32769
698 #CHECK: error: invalid operand
699 #CHECK: chsi    0, 32768
700
701         chsi    -1, 0
702         chsi    4096, 0
703         chsi    0(%r1,%r2), 0
704         chsi    0, -32769
705         chsi    0, 32768
706
707 #CHECK: error: invalid operand
708 #CHECK: chy     %r0, -524289
709 #CHECK: error: invalid operand
710 #CHECK: chy     %r0, 524288
711
712         chy     %r0, -524289
713         chy     %r0, 524288
714
715 #CHECK: error: {{(instruction requires: high-word)?}}
716 #CHECK: cih     %r0, 0
717
718         cih     %r0, 0
719
720 #CHECK: error: invalid operand
721 #CHECK: cij     %r0, -129, 0, 0
722 #CHECK: error: invalid operand
723 #CHECK: cij     %r0, 128, 0, 0
724
725         cij     %r0, -129, 0, 0
726         cij     %r0, 128, 0, 0
727
728 #CHECK: error: offset out of range
729 #CHECK: cij     %r0, 0, 0, -0x100002
730 #CHECK: error: offset out of range
731 #CHECK: cij     %r0, 0, 0, -1
732 #CHECK: error: offset out of range
733 #CHECK: cij     %r0, 0, 0, 1
734 #CHECK: error: offset out of range
735 #CHECK: cij     %r0, 0, 0, 0x10000
736
737         cij     %r0, 0, 0, -0x100002
738         cij     %r0, 0, 0, -1
739         cij     %r0, 0, 0, 1
740         cij     %r0, 0, 0, 0x10000
741
742 #CHECK: error: invalid instruction
743 #CHECK: cijo    %r0, 0, 0, 0
744 #CHECK: error: invalid instruction
745 #CHECK: cijno   %r0, 0, 0, 0
746
747         cijo    %r0, 0, 0, 0
748         cijno   %r0, 0, 0, 0
749
750 #CHECK: error: invalid operand
751 #CHECK: cl      %r0, -1
752 #CHECK: error: invalid operand
753 #CHECK: cl      %r0, 4096
754
755         cl      %r0, -1
756         cl      %r0, 4096
757
758 #CHECK: error: missing length in address
759 #CHECK: clc     0, 0
760 #CHECK: error: missing length in address
761 #CHECK: clc     0(%r1), 0(%r1)
762 #CHECK: error: invalid use of length addressing
763 #CHECK: clc     0(1,%r1), 0(2,%r1)
764 #CHECK: error: invalid operand
765 #CHECK: clc     0(0,%r1), 0(%r1)
766 #CHECK: error: invalid operand
767 #CHECK: clc     0(257,%r1), 0(%r1)
768 #CHECK: error: invalid operand
769 #CHECK: clc     -1(1,%r1), 0(%r1)
770 #CHECK: error: invalid operand
771 #CHECK: clc     4096(1,%r1), 0(%r1)
772 #CHECK: error: invalid operand
773 #CHECK: clc     0(1,%r1), -1(%r1)
774 #CHECK: error: invalid operand
775 #CHECK: clc     0(1,%r1), 4096(%r1)
776 #CHECK: error: %r0 used in an address
777 #CHECK: clc     0(1,%r0), 0(%r1)
778 #CHECK: error: %r0 used in an address
779 #CHECK: clc     0(1,%r1), 0(%r0)
780 #CHECK: error: invalid use of indexed addressing
781 #CHECK: clc     0(%r1,%r2), 0(%r1)
782 #CHECK: error: invalid use of indexed addressing
783 #CHECK: clc     0(1,%r2), 0(%r1,%r2)
784 #CHECK: error: unknown token in expression
785 #CHECK: clc     0(-), 0
786
787         clc     0, 0
788         clc     0(%r1), 0(%r1)
789         clc     0(1,%r1), 0(2,%r1)
790         clc     0(0,%r1), 0(%r1)
791         clc     0(257,%r1), 0(%r1)
792         clc     -1(1,%r1), 0(%r1)
793         clc     4096(1,%r1), 0(%r1)
794         clc     0(1,%r1), -1(%r1)
795         clc     0(1,%r1), 4096(%r1)
796         clc     0(1,%r0), 0(%r1)
797         clc     0(1,%r1), 0(%r0)
798         clc     0(%r1,%r2), 0(%r1)
799         clc     0(1,%r2), 0(%r1,%r2)
800         clc     0(-), 0
801
802 #CHECK: error: {{(instruction requires: high-word)?}}
803 #CHECK: clhf    %r0, 0
804
805         clhf    %r0, 0
806
807 #CHECK: error: {{(instruction requires: fp-extension)?}}
808 #CHECK: clfdbr  %r0, 0, %f0, 0
809
810         clfdbr  %r0, 0, %f0, 0
811
812 #CHECK: error: {{(instruction requires: fp-extension)?}}
813 #CHECK: clfebr  %r0, 0, %f0, 0
814
815         clfebr  %r0, 0, %f0, 0
816
817 #CHECK: error: invalid operand
818 #CHECK: clfhsi  -1, 0
819 #CHECK: error: invalid operand
820 #CHECK: clfhsi  4096, 0
821 #CHECK: error: invalid use of indexed addressing
822 #CHECK: clfhsi  0(%r1,%r2), 0
823 #CHECK: error: invalid operand
824 #CHECK: clfhsi  0, -1
825 #CHECK: error: invalid operand
826 #CHECK: clfhsi  0, 65536
827
828         clfhsi  -1, 0
829         clfhsi  4096, 0
830         clfhsi  0(%r1,%r2), 0
831         clfhsi  0, -1
832         clfhsi  0, 65536
833
834 #CHECK: error: invalid operand
835 #CHECK: clfi    %r0, -1
836 #CHECK: error: invalid operand
837 #CHECK: clfi    %r0, (1 << 32)
838
839         clfi    %r0, -1
840         clfi    %r0, (1 << 32)
841
842 #CHECK: error: {{(instruction requires: fp-extension)?}}
843 #CHECK: clfxbr  %r0, 0, %f0, 0
844
845         clfxbr  %r0, 0, %f0, 0
846
847 #CHECK: error: invalid operand
848 #CHECK: clg     %r0, -524289
849 #CHECK: error: invalid operand
850 #CHECK: clg     %r0, 524288
851
852         clg     %r0, -524289
853         clg     %r0, 524288
854
855 #CHECK: error: {{(instruction requires: fp-extension)?}}
856 #CHECK: clgdbr  %r0, 0, %f0, 0
857
858         clgdbr  %r0, 0, %f0, 0
859
860 #CHECK: error: {{(instruction requires: fp-extension)?}}
861 #CHECK: clgebr  %r0, 0, %f0, 0
862
863         clgebr  %r0, 0, %f0, 0
864
865 #CHECK: error: invalid operand
866 #CHECK: clgf    %r0, -524289
867 #CHECK: error: invalid operand
868 #CHECK: clgf    %r0, 524288
869
870         clgf    %r0, -524289
871         clgf    %r0, 524288
872
873 #CHECK: error: invalid operand
874 #CHECK: clgfi   %r0, -1
875 #CHECK: error: invalid operand
876 #CHECK: clgfi   %r0, (1 << 32)
877
878         clgfi   %r0, -1
879         clgfi   %r0, (1 << 32)
880
881 #CHECK: error: offset out of range
882 #CHECK: clgfrl  %r0, -0x1000000002
883 #CHECK: error: offset out of range
884 #CHECK: clgfrl  %r0, -1
885 #CHECK: error: offset out of range
886 #CHECK: clgfrl  %r0, 1
887 #CHECK: error: offset out of range
888 #CHECK: clgfrl  %r0, 0x100000000
889
890         clgfrl  %r0, -0x1000000002
891         clgfrl  %r0, -1
892         clgfrl  %r0, 1
893         clgfrl  %r0, 0x100000000
894
895 #CHECK: error: offset out of range
896 #CHECK: clghrl  %r0, -0x1000000002
897 #CHECK: error: offset out of range
898 #CHECK: clghrl  %r0, -1
899 #CHECK: error: offset out of range
900 #CHECK: clghrl  %r0, 1
901 #CHECK: error: offset out of range
902 #CHECK: clghrl  %r0, 0x100000000
903
904         clghrl  %r0, -0x1000000002
905         clghrl  %r0, -1
906         clghrl  %r0, 1
907         clghrl  %r0, 0x100000000
908
909 #CHECK: error: invalid operand
910 #CHECK: clghsi  -1, 0
911 #CHECK: error: invalid operand
912 #CHECK: clghsi  4096, 0
913 #CHECK: error: invalid use of indexed addressing
914 #CHECK: clghsi  0(%r1,%r2), 0
915 #CHECK: error: invalid operand
916 #CHECK: clghsi  0, -1
917 #CHECK: error: invalid operand
918 #CHECK: clghsi  0, 65536
919
920         clghsi  -1, 0
921         clghsi  4096, 0
922         clghsi  0(%r1,%r2), 0
923         clghsi  0, -1
924         clghsi  0, 65536
925
926 #CHECK: error: invalid operand
927 #CHECK: clgij   %r0, -1, 0, 0
928 #CHECK: error: invalid operand
929 #CHECK: clgij   %r0, 256, 0, 0
930
931         clgij   %r0, -1, 0, 0
932         clgij   %r0, 256, 0, 0
933
934 #CHECK: error: offset out of range
935 #CHECK: clgij   %r0, 0, 0, -0x100002
936 #CHECK: error: offset out of range
937 #CHECK: clgij   %r0, 0, 0, -1
938 #CHECK: error: offset out of range
939 #CHECK: clgij   %r0, 0, 0, 1
940 #CHECK: error: offset out of range
941 #CHECK: clgij   %r0, 0, 0, 0x10000
942
943         clgij   %r0, 0, 0, -0x100002
944         clgij   %r0, 0, 0, -1
945         clgij   %r0, 0, 0, 1
946         clgij   %r0, 0, 0, 0x10000
947
948 #CHECK: error: invalid instruction
949 #CHECK: clgijo  %r0, 0, 0, 0
950 #CHECK: error: invalid instruction
951 #CHECK: clgijno %r0, 0, 0, 0
952
953         clgijo  %r0, 0, 0, 0
954         clgijno %r0, 0, 0, 0
955
956 #CHECK: error: offset out of range
957 #CHECK: clgrj   %r0, %r0, 0, -0x100002
958 #CHECK: error: offset out of range
959 #CHECK: clgrj   %r0, %r0, 0, -1
960 #CHECK: error: offset out of range
961 #CHECK: clgrj   %r0, %r0, 0, 1
962 #CHECK: error: offset out of range
963 #CHECK: clgrj   %r0, %r0, 0, 0x10000
964
965         clgrj   %r0, %r0, 0, -0x100002
966         clgrj   %r0, %r0, 0, -1
967         clgrj   %r0, %r0, 0, 1
968         clgrj   %r0, %r0, 0, 0x10000
969
970 #CHECK: error: offset out of range
971 #CHECK: clgrl   %r0, -0x1000000002
972 #CHECK: error: offset out of range
973 #CHECK: clgrl   %r0, -1
974 #CHECK: error: offset out of range
975 #CHECK: clgrl   %r0, 1
976 #CHECK: error: offset out of range
977 #CHECK: clgrl   %r0, 0x100000000
978
979         clgrl   %r0, -0x1000000002
980         clgrl   %r0, -1
981         clgrl   %r0, 1
982         clgrl   %r0, 0x100000000
983
984 #CHECK: error: {{(instruction requires: fp-extension)?}}
985 #CHECK: clgxbr  %r0, 0, %f0, 0
986
987         clgxbr  %r0, 0, %f0, 0
988
989 #CHECK: error: invalid operand
990 #CHECK: clhhsi  -1, 0
991 #CHECK: error: invalid operand
992 #CHECK: clhhsi  4096, 0
993 #CHECK: error: invalid use of indexed addressing
994 #CHECK: clhhsi  0(%r1,%r2), 0
995 #CHECK: error: invalid operand
996 #CHECK: clhhsi  0, -1
997 #CHECK: error: invalid operand
998 #CHECK: clhhsi  0, 65536
999
1000         clhhsi  -1, 0
1001         clhhsi  4096, 0
1002         clhhsi  0(%r1,%r2), 0
1003         clhhsi  0, -1
1004         clhhsi  0, 65536
1005
1006 #CHECK: error: offset out of range
1007 #CHECK: clhrl   %r0, -0x1000000002
1008 #CHECK: error: offset out of range
1009 #CHECK: clhrl   %r0, -1
1010 #CHECK: error: offset out of range
1011 #CHECK: clhrl   %r0, 1
1012 #CHECK: error: offset out of range
1013 #CHECK: clhrl   %r0, 0x100000000
1014
1015         clhrl   %r0, -0x1000000002
1016         clhrl   %r0, -1
1017         clhrl   %r0, 1
1018         clhrl   %r0, 0x100000000
1019
1020 #CHECK: error: invalid operand
1021 #CHECK: cli     -1, 0
1022 #CHECK: error: invalid operand
1023 #CHECK: cli     4096, 0
1024 #CHECK: error: invalid use of indexed addressing
1025 #CHECK: cli     0(%r1,%r2), 0
1026 #CHECK: error: invalid operand
1027 #CHECK: cli     0, -1
1028 #CHECK: error: invalid operand
1029 #CHECK: cli     0, 256
1030
1031         cli     -1, 0
1032         cli     4096, 0
1033         cli     0(%r1,%r2), 0
1034         cli     0, -1
1035         cli     0, 256
1036
1037 #CHECK: error: {{(instruction requires: high-word)?}}
1038 #CHECK: clih    %r0, 0
1039
1040         clih    %r0, 0
1041
1042 #CHECK: error: invalid operand
1043 #CHECK: clij    %r0, -1, 0, 0
1044 #CHECK: error: invalid operand
1045 #CHECK: clij    %r0, 256, 0, 0
1046
1047         clij    %r0, -1, 0, 0
1048         clij    %r0, 256, 0, 0
1049
1050 #CHECK: error: offset out of range
1051 #CHECK: clij    %r0, 0, 0, -0x100002
1052 #CHECK: error: offset out of range
1053 #CHECK: clij    %r0, 0, 0, -1
1054 #CHECK: error: offset out of range
1055 #CHECK: clij    %r0, 0, 0, 1
1056 #CHECK: error: offset out of range
1057 #CHECK: clij    %r0, 0, 0, 0x10000
1058
1059         clij    %r0, 0, 0, -0x100002
1060         clij    %r0, 0, 0, -1
1061         clij    %r0, 0, 0, 1
1062         clij    %r0, 0, 0, 0x10000
1063
1064 #CHECK: error: invalid instruction
1065 #CHECK: clijo   %r0, 0, 0, 0
1066 #CHECK: error: invalid instruction
1067 #CHECK: clijno  %r0, 0, 0, 0
1068
1069         clijo   %r0, 0, 0, 0
1070         clijno  %r0, 0, 0, 0
1071
1072 #CHECK: error: invalid operand
1073 #CHECK: cliy    -524289, 0
1074 #CHECK: error: invalid operand
1075 #CHECK: cliy    524288, 0
1076 #CHECK: error: invalid use of indexed addressing
1077 #CHECK: cliy    0(%r1,%r2), 0
1078 #CHECK: error: invalid operand
1079 #CHECK: cliy    0, -1
1080 #CHECK: error: invalid operand
1081 #CHECK: cliy    0, 256
1082
1083         cliy    -524289, 0
1084         cliy    524288, 0
1085         cliy    0(%r1,%r2), 0
1086         cliy    0, -1
1087         cliy    0, 256
1088
1089 #CHECK: error: offset out of range
1090 #CHECK: clrj    %r0, %r0, 0, -0x100002
1091 #CHECK: error: offset out of range
1092 #CHECK: clrj    %r0, %r0, 0, -1
1093 #CHECK: error: offset out of range
1094 #CHECK: clrj    %r0, %r0, 0, 1
1095 #CHECK: error: offset out of range
1096 #CHECK: clrj    %r0, %r0, 0, 0x10000
1097
1098         clrj    %r0, %r0, 0, -0x100002
1099         clrj    %r0, %r0, 0, -1
1100         clrj    %r0, %r0, 0, 1
1101         clrj    %r0, %r0, 0, 0x10000
1102
1103 #CHECK: error: invalid instruction
1104 #CHECK: clrjo   %r0, %r0, 0, 0
1105 #CHECK: error: invalid instruction
1106 #CHECK: clrjno  %r0, %r0, 0, 0
1107
1108         clrjo   %r0, %r0, 0, 0
1109         clrjno  %r0, %r0, 0, 0
1110
1111 #CHECK: error: offset out of range
1112 #CHECK: clrl    %r0, -0x1000000002
1113 #CHECK: error: offset out of range
1114 #CHECK: clrl    %r0, -1
1115 #CHECK: error: offset out of range
1116 #CHECK: clrl    %r0, 1
1117 #CHECK: error: offset out of range
1118 #CHECK: clrl    %r0, 0x100000000
1119
1120         clrl    %r0, -0x1000000002
1121         clrl    %r0, -1
1122         clrl    %r0, 1
1123         clrl    %r0, 0x100000000
1124
1125 #CHECK: error: invalid operand
1126 #CHECK: cly     %r0, -524289
1127 #CHECK: error: invalid operand
1128 #CHECK: cly     %r0, 524288
1129
1130         cly     %r0, -524289
1131         cly     %r0, 524288
1132
1133 #CHECK: error: offset out of range
1134 #CHECK: crj     %r0, %r0, 0, -0x100002
1135 #CHECK: error: offset out of range
1136 #CHECK: crj     %r0, %r0, 0, -1
1137 #CHECK: error: offset out of range
1138 #CHECK: crj     %r0, %r0, 0, 1
1139 #CHECK: error: offset out of range
1140 #CHECK: crj     %r0, %r0, 0, 0x10000
1141
1142         crj     %r0, %r0, 0, -0x100002
1143         crj     %r0, %r0, 0, -1
1144         crj     %r0, %r0, 0, 1
1145         crj     %r0, %r0, 0, 0x10000
1146
1147 #CHECK: error: invalid instruction
1148 #CHECK: crjo    %r0, %r0, 0, 0
1149 #CHECK: error: invalid instruction
1150 #CHECK: crjno   %r0, %r0, 0, 0
1151
1152         crjo    %r0, %r0, 0, 0
1153         crjno   %r0, %r0, 0, 0
1154
1155 #CHECK: error: offset out of range
1156 #CHECK: crl     %r0, -0x1000000002
1157 #CHECK: error: offset out of range
1158 #CHECK: crl     %r0, -1
1159 #CHECK: error: offset out of range
1160 #CHECK: crl     %r0, 1
1161 #CHECK: error: offset out of range
1162 #CHECK: crl     %r0, 0x100000000
1163
1164         crl     %r0, -0x1000000002
1165         crl     %r0, -1
1166         crl     %r0, 1
1167         crl     %r0, 0x100000000
1168
1169 #CHECK: error: invalid operand
1170 #CHECK: cs      %r0, %r0, -1
1171 #CHECK: error: invalid operand
1172 #CHECK: cs      %r0, %r0, 4096
1173 #CHECK: error: invalid use of indexed addressing
1174 #CHECK: cs      %r0, %r0, 0(%r1,%r2)
1175
1176         cs      %r0, %r0, -1
1177         cs      %r0, %r0, 4096
1178         cs      %r0, %r0, 0(%r1,%r2)
1179
1180 #CHECK: error: invalid operand
1181 #CHECK: csg     %r0, %r0, -524289
1182 #CHECK: error: invalid operand
1183 #CHECK: csg     %r0, %r0, 524288
1184 #CHECK: error: invalid use of indexed addressing
1185 #CHECK: csg     %r0, %r0, 0(%r1,%r2)
1186
1187         csg     %r0, %r0, -524289
1188         csg     %r0, %r0, 524288
1189         csg     %r0, %r0, 0(%r1,%r2)
1190
1191 #CHECK: error: invalid operand
1192 #CHECK: csy     %r0, %r0, -524289
1193 #CHECK: error: invalid operand
1194 #CHECK: csy     %r0, %r0, 524288
1195 #CHECK: error: invalid use of indexed addressing
1196 #CHECK: csy     %r0, %r0, 0(%r1,%r2)
1197
1198         csy     %r0, %r0, -524289
1199         csy     %r0, %r0, 524288
1200         csy     %r0, %r0, 0(%r1,%r2)
1201
1202 #CHECK: error: invalid register pair
1203 #CHECK: cxbr    %f0, %f2
1204 #CHECK: error: invalid register pair
1205 #CHECK: cxbr    %f2, %f0
1206
1207         cxbr    %f0, %f2
1208         cxbr    %f2, %f0
1209
1210 #CHECK: error: invalid register pair
1211 #CHECK: cxfbr   %f2, %r0
1212
1213         cxfbr   %f2, %r0
1214
1215 #CHECK: error: invalid register pair
1216 #CHECK: cxgbr   %f2, %r0
1217
1218         cxgbr   %f2, %r0
1219
1220 #CHECK: error: {{(instruction requires: fp-extension)?}}
1221 #CHECK: cxlfbr  %f0, 0, %r0, 0
1222
1223         cxlfbr  %f0, 0, %r0, 0
1224
1225 #CHECK: error: {{(instruction requires: fp-extension)?}}
1226 #CHECK: cxlgbr  %f0, 0, %r0, 0
1227
1228         cxlgbr  %f0, 0, %r0, 0
1229
1230 #CHECK: error: invalid operand
1231 #CHECK: cy      %r0, -524289
1232 #CHECK: error: invalid operand
1233 #CHECK: cy      %r0, 524288
1234
1235         cy      %r0, -524289
1236         cy      %r0, 524288
1237
1238 #CHECK: error: invalid operand
1239 #CHECK: ddb     %f0, -1
1240 #CHECK: error: invalid operand
1241 #CHECK: ddb     %f0, 4096
1242
1243         ddb     %f0, -1
1244         ddb     %f0, 4096
1245
1246 #CHECK: error: invalid operand
1247 #CHECK: deb     %f0, -1
1248 #CHECK: error: invalid operand
1249 #CHECK: deb     %f0, 4096
1250
1251         deb     %f0, -1
1252         deb     %f0, 4096
1253
1254 #CHECK: error: invalid operand
1255 #CHECK: dl      %r0, -524289
1256 #CHECK: error: invalid operand
1257 #CHECK: dl      %r0, 524288
1258 #CHECK: error: invalid register pair
1259 #CHECK: dl      %r1, 0
1260
1261         dl      %r0, -524289
1262         dl      %r0, 524288
1263         dl      %r1, 0
1264
1265 #CHECK: error: invalid operand
1266 #CHECK: dlg     %r0, -524289
1267 #CHECK: error: invalid operand
1268 #CHECK: dlg     %r0, 524288
1269 #CHECK: error: invalid register pair
1270 #CHECK: dlg     %r1, 0
1271
1272         dlg     %r0, -524289
1273         dlg     %r0, 524288
1274         dlg     %r1, 0
1275
1276 #CHECK: error: invalid register pair
1277 #CHECK: dlgr    %r1, %r0
1278
1279         dlgr    %r1, %r0
1280
1281 #CHECK: error: invalid register pair
1282 #CHECK: dlr     %r1, %r0
1283
1284         dlr     %r1, %r0
1285
1286 #CHECK: error: invalid operand
1287 #CHECK: dsg     %r0, -524289
1288 #CHECK: error: invalid operand
1289 #CHECK: dsg     %r0, 524288
1290 #CHECK: error: invalid register pair
1291 #CHECK: dsg     %r1, 0
1292
1293         dsg     %r0, -524289
1294         dsg     %r0, 524288
1295         dsg     %r1, 0
1296
1297 #CHECK: error: invalid operand
1298 #CHECK: dsgf    %r0, -524289
1299 #CHECK: error: invalid operand
1300 #CHECK: dsgf    %r0, 524288
1301 #CHECK: error: invalid register pair
1302 #CHECK: dsgf    %r1, 0
1303
1304         dsgf    %r0, -524289
1305         dsgf    %r0, 524288
1306         dsgf    %r1, 0
1307
1308 #CHECK: error: invalid register pair
1309 #CHECK: dsgfr   %r1, %r0
1310
1311         dsgfr   %r1, %r0
1312
1313 #CHECK: error: invalid register pair
1314 #CHECK: dsgr    %r1, %r0
1315
1316         dsgr    %r1, %r0
1317
1318 #CHECK: error: invalid register pair
1319 #CHECK: dxbr    %f0, %f2
1320 #CHECK: error: invalid register pair
1321 #CHECK: dxbr    %f2, %f0
1322
1323         dxbr    %f0, %f2
1324         dxbr    %f2, %f0
1325
1326 #CHECK: error: invalid operand
1327 #CHECK: fidbr   %f0, -1, %f0
1328 #CHECK: error: invalid operand
1329 #CHECK: fidbr   %f0, 16, %f0
1330
1331         fidbr   %f0, -1, %f0
1332         fidbr   %f0, 16, %f0
1333
1334 #CHECK: error: {{(instruction requires: fp-extension)?}}
1335 #CHECK: fidbra  %f0, 0, %f0, 0
1336
1337         fidbra  %f0, 0, %f0, 0
1338
1339 #CHECK: error: invalid operand
1340 #CHECK: fiebr   %f0, -1, %f0
1341 #CHECK: error: invalid operand
1342 #CHECK: fiebr   %f0, 16, %f0
1343
1344         fiebr   %f0, -1, %f0
1345         fiebr   %f0, 16, %f0
1346
1347 #CHECK: error: {{(instruction requires: fp-extension)?}}
1348 #CHECK: fiebra  %f0, 0, %f0, 0
1349
1350         fiebra  %f0, 0, %f0, 0
1351
1352 #CHECK: error: invalid operand
1353 #CHECK: fixbr   %f0, -1, %f0
1354 #CHECK: error: invalid operand
1355 #CHECK: fixbr   %f0, 16, %f0
1356 #CHECK: error: invalid register pair
1357 #CHECK: fixbr   %f0, 0, %f2
1358 #CHECK: error: invalid register pair
1359 #CHECK: fixbr   %f2, 0, %f0
1360
1361         fixbr   %f0, -1, %f0
1362         fixbr   %f0, 16, %f0
1363         fixbr   %f0, 0, %f2
1364         fixbr   %f2, 0, %f0
1365
1366 #CHECK: error: {{(instruction requires: fp-extension)?}}
1367 #CHECK: fixbra  %f0, 0, %f0, 0
1368
1369         fixbra  %f0, 0, %f0, 0
1370
1371 #CHECK: error: invalid register pair
1372 #CHECK: flogr   %r1, %r0
1373
1374         flogr   %r1, %r0
1375
1376 #CHECK: error: invalid operand
1377 #CHECK: ic      %r0, -1
1378 #CHECK: error: invalid operand
1379 #CHECK: ic      %r0, 4096
1380
1381         ic      %r0, -1
1382         ic      %r0, 4096
1383
1384 #CHECK: error: invalid operand
1385 #CHECK: icy     %r0, -524289
1386 #CHECK: error: invalid operand
1387 #CHECK: icy     %r0, 524288
1388
1389         icy     %r0, -524289
1390         icy     %r0, 524288
1391
1392 #CHECK: error: invalid operand
1393 #CHECK: iihf    %r0, -1
1394 #CHECK: error: invalid operand
1395 #CHECK: iihf    %r0, 1 << 32
1396
1397         iihf    %r0, -1
1398         iihf    %r0, 1 << 32
1399
1400 #CHECK: error: invalid operand
1401 #CHECK: iihh    %r0, -1
1402 #CHECK: error: invalid operand
1403 #CHECK: iihh    %r0, 0x10000
1404
1405         iihh    %r0, -1
1406         iihh    %r0, 0x10000
1407
1408 #CHECK: error: invalid operand
1409 #CHECK: iihl    %r0, -1
1410 #CHECK: error: invalid operand
1411 #CHECK: iihl    %r0, 0x10000
1412
1413         iihl    %r0, -1
1414         iihl    %r0, 0x10000
1415
1416 #CHECK: error: invalid operand
1417 #CHECK: iilf    %r0, -1
1418 #CHECK: error: invalid operand
1419 #CHECK: iilf    %r0, 1 << 32
1420
1421         iilf    %r0, -1
1422         iilf    %r0, 1 << 32
1423
1424 #CHECK: error: invalid operand
1425 #CHECK: iilh    %r0, -1
1426 #CHECK: error: invalid operand
1427 #CHECK: iilh    %r0, 0x10000
1428
1429         iilh    %r0, -1
1430         iilh    %r0, 0x10000
1431
1432 #CHECK: error: invalid operand
1433 #CHECK: iill    %r0, -1
1434 #CHECK: error: invalid operand
1435 #CHECK: iill    %r0, 0x10000
1436
1437         iill    %r0, -1
1438         iill    %r0, 0x10000
1439
1440 #CHECK: error: invalid operand
1441 #CHECK: l       %r0, -1
1442 #CHECK: error: invalid operand
1443 #CHECK: l       %r0, 4096
1444
1445         l       %r0, -1
1446         l       %r0, 4096
1447
1448 #CHECK: error: invalid operand
1449 #CHECK: la      %r0, -1
1450 #CHECK: error: invalid operand
1451 #CHECK: la      %r0, 4096
1452
1453         la      %r0, -1
1454         la      %r0, 4096
1455
1456 #CHECK: error: {{(instruction requires: interlocked-access1)?}}
1457 #CHECK: laa     %r1, %r2, 100(%r3)
1458         laa     %r1, %r2, 100(%r3)
1459
1460 #CHECK: error: {{(instruction requires: interlocked-access1)?}}
1461 #CHECK: laag    %r1, %r2, 100(%r3)
1462         laag    %r1, %r2, 100(%r3)
1463
1464 #CHECK: error: {{(instruction requires: interlocked-access1)?}}
1465 #CHECK: laal    %r1, %r2, 100(%r3)
1466         laal    %r1, %r2, 100(%r3)
1467
1468 #CHECK: error: {{(instruction requires: interlocked-access1)?}}
1469 #CHECK: laalg   %r1, %r2, 100(%r3)
1470         laalg   %r1, %r2, 100(%r3)
1471
1472 #CHECK: error: {{(instruction requires: interlocked-access1)?}}
1473 #CHECK: lan     %r1, %r2, 100(%r3)
1474         lan     %r1, %r2, 100(%r3)
1475
1476 #CHECK: error: {{(instruction requires: interlocked-access1)?}}
1477 #CHECK: lang    %r1, %r2, 100(%r3)
1478         lang    %r1, %r2, 100(%r3)
1479
1480 #CHECK: error: {{(instruction requires: interlocked-access1)?}}
1481 #CHECK: lao     %r1, %r2, 100(%r3)
1482         lao     %r1, %r2, 100(%r3)
1483
1484 #CHECK: error: {{(instruction requires: interlocked-access1)?}}
1485 #CHECK: laog    %r1, %r2, 100(%r3)
1486         laog    %r1, %r2, 100(%r3)
1487
1488 #CHECK: error: {{(instruction requires: interlocked-access1)?}}
1489 #CHECK: lax     %r1, %r2, 100(%r3)
1490         lax     %r1, %r2, 100(%r3)
1491
1492 #CHECK: error: {{(instruction requires: interlocked-access1)?}}
1493 #CHECK: laxg    %r1, %r2, 100(%r3)
1494         laxg    %r1, %r2, 100(%r3)
1495
1496 #CHECK: error: offset out of range
1497 #CHECK: larl    %r0, -0x1000000002
1498 #CHECK: error: offset out of range
1499 #CHECK: larl    %r0, -1
1500 #CHECK: error: offset out of range
1501 #CHECK: larl    %r0, 1
1502 #CHECK: error: offset out of range
1503 #CHECK: larl    %r0, 0x100000000
1504
1505         larl    %r0, -0x1000000002
1506         larl    %r0, -1
1507         larl    %r0, 1
1508         larl    %r0, 0x100000000
1509
1510 #CHECK: error: invalid operand
1511 #CHECK: lay     %r0, -524289
1512 #CHECK: error: invalid operand
1513 #CHECK: lay     %r0, 524288
1514
1515         lay     %r0, -524289
1516         lay     %r0, 524288
1517
1518 #CHECK: error: invalid operand
1519 #CHECK: lb      %r0, -524289
1520 #CHECK: error: invalid operand
1521 #CHECK: lb      %r0, 524288
1522
1523         lb      %r0, -524289
1524         lb      %r0, 524288
1525
1526 #CHECK: error: {{(instruction requires: high-word)?}}
1527 #CHECK: lbh     %r0, 0
1528
1529         lbh     %r0, 0
1530
1531 #CHECK: error: invalid register pair
1532 #CHECK: lcxbr   %f0, %f2
1533 #CHECK: error: invalid register pair
1534 #CHECK: lcxbr   %f2, %f0
1535
1536         lcxbr   %f0, %f2
1537         lcxbr   %f2, %f0
1538
1539 #CHECK: error: invalid operand
1540 #CHECK: ld      %f0, -1
1541 #CHECK: error: invalid operand
1542 #CHECK: ld      %f0, 4096
1543
1544         ld      %f0, -1
1545         ld      %f0, 4096
1546
1547 #CHECK: error: invalid operand
1548 #CHECK: ldeb    %f0, -1
1549 #CHECK: error: invalid operand
1550 #CHECK: ldeb    %f0, 4096
1551
1552         ldeb    %f0, -1
1553         ldeb    %f0, 4096
1554
1555 #CHECK: error: invalid register pair
1556 #CHECK: ldxbr   %f0, %f2
1557 #CHECK: error: invalid register pair
1558 #CHECK: ldxbr   %f2, %f0
1559
1560         ldxbr   %f0, %f2
1561         ldxbr   %f2, %f0
1562
1563 #CHECK: error: invalid operand
1564 #CHECK: ldy     %f0, -524289
1565 #CHECK: error: invalid operand
1566 #CHECK: ldy     %f0, 524288
1567
1568         ldy     %f0, -524289
1569         ldy     %f0, 524288
1570
1571 #CHECK: error: invalid operand
1572 #CHECK: le      %f0, -1
1573 #CHECK: error: invalid operand
1574 #CHECK: le      %f0, 4096
1575
1576         le      %f0, -1
1577         le      %f0, 4096
1578
1579 #CHECK: error: invalid register pair
1580 #CHECK: lexbr   %f0, %f2
1581 #CHECK: error: invalid register pair
1582 #CHECK: lexbr   %f2, %f0
1583
1584         lexbr   %f0, %f2
1585         lexbr   %f2, %f0
1586
1587 #CHECK: error: invalid operand
1588 #CHECK: ley     %f0, -524289
1589 #CHECK: error: invalid operand
1590 #CHECK: ley     %f0, 524288
1591
1592         ley     %f0, -524289
1593         ley     %f0, 524288
1594
1595 #CHECK: error: {{(instruction requires: high-word)?}}
1596 #CHECK: lfh     %r0, 0
1597
1598         lfh     %r0, 0
1599
1600 #CHECK: error: invalid operand
1601 #CHECK: lg      %r0, -524289
1602 #CHECK: error: invalid operand
1603 #CHECK: lg      %r0, 524288
1604
1605         lg      %r0, -524289
1606         lg      %r0, 524288
1607
1608 #CHECK: error: invalid operand
1609 #CHECK: lgb     %r0, -524289
1610 #CHECK: error: invalid operand
1611 #CHECK: lgb     %r0, 524288
1612
1613         lgb     %r0, -524289
1614         lgb     %r0, 524288
1615
1616 #CHECK: error: invalid operand
1617 #CHECK: lgf     %r0, -524289
1618 #CHECK: error: invalid operand
1619 #CHECK: lgf     %r0, 524288
1620
1621         lgf     %r0, -524289
1622         lgf     %r0, 524288
1623
1624 #CHECK: error: invalid operand
1625 #CHECK: lgfi    %r0, (-1 << 31) - 1
1626 #CHECK: error: invalid operand
1627 #CHECK: lgfi    %r0, (1 << 31)
1628
1629         lgfi    %r0, (-1 << 31) - 1
1630         lgfi    %r0, (1 << 31)
1631
1632 #CHECK: error: offset out of range
1633 #CHECK: lgfrl   %r0, -0x1000000002
1634 #CHECK: error: offset out of range
1635 #CHECK: lgfrl   %r0, -1
1636 #CHECK: error: offset out of range
1637 #CHECK: lgfrl   %r0, 1
1638 #CHECK: error: offset out of range
1639 #CHECK: lgfrl   %r0, 0x100000000
1640
1641         lgfrl   %r0, -0x1000000002
1642         lgfrl   %r0, -1
1643         lgfrl   %r0, 1
1644         lgfrl   %r0, 0x100000000
1645
1646 #CHECK: error: invalid operand
1647 #CHECK: lgh     %r0, -524289
1648 #CHECK: error: invalid operand
1649 #CHECK: lgh     %r0, 524288
1650
1651         lgh     %r0, -524289
1652         lgh     %r0, 524288
1653
1654 #CHECK: error: invalid operand
1655 #CHECK: lghi    %r0, -32769
1656 #CHECK: error: invalid operand
1657 #CHECK: lghi    %r0, 32768
1658 #CHECK: error: invalid operand
1659 #CHECK: lghi    %r0, foo
1660
1661         lghi    %r0, -32769
1662         lghi    %r0, 32768
1663         lghi    %r0, foo
1664
1665 #CHECK: error: offset out of range
1666 #CHECK: lghrl   %r0, -0x1000000002
1667 #CHECK: error: offset out of range
1668 #CHECK: lghrl   %r0, -1
1669 #CHECK: error: offset out of range
1670 #CHECK: lghrl   %r0, 1
1671 #CHECK: error: offset out of range
1672 #CHECK: lghrl   %r0, 0x100000000
1673
1674         lghrl   %r0, -0x1000000002
1675         lghrl   %r0, -1
1676         lghrl   %r0, 1
1677         lghrl   %r0, 0x100000000
1678
1679 #CHECK: error: offset out of range
1680 #CHECK: lgrl    %r0, -0x1000000002
1681 #CHECK: error: offset out of range
1682 #CHECK: lgrl    %r0, -1
1683 #CHECK: error: offset out of range
1684 #CHECK: lgrl    %r0, 1
1685 #CHECK: error: offset out of range
1686 #CHECK: lgrl    %r0, 0x100000000
1687
1688         lgrl    %r0, -0x1000000002
1689         lgrl    %r0, -1
1690         lgrl    %r0, 1
1691         lgrl    %r0, 0x100000000
1692
1693 #CHECK: error: invalid operand
1694 #CHECK: lh      %r0, -1
1695 #CHECK: error: invalid operand
1696 #CHECK: lh      %r0, 4096
1697
1698         lh      %r0, -1
1699         lh      %r0, 4096
1700
1701 #CHECK: error: {{(instruction requires: high-word)?}}
1702 #CHECK: lhh     %r0, 0
1703
1704         lhh     %r0, 0
1705
1706 #CHECK: error: invalid operand
1707 #CHECK: lhi     %r0, -32769
1708 #CHECK: error: invalid operand
1709 #CHECK: lhi     %r0, 32768
1710 #CHECK: error: invalid operand
1711 #CHECK: lhi     %r0, foo
1712
1713         lhi     %r0, -32769
1714         lhi     %r0, 32768
1715         lhi     %r0, foo
1716
1717 #CHECK: error: offset out of range
1718 #CHECK: lhrl    %r0, -0x1000000002
1719 #CHECK: error: offset out of range
1720 #CHECK: lhrl    %r0, -1
1721 #CHECK: error: offset out of range
1722 #CHECK: lhrl    %r0, 1
1723 #CHECK: error: offset out of range
1724 #CHECK: lhrl    %r0, 0x100000000
1725
1726         lhrl    %r0, -0x1000000002
1727         lhrl    %r0, -1
1728         lhrl    %r0, 1
1729         lhrl    %r0, 0x100000000
1730
1731 #CHECK: error: invalid operand
1732 #CHECK: lhy     %r0, -524289
1733 #CHECK: error: invalid operand
1734 #CHECK: lhy     %r0, 524288
1735
1736         lhy     %r0, -524289
1737         lhy     %r0, 524288
1738
1739 #CHECK: error: invalid operand
1740 #CHECK: llc     %r0, -524289
1741 #CHECK: error: invalid operand
1742 #CHECK: llc     %r0, 524288
1743
1744         llc     %r0, -524289
1745         llc     %r0, 524288
1746
1747 #CHECK: error: {{(instruction requires: high-word)?}}
1748 #CHECK: llch    %r0, 0
1749
1750         llch    %r0, 0
1751
1752 #CHECK: error: invalid operand
1753 #CHECK: llgc    %r0, -524289
1754 #CHECK: error: invalid operand
1755 #CHECK: llgc    %r0, 524288
1756
1757         llgc    %r0, -524289
1758         llgc    %r0, 524288
1759
1760 #CHECK: error: invalid operand
1761 #CHECK: llgf    %r0, -524289
1762 #CHECK: error: invalid operand
1763 #CHECK: llgf    %r0, 524288
1764
1765         llgf    %r0, -524289
1766         llgf    %r0, 524288
1767
1768 #CHECK: error: offset out of range
1769 #CHECK: llgfrl  %r0, -0x1000000002
1770 #CHECK: error: offset out of range
1771 #CHECK: llgfrl  %r0, -1
1772 #CHECK: error: offset out of range
1773 #CHECK: llgfrl  %r0, 1
1774 #CHECK: error: offset out of range
1775 #CHECK: llgfrl  %r0, 0x100000000
1776
1777         llgfrl  %r0, -0x1000000002
1778         llgfrl  %r0, -1
1779         llgfrl  %r0, 1
1780         llgfrl  %r0, 0x100000000
1781
1782 #CHECK: error: invalid operand
1783 #CHECK: llgh    %r0, -524289
1784 #CHECK: error: invalid operand
1785 #CHECK: llgh    %r0, 524288
1786
1787         llgh    %r0, -524289
1788         llgh    %r0, 524288
1789
1790 #CHECK: error: offset out of range
1791 #CHECK: llghrl  %r0, -0x1000000002
1792 #CHECK: error: offset out of range
1793 #CHECK: llghrl  %r0, -1
1794 #CHECK: error: offset out of range
1795 #CHECK: llghrl  %r0, 1
1796 #CHECK: error: offset out of range
1797 #CHECK: llghrl  %r0, 0x100000000
1798
1799         llghrl  %r0, -0x1000000002
1800         llghrl  %r0, -1
1801         llghrl  %r0, 1
1802         llghrl  %r0, 0x100000000
1803
1804 #CHECK: error: invalid operand
1805 #CHECK: llh     %r0, -524289
1806 #CHECK: error: invalid operand
1807 #CHECK: llh     %r0, 524288
1808
1809         llh     %r0, -524289
1810         llh     %r0, 524288
1811
1812 #CHECK: error: {{(instruction requires: high-word)?}}
1813 #CHECK: llhh    %r0, 0
1814
1815         llhh    %r0, 0
1816
1817 #CHECK: error: offset out of range
1818 #CHECK: llhrl   %r0, -0x1000000002
1819 #CHECK: error: offset out of range
1820 #CHECK: llhrl   %r0, -1
1821 #CHECK: error: offset out of range
1822 #CHECK: llhrl   %r0, 1
1823 #CHECK: error: offset out of range
1824 #CHECK: llhrl   %r0, 0x100000000
1825
1826         llhrl   %r0, -0x1000000002
1827         llhrl   %r0, -1
1828         llhrl   %r0, 1
1829         llhrl   %r0, 0x100000000
1830
1831 #CHECK: error: invalid operand
1832 #CHECK: llihf   %r0, -1
1833 #CHECK: error: invalid operand
1834 #CHECK: llihf   %r0, 1 << 32
1835
1836         llihf   %r0, -1
1837         llihf   %r0, 1 << 32
1838
1839 #CHECK: error: invalid operand
1840 #CHECK: llihh   %r0, -1
1841 #CHECK: error: invalid operand
1842 #CHECK: llihh   %r0, 0x10000
1843
1844         llihh   %r0, -1
1845         llihh   %r0, 0x10000
1846
1847 #CHECK: error: invalid operand
1848 #CHECK: llihl   %r0, -1
1849 #CHECK: error: invalid operand
1850 #CHECK: llihl   %r0, 0x10000
1851
1852         llihl   %r0, -1
1853         llihl   %r0, 0x10000
1854
1855 #CHECK: error: invalid operand
1856 #CHECK: llilf   %r0, -1
1857 #CHECK: error: invalid operand
1858 #CHECK: llilf   %r0, 1 << 32
1859
1860         llilf   %r0, -1
1861         llilf   %r0, 1 << 32
1862
1863 #CHECK: error: invalid operand
1864 #CHECK: llilh   %r0, -1
1865 #CHECK: error: invalid operand
1866 #CHECK: llilh   %r0, 0x10000
1867
1868         llilh   %r0, -1
1869         llilh   %r0, 0x10000
1870
1871 #CHECK: error: invalid operand
1872 #CHECK: llill   %r0, -1
1873 #CHECK: error: invalid operand
1874 #CHECK: llill   %r0, 0x10000
1875
1876         llill   %r0, -1
1877         llill   %r0, 0x10000
1878
1879 #CHECK: error: invalid operand
1880 #CHECK: lmg     %r0, %r0, -524289
1881 #CHECK: error: invalid operand
1882 #CHECK: lmg     %r0, %r0, 524288
1883 #CHECK: error: invalid use of indexed addressing
1884 #CHECK: lmg     %r0, %r0, 0(%r1,%r2)
1885
1886         lmg     %r0, %r0, -524289
1887         lmg     %r0, %r0, 524288
1888         lmg     %r0, %r0, 0(%r1,%r2)
1889
1890 #CHECK: error: invalid register pair
1891 #CHECK: lnxbr   %f0, %f2
1892 #CHECK: error: invalid register pair
1893 #CHECK: lnxbr   %f2, %f0
1894
1895         lnxbr   %f0, %f2
1896         lnxbr   %f2, %f0
1897
1898 #CHECK: error: invalid register pair
1899 #CHECK: lpxbr   %f0, %f2
1900 #CHECK: error: invalid register pair
1901 #CHECK: lpxbr   %f2, %f0
1902
1903         lpxbr   %f0, %f2
1904         lpxbr   %f2, %f0
1905
1906 #CHECK: error: offset out of range
1907 #CHECK: lrl     %r0, -0x1000000002
1908 #CHECK: error: offset out of range
1909 #CHECK: lrl     %r0, -1
1910 #CHECK: error: offset out of range
1911 #CHECK: lrl     %r0, 1
1912 #CHECK: error: offset out of range
1913 #CHECK: lrl     %r0, 0x100000000
1914
1915         lrl     %r0, -0x1000000002
1916         lrl     %r0, -1
1917         lrl     %r0, 1
1918         lrl     %r0, 0x100000000
1919
1920 #CHECK: error: invalid operand
1921 #CHECK: lrv     %r0, -524289
1922 #CHECK: error: invalid operand
1923 #CHECK: lrv     %r0, 524288
1924
1925         lrv     %r0, -524289
1926         lrv     %r0, 524288
1927
1928 #CHECK: error: invalid operand
1929 #CHECK: lrvg    %r0, -524289
1930 #CHECK: error: invalid operand
1931 #CHECK: lrvg    %r0, 524288
1932
1933         lrvg    %r0, -524289
1934         lrvg    %r0, 524288
1935
1936 #CHECK: error: invalid operand
1937 #CHECK: lt      %r0, -524289
1938 #CHECK: error: invalid operand
1939 #CHECK: lt      %r0, 524288
1940
1941         lt      %r0, -524289
1942         lt      %r0, 524288
1943
1944 #CHECK: error: invalid operand
1945 #CHECK: ltg     %r0, -524289
1946 #CHECK: error: invalid operand
1947 #CHECK: ltg     %r0, 524288
1948
1949         ltg     %r0, -524289
1950         ltg     %r0, 524288
1951
1952 #CHECK: error: invalid operand
1953 #CHECK: ltgf    %r0, -524289
1954 #CHECK: error: invalid operand
1955 #CHECK: ltgf    %r0, 524288
1956
1957         ltgf    %r0, -524289
1958         ltgf    %r0, 524288
1959
1960 #CHECK: error: invalid register pair
1961 #CHECK: ltxbr   %f0, %f14
1962 #CHECK: error: invalid register pair
1963 #CHECK: ltxbr   %f14, %f0
1964
1965         ltxbr   %f0, %f14
1966         ltxbr   %f14, %f0
1967
1968 #CHECK: error: invalid register pair
1969 #CHECK: lxr     %f0, %f2
1970 #CHECK: error: invalid register pair
1971 #CHECK: lxr     %f2, %f0
1972
1973         lxr     %f0, %f2
1974         lxr     %f2, %f0
1975
1976 #CHECK: error: invalid operand
1977 #CHECK: ly      %r0, -524289
1978 #CHECK: error: invalid operand
1979 #CHECK: ly      %r0, 524288
1980
1981         ly      %r0, -524289
1982         ly      %r0, 524288
1983
1984 #CHECK: error: invalid register pair
1985 #CHECK: lzxr    %f2
1986
1987         lzxr    %f2
1988
1989 #CHECK: error: invalid operand
1990 #CHECK: madb    %f0, %f0, -1
1991 #CHECK: error: invalid operand
1992 #CHECK: madb    %f0, %f0, 4096
1993
1994         madb    %f0, %f0, -1
1995         madb    %f0, %f0, 4096
1996
1997 #CHECK: error: invalid operand
1998 #CHECK: maeb    %f0, %f0, -1
1999 #CHECK: error: invalid operand
2000 #CHECK: maeb    %f0, %f0, 4096
2001
2002         maeb    %f0, %f0, -1
2003         maeb    %f0, %f0, 4096
2004
2005 #CHECK: error: invalid operand
2006 #CHECK: mdb     %f0, -1
2007 #CHECK: error: invalid operand
2008 #CHECK: mdb     %f0, 4096
2009
2010         mdb     %f0, -1
2011         mdb     %f0, 4096
2012
2013 #CHECK: error: invalid operand
2014 #CHECK: mdeb    %f0, -1
2015 #CHECK: error: invalid operand
2016 #CHECK: mdeb    %f0, 4096
2017
2018         mdeb    %f0, -1
2019         mdeb    %f0, 4096
2020
2021 #CHECK: error: invalid operand
2022 #CHECK: meeb    %f0, -1
2023 #CHECK: error: invalid operand
2024 #CHECK: meeb    %f0, 4096
2025
2026         meeb    %f0, -1
2027         meeb    %f0, 4096
2028
2029 #CHECK: error: invalid operand
2030 #CHECK: mghi    %r0, -32769
2031 #CHECK: error: invalid operand
2032 #CHECK: mghi    %r0, 32768
2033 #CHECK: error: invalid operand
2034 #CHECK: mghi    %r0, foo
2035
2036         mghi    %r0, -32769
2037         mghi    %r0, 32768
2038         mghi    %r0, foo
2039
2040 #CHECK: error: invalid operand
2041 #CHECK: mh      %r0, -1
2042 #CHECK: error: invalid operand
2043 #CHECK: mh      %r0, 4096
2044
2045         mh      %r0, -1
2046         mh      %r0, 4096
2047
2048 #CHECK: error: invalid operand
2049 #CHECK: mhi     %r0, -32769
2050 #CHECK: error: invalid operand
2051 #CHECK: mhi     %r0, 32768
2052 #CHECK: error: invalid operand
2053 #CHECK: mhi     %r0, foo
2054
2055         mhi     %r0, -32769
2056         mhi     %r0, 32768
2057         mhi     %r0, foo
2058
2059 #CHECK: error: invalid operand
2060 #CHECK: mhy     %r0, -524289
2061 #CHECK: error: invalid operand
2062 #CHECK: mhy     %r0, 524288
2063
2064         mhy     %r0, -524289
2065         mhy     %r0, 524288
2066
2067 #CHECK: error: invalid operand
2068 #CHECK: mlg     %r0, -524289
2069 #CHECK: error: invalid operand
2070 #CHECK: mlg     %r0, 524288
2071 #CHECK: error: invalid register pair
2072 #CHECK: mlg     %r1, 0
2073
2074         mlg     %r0, -524289
2075         mlg     %r0, 524288
2076         mlg     %r1, 0
2077
2078 #CHECK: error: invalid register pair
2079 #CHECK: mlgr    %r1, %r0
2080
2081         mlgr    %r1, %r0
2082
2083 #CHECK: error: invalid operand
2084 #CHECK: ms      %r0, -1
2085 #CHECK: error: invalid operand
2086 #CHECK: ms      %r0, 4096
2087
2088         ms      %r0, -1
2089         ms      %r0, 4096
2090
2091 #CHECK: error: invalid operand
2092 #CHECK: msdb    %f0, %f0, -1
2093 #CHECK: error: invalid operand
2094 #CHECK: msdb    %f0, %f0, 4096
2095
2096         msdb    %f0, %f0, -1
2097         msdb    %f0, %f0, 4096
2098
2099 #CHECK: error: invalid operand
2100 #CHECK: mseb    %f0, %f0, -1
2101 #CHECK: error: invalid operand
2102 #CHECK: mseb    %f0, %f0, 4096
2103
2104         mseb    %f0, %f0, -1
2105         mseb    %f0, %f0, 4096
2106
2107 #CHECK: error: invalid operand
2108 #CHECK: msfi    %r0, (-1 << 31) - 1
2109 #CHECK: error: invalid operand
2110 #CHECK: msfi    %r0, (1 << 31)
2111
2112         msfi    %r0, (-1 << 31) - 1
2113         msfi    %r0, (1 << 31)
2114
2115 #CHECK: error: invalid operand
2116 #CHECK: msg     %r0, -524289
2117 #CHECK: error: invalid operand
2118 #CHECK: msg     %r0, 524288
2119
2120         msg     %r0, -524289
2121         msg     %r0, 524288
2122
2123 #CHECK: error: invalid operand
2124 #CHECK: msgf    %r0, -524289
2125 #CHECK: error: invalid operand
2126 #CHECK: msgf    %r0, 524288
2127
2128         msgf    %r0, -524289
2129         msgf    %r0, 524288
2130
2131 #CHECK: error: invalid operand
2132 #CHECK: msgfi   %r0, (-1 << 31) - 1
2133 #CHECK: error: invalid operand
2134 #CHECK: msgfi   %r0, (1 << 31)
2135
2136         msgfi   %r0, (-1 << 31) - 1
2137         msgfi   %r0, (1 << 31)
2138
2139 #CHECK: error: invalid operand
2140 #CHECK: msy     %r0, -524289
2141 #CHECK: error: invalid operand
2142 #CHECK: msy     %r0, 524288
2143
2144         msy     %r0, -524289
2145         msy     %r0, 524288
2146
2147 #CHECK: error: missing length in address
2148 #CHECK: mvc     0, 0
2149 #CHECK: error: missing length in address
2150 #CHECK: mvc     0(%r1), 0(%r1)
2151 #CHECK: error: invalid use of length addressing
2152 #CHECK: mvc     0(1,%r1), 0(2,%r1)
2153 #CHECK: error: invalid operand
2154 #CHECK: mvc     0(0,%r1), 0(%r1)
2155 #CHECK: error: invalid operand
2156 #CHECK: mvc     0(257,%r1), 0(%r1)
2157 #CHECK: error: invalid operand
2158 #CHECK: mvc     -1(1,%r1), 0(%r1)
2159 #CHECK: error: invalid operand
2160 #CHECK: mvc     4096(1,%r1), 0(%r1)
2161 #CHECK: error: invalid operand
2162 #CHECK: mvc     0(1,%r1), -1(%r1)
2163 #CHECK: error: invalid operand
2164 #CHECK: mvc     0(1,%r1), 4096(%r1)
2165 #CHECK: error: %r0 used in an address
2166 #CHECK: mvc     0(1,%r0), 0(%r1)
2167 #CHECK: error: %r0 used in an address
2168 #CHECK: mvc     0(1,%r1), 0(%r0)
2169 #CHECK: error: invalid use of indexed addressing
2170 #CHECK: mvc     0(%r1,%r2), 0(%r1)
2171 #CHECK: error: invalid use of indexed addressing
2172 #CHECK: mvc     0(1,%r2), 0(%r1,%r2)
2173 #CHECK: error: unknown token in expression
2174 #CHECK: mvc     0(-), 0
2175
2176         mvc     0, 0
2177         mvc     0(%r1), 0(%r1)
2178         mvc     0(1,%r1), 0(2,%r1)
2179         mvc     0(0,%r1), 0(%r1)
2180         mvc     0(257,%r1), 0(%r1)
2181         mvc     -1(1,%r1), 0(%r1)
2182         mvc     4096(1,%r1), 0(%r1)
2183         mvc     0(1,%r1), -1(%r1)
2184         mvc     0(1,%r1), 4096(%r1)
2185         mvc     0(1,%r0), 0(%r1)
2186         mvc     0(1,%r1), 0(%r0)
2187         mvc     0(%r1,%r2), 0(%r1)
2188         mvc     0(1,%r2), 0(%r1,%r2)
2189         mvc     0(-), 0
2190
2191 #CHECK: error: invalid operand
2192 #CHECK: mvghi   -1, 0
2193 #CHECK: error: invalid operand
2194 #CHECK: mvghi   4096, 0
2195 #CHECK: error: invalid use of indexed addressing
2196 #CHECK: mvghi   0(%r1,%r2), 0
2197 #CHECK: error: invalid operand
2198 #CHECK: mvghi   0, -32769
2199 #CHECK: error: invalid operand
2200 #CHECK: mvghi   0, 32768
2201
2202         mvghi   -1, 0
2203         mvghi   4096, 0
2204         mvghi   0(%r1,%r2), 0
2205         mvghi   0, -32769
2206         mvghi   0, 32768
2207
2208 #CHECK: error: invalid operand
2209 #CHECK: mvhhi   -1, 0
2210 #CHECK: error: invalid operand
2211 #CHECK: mvhhi   4096, 0
2212 #CHECK: error: invalid use of indexed addressing
2213 #CHECK: mvhhi   0(%r1,%r2), 0
2214 #CHECK: error: invalid operand
2215 #CHECK: mvhhi   0, -32769
2216 #CHECK: error: invalid operand
2217 #CHECK: mvhhi   0, 32768
2218
2219         mvhhi   -1, 0
2220         mvhhi   4096, 0
2221         mvhhi   0(%r1,%r2), 0
2222         mvhhi   0, -32769
2223         mvhhi   0, 32768
2224
2225 #CHECK: error: invalid operand
2226 #CHECK: mvhi    -1, 0
2227 #CHECK: error: invalid operand
2228 #CHECK: mvhi    4096, 0
2229 #CHECK: error: invalid use of indexed addressing
2230 #CHECK: mvhi    0(%r1,%r2), 0
2231 #CHECK: error: invalid operand
2232 #CHECK: mvhi    0, -32769
2233 #CHECK: error: invalid operand
2234 #CHECK: mvhi    0, 32768
2235
2236         mvhi    -1, 0
2237         mvhi    4096, 0
2238         mvhi    0(%r1,%r2), 0
2239         mvhi    0, -32769
2240         mvhi    0, 32768
2241
2242 #CHECK: error: invalid operand
2243 #CHECK: mvi     -1, 0
2244 #CHECK: error: invalid operand
2245 #CHECK: mvi     4096, 0
2246 #CHECK: error: invalid use of indexed addressing
2247 #CHECK: mvi     0(%r1,%r2), 0
2248 #CHECK: error: invalid operand
2249 #CHECK: mvi     0, -1
2250 #CHECK: error: invalid operand
2251 #CHECK: mvi     0, 256
2252
2253         mvi     -1, 0
2254         mvi     4096, 0
2255         mvi     0(%r1,%r2), 0
2256         mvi     0, -1
2257         mvi     0, 256
2258
2259 #CHECK: error: invalid operand
2260 #CHECK: mviy    -524289, 0
2261 #CHECK: error: invalid operand
2262 #CHECK: mviy    524288, 0
2263 #CHECK: error: invalid use of indexed addressing
2264 #CHECK: mviy    0(%r1,%r2), 0
2265 #CHECK: error: invalid operand
2266 #CHECK: mviy    0, -1
2267 #CHECK: error: invalid operand
2268 #CHECK: mviy    0, 256
2269
2270         mviy    -524289, 0
2271         mviy    524288, 0
2272         mviy    0(%r1,%r2), 0
2273         mviy    0, -1
2274         mviy    0, 256
2275
2276 #CHECK: error: invalid register pair
2277 #CHECK: mxbr    %f0, %f2
2278 #CHECK: error: invalid register pair
2279 #CHECK: mxbr    %f2, %f0
2280
2281         mxbr    %f0, %f2
2282         mxbr    %f2, %f0
2283
2284 #CHECK: error: invalid register pair
2285 #CHECK: mxdb    %f2, 0
2286 #CHECK: error: invalid operand
2287 #CHECK: mxdb    %f0, -1
2288 #CHECK: error: invalid operand
2289 #CHECK: mxdb    %f0, 4096
2290
2291         mxdb    %f2, 0
2292         mxdb    %f0, -1
2293         mxdb    %f0, 4096
2294
2295 #CHECK: error: invalid register pair
2296 #CHECK: mxdbr   %f2, %f0
2297
2298         mxdbr   %f2, %f0
2299
2300 #CHECK: error: invalid operand
2301 #CHECK: n       %r0, -1
2302 #CHECK: error: invalid operand
2303 #CHECK: n       %r0, 4096
2304
2305         n       %r0, -1
2306         n       %r0, 4096
2307
2308 #CHECK: error: missing length in address
2309 #CHECK: nc      0, 0
2310 #CHECK: error: missing length in address
2311 #CHECK: nc      0(%r1), 0(%r1)
2312 #CHECK: error: invalid use of length addressing
2313 #CHECK: nc      0(1,%r1), 0(2,%r1)
2314 #CHECK: error: invalid operand
2315 #CHECK: nc      0(0,%r1), 0(%r1)
2316 #CHECK: error: invalid operand
2317 #CHECK: nc      0(257,%r1), 0(%r1)
2318 #CHECK: error: invalid operand
2319 #CHECK: nc      -1(1,%r1), 0(%r1)
2320 #CHECK: error: invalid operand
2321 #CHECK: nc      4096(1,%r1), 0(%r1)
2322 #CHECK: error: invalid operand
2323 #CHECK: nc      0(1,%r1), -1(%r1)
2324 #CHECK: error: invalid operand
2325 #CHECK: nc      0(1,%r1), 4096(%r1)
2326 #CHECK: error: %r0 used in an address
2327 #CHECK: nc      0(1,%r0), 0(%r1)
2328 #CHECK: error: %r0 used in an address
2329 #CHECK: nc      0(1,%r1), 0(%r0)
2330 #CHECK: error: invalid use of indexed addressing
2331 #CHECK: nc      0(%r1,%r2), 0(%r1)
2332 #CHECK: error: invalid use of indexed addressing
2333 #CHECK: nc      0(1,%r2), 0(%r1,%r2)
2334 #CHECK: error: unknown token in expression
2335 #CHECK: nc      0(-), 0
2336
2337         nc      0, 0
2338         nc      0(%r1), 0(%r1)
2339         nc      0(1,%r1), 0(2,%r1)
2340         nc      0(0,%r1), 0(%r1)
2341         nc      0(257,%r1), 0(%r1)
2342         nc      -1(1,%r1), 0(%r1)
2343         nc      4096(1,%r1), 0(%r1)
2344         nc      0(1,%r1), -1(%r1)
2345         nc      0(1,%r1), 4096(%r1)
2346         nc      0(1,%r0), 0(%r1)
2347         nc      0(1,%r1), 0(%r0)
2348         nc      0(%r1,%r2), 0(%r1)
2349         nc      0(1,%r2), 0(%r1,%r2)
2350         nc      0(-), 0
2351
2352 #CHECK: error: invalid operand
2353 #CHECK: ng      %r0, -524289
2354 #CHECK: error: invalid operand
2355 #CHECK: ng      %r0, 524288
2356
2357         ng      %r0, -524289
2358         ng      %r0, 524288
2359
2360 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2361 #CHECK: ngrk    %r2,%r3,%r4
2362
2363         ngrk    %r2,%r3,%r4
2364
2365 #CHECK: error: invalid operand
2366 #CHECK: ni      -1, 0
2367 #CHECK: error: invalid operand
2368 #CHECK: ni      4096, 0
2369 #CHECK: error: invalid use of indexed addressing
2370 #CHECK: ni      0(%r1,%r2), 0
2371 #CHECK: error: invalid operand
2372 #CHECK: ni      0, -1
2373 #CHECK: error: invalid operand
2374 #CHECK: ni      0, 256
2375
2376         ni      -1, 0
2377         ni      4096, 0
2378         ni      0(%r1,%r2), 0
2379         ni      0, -1
2380         ni      0, 256
2381
2382 #CHECK: error: invalid operand
2383 #CHECK: nihf    %r0, -1
2384 #CHECK: error: invalid operand
2385 #CHECK: nihf    %r0, 1 << 32
2386
2387         nihf    %r0, -1
2388         nihf    %r0, 1 << 32
2389
2390 #CHECK: error: invalid operand
2391 #CHECK: nihh    %r0, -1
2392 #CHECK: error: invalid operand
2393 #CHECK: nihh    %r0, 0x10000
2394
2395         nihh    %r0, -1
2396         nihh    %r0, 0x10000
2397
2398 #CHECK: error: invalid operand
2399 #CHECK: nihl    %r0, -1
2400 #CHECK: error: invalid operand
2401 #CHECK: nihl    %r0, 0x10000
2402
2403         nihl    %r0, -1
2404         nihl    %r0, 0x10000
2405
2406 #CHECK: error: invalid operand
2407 #CHECK: nilf    %r0, -1
2408 #CHECK: error: invalid operand
2409 #CHECK: nilf    %r0, 1 << 32
2410
2411         nilf    %r0, -1
2412         nilf    %r0, 1 << 32
2413
2414 #CHECK: error: invalid operand
2415 #CHECK: nilh    %r0, -1
2416 #CHECK: error: invalid operand
2417 #CHECK: nilh    %r0, 0x10000
2418
2419         nilh    %r0, -1
2420         nilh    %r0, 0x10000
2421
2422 #CHECK: error: invalid operand
2423 #CHECK: nill    %r0, -1
2424 #CHECK: error: invalid operand
2425 #CHECK: nill    %r0, 0x10000
2426
2427         nill    %r0, -1
2428         nill    %r0, 0x10000
2429
2430 #CHECK: error: invalid operand
2431 #CHECK: niy     -524289, 0
2432 #CHECK: error: invalid operand
2433 #CHECK: niy     524288, 0
2434 #CHECK: error: invalid use of indexed addressing
2435 #CHECK: niy     0(%r1,%r2), 0
2436 #CHECK: error: invalid operand
2437 #CHECK: niy     0, -1
2438 #CHECK: error: invalid operand
2439 #CHECK: niy     0, 256
2440
2441         niy     -524289, 0
2442         niy     524288, 0
2443         niy     0(%r1,%r2), 0
2444         niy     0, -1
2445         niy     0, 256
2446
2447 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2448 #CHECK: nrk     %r2,%r3,%r4
2449
2450         nrk     %r2,%r3,%r4
2451
2452 #CHECK: error: invalid operand
2453 #CHECK: ny      %r0, -524289
2454 #CHECK: error: invalid operand
2455 #CHECK: ny      %r0, 524288
2456
2457         ny      %r0, -524289
2458         ny      %r0, 524288
2459
2460 #CHECK: error: invalid operand
2461 #CHECK: o       %r0, -1
2462 #CHECK: error: invalid operand
2463 #CHECK: o       %r0, 4096
2464
2465         o       %r0, -1
2466         o       %r0, 4096
2467
2468 #CHECK: error: missing length in address
2469 #CHECK: oc      0, 0
2470 #CHECK: error: missing length in address
2471 #CHECK: oc      0(%r1), 0(%r1)
2472 #CHECK: error: invalid use of length addressing
2473 #CHECK: oc      0(1,%r1), 0(2,%r1)
2474 #CHECK: error: invalid operand
2475 #CHECK: oc      0(0,%r1), 0(%r1)
2476 #CHECK: error: invalid operand
2477 #CHECK: oc      0(257,%r1), 0(%r1)
2478 #CHECK: error: invalid operand
2479 #CHECK: oc      -1(1,%r1), 0(%r1)
2480 #CHECK: error: invalid operand
2481 #CHECK: oc      4096(1,%r1), 0(%r1)
2482 #CHECK: error: invalid operand
2483 #CHECK: oc      0(1,%r1), -1(%r1)
2484 #CHECK: error: invalid operand
2485 #CHECK: oc      0(1,%r1), 4096(%r1)
2486 #CHECK: error: %r0 used in an address
2487 #CHECK: oc      0(1,%r0), 0(%r1)
2488 #CHECK: error: %r0 used in an address
2489 #CHECK: oc      0(1,%r1), 0(%r0)
2490 #CHECK: error: invalid use of indexed addressing
2491 #CHECK: oc      0(%r1,%r2), 0(%r1)
2492 #CHECK: error: invalid use of indexed addressing
2493 #CHECK: oc      0(1,%r2), 0(%r1,%r2)
2494 #CHECK: error: unknown token in expression
2495 #CHECK: oc      0(-), 0
2496
2497         oc      0, 0
2498         oc      0(%r1), 0(%r1)
2499         oc      0(1,%r1), 0(2,%r1)
2500         oc      0(0,%r1), 0(%r1)
2501         oc      0(257,%r1), 0(%r1)
2502         oc      -1(1,%r1), 0(%r1)
2503         oc      4096(1,%r1), 0(%r1)
2504         oc      0(1,%r1), -1(%r1)
2505         oc      0(1,%r1), 4096(%r1)
2506         oc      0(1,%r0), 0(%r1)
2507         oc      0(1,%r1), 0(%r0)
2508         oc      0(%r1,%r2), 0(%r1)
2509         oc      0(1,%r2), 0(%r1,%r2)
2510         oc      0(-), 0
2511
2512 #CHECK: error: invalid operand
2513 #CHECK: og      %r0, -524289
2514 #CHECK: error: invalid operand
2515 #CHECK: og      %r0, 524288
2516
2517         og      %r0, -524289
2518         og      %r0, 524288
2519
2520 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2521 #CHECK: ogrk    %r2,%r3,%r4
2522
2523         ogrk    %r2,%r3,%r4
2524
2525 #CHECK: error: invalid operand
2526 #CHECK: oi      -1, 0
2527 #CHECK: error: invalid operand
2528 #CHECK: oi      4096, 0
2529 #CHECK: error: invalid use of indexed addressing
2530 #CHECK: oi      0(%r1,%r2), 0
2531 #CHECK: error: invalid operand
2532 #CHECK: oi      0, -1
2533 #CHECK: error: invalid operand
2534 #CHECK: oi      0, 256
2535
2536         oi      -1, 0
2537         oi      4096, 0
2538         oi      0(%r1,%r2), 0
2539         oi      0, -1
2540         oi      0, 256
2541
2542 #CHECK: error: invalid operand
2543 #CHECK: oihf    %r0, -1
2544 #CHECK: error: invalid operand
2545 #CHECK: oihf    %r0, 1 << 32
2546
2547         oihf    %r0, -1
2548         oihf    %r0, 1 << 32
2549
2550 #CHECK: error: invalid operand
2551 #CHECK: oihh    %r0, -1
2552 #CHECK: error: invalid operand
2553 #CHECK: oihh    %r0, 0x10000
2554
2555         oihh    %r0, -1
2556         oihh    %r0, 0x10000
2557
2558 #CHECK: error: invalid operand
2559 #CHECK: oihl    %r0, -1
2560 #CHECK: error: invalid operand
2561 #CHECK: oihl    %r0, 0x10000
2562
2563         oihl    %r0, -1
2564         oihl    %r0, 0x10000
2565
2566 #CHECK: error: invalid operand
2567 #CHECK: oilf    %r0, -1
2568 #CHECK: error: invalid operand
2569 #CHECK: oilf    %r0, 1 << 32
2570
2571         oilf    %r0, -1
2572         oilf    %r0, 1 << 32
2573
2574 #CHECK: error: invalid operand
2575 #CHECK: oilh    %r0, -1
2576 #CHECK: error: invalid operand
2577 #CHECK: oilh    %r0, 0x10000
2578
2579         oilh    %r0, -1
2580         oilh    %r0, 0x10000
2581
2582 #CHECK: error: invalid operand
2583 #CHECK: oill    %r0, -1
2584 #CHECK: error: invalid operand
2585 #CHECK: oill    %r0, 0x10000
2586
2587         oill    %r0, -1
2588         oill    %r0, 0x10000
2589
2590 #CHECK: error: invalid operand
2591 #CHECK: oiy     -524289, 0
2592 #CHECK: error: invalid operand
2593 #CHECK: oiy     524288, 0
2594 #CHECK: error: invalid use of indexed addressing
2595 #CHECK: oiy     0(%r1,%r2), 0
2596 #CHECK: error: invalid operand
2597 #CHECK: oiy     0, -1
2598 #CHECK: error: invalid operand
2599 #CHECK: oiy     0, 256
2600
2601         oiy     -524289, 0
2602         oiy     524288, 0
2603         oiy     0(%r1,%r2), 0
2604         oiy     0, -1
2605         oiy     0, 256
2606
2607 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2608 #CHECK: ork     %r2,%r3,%r4
2609
2610         ork     %r2,%r3,%r4
2611
2612 #CHECK: error: invalid operand
2613 #CHECK: oy      %r0, -524289
2614 #CHECK: error: invalid operand
2615 #CHECK: oy      %r0, 524288
2616
2617         oy      %r0, -524289
2618         oy      %r0, 524288
2619
2620 #CHECK: error: invalid operand
2621 #CHECK: pfd     -1, 0
2622 #CHECK: error: invalid operand
2623 #CHECK: pfd     16, 0
2624 #CHECK: error: invalid operand
2625 #CHECK: pfd     1, -524289
2626 #CHECK: error: invalid operand
2627 #CHECK: pfd     1, 524288
2628
2629         pfd     -1, 0
2630         pfd     16, 0
2631         pfd     1, -524289
2632         pfd     1, 524288
2633
2634 #CHECK: error: invalid operand
2635 #CHECK: pfdrl   -1, 0
2636 #CHECK: error: invalid operand
2637 #CHECK: pfdrl   16, 0
2638 #CHECK: error: offset out of range
2639 #CHECK: pfdrl   1, -0x1000000002
2640 #CHECK: error: offset out of range
2641 #CHECK: pfdrl   1, -1
2642 #CHECK: error: offset out of range
2643 #CHECK: pfdrl   1, 1
2644 #CHECK: error: offset out of range
2645 #CHECK: pfdrl   1, 0x100000000
2646
2647         pfdrl   -1, 0
2648         pfdrl   16, 0
2649         pfdrl   1, -0x1000000002
2650         pfdrl   1, -1
2651         pfdrl   1, 1
2652         pfdrl   1, 0x100000000
2653
2654 #CHECK: error: invalid operand
2655 #CHECK: risbg   %r0,%r0,0,0,-1
2656 #CHECK: error: invalid operand
2657 #CHECK: risbg   %r0,%r0,0,0,64
2658 #CHECK: error: invalid operand
2659 #CHECK: risbg   %r0,%r0,0,-1,0
2660 #CHECK: error: invalid operand
2661 #CHECK: risbg   %r0,%r0,0,256,0
2662 #CHECK: error: invalid operand
2663 #CHECK: risbg   %r0,%r0,-1,0,0
2664 #CHECK: error: invalid operand
2665 #CHECK: risbg   %r0,%r0,256,0,0
2666
2667         risbg   %r0,%r0,0,0,-1
2668         risbg   %r0,%r0,0,0,64
2669         risbg   %r0,%r0,0,-1,0
2670         risbg   %r0,%r0,0,256,0
2671         risbg   %r0,%r0,-1,0,0
2672         risbg   %r0,%r0,256,0,0
2673
2674 #CHECK: error: {{(instruction requires: high-word)?}}
2675 #CHECK: risbhg  %r1, %r2, 0, 0, 0
2676
2677         risbhg  %r1, %r2, 0, 0, 0
2678
2679 #CHECK: error: {{(instruction requires: high-word)?}}
2680 #CHECK: risblg  %r1, %r2, 0, 0, 0
2681
2682         risblg  %r1, %r2, 0, 0, 0
2683
2684 #CHECK: error: invalid operand
2685 #CHECK: rnsbg   %r0,%r0,0,0,-1
2686 #CHECK: error: invalid operand
2687 #CHECK: rnsbg   %r0,%r0,0,0,64
2688 #CHECK: error: invalid operand
2689 #CHECK: rnsbg   %r0,%r0,0,-1,0
2690 #CHECK: error: invalid operand
2691 #CHECK: rnsbg   %r0,%r0,0,256,0
2692 #CHECK: error: invalid operand
2693 #CHECK: rnsbg   %r0,%r0,-1,0,0
2694 #CHECK: error: invalid operand
2695 #CHECK: rnsbg   %r0,%r0,256,0,0
2696
2697         rnsbg   %r0,%r0,0,0,-1
2698         rnsbg   %r0,%r0,0,0,64
2699         rnsbg   %r0,%r0,0,-1,0
2700         rnsbg   %r0,%r0,0,256,0
2701         rnsbg   %r0,%r0,-1,0,0
2702         rnsbg   %r0,%r0,256,0,0
2703
2704 #CHECK: error: invalid operand
2705 #CHECK: rosbg   %r0,%r0,0,0,-1
2706 #CHECK: error: invalid operand
2707 #CHECK: rosbg   %r0,%r0,0,0,64
2708 #CHECK: error: invalid operand
2709 #CHECK: rosbg   %r0,%r0,0,-1,0
2710 #CHECK: error: invalid operand
2711 #CHECK: rosbg   %r0,%r0,0,256,0
2712 #CHECK: error: invalid operand
2713 #CHECK: rosbg   %r0,%r0,-1,0,0
2714 #CHECK: error: invalid operand
2715 #CHECK: rosbg   %r0,%r0,256,0,0
2716
2717         rosbg   %r0,%r0,0,0,-1
2718         rosbg   %r0,%r0,0,0,64
2719         rosbg   %r0,%r0,0,-1,0
2720         rosbg   %r0,%r0,0,256,0
2721         rosbg   %r0,%r0,-1,0,0
2722         rosbg   %r0,%r0,256,0,0
2723
2724 #CHECK: error: invalid operand
2725 #CHECK: rxsbg   %r0,%r0,0,0,-1
2726 #CHECK: error: invalid operand
2727 #CHECK: rxsbg   %r0,%r0,0,0,64
2728 #CHECK: error: invalid operand
2729 #CHECK: rxsbg   %r0,%r0,0,-1,0
2730 #CHECK: error: invalid operand
2731 #CHECK: rxsbg   %r0,%r0,0,256,0
2732 #CHECK: error: invalid operand
2733 #CHECK: rxsbg   %r0,%r0,-1,0,0
2734 #CHECK: error: invalid operand
2735 #CHECK: rxsbg   %r0,%r0,256,0,0
2736
2737         rxsbg   %r0,%r0,0,0,-1
2738         rxsbg   %r0,%r0,0,0,64
2739         rxsbg   %r0,%r0,0,-1,0
2740         rxsbg   %r0,%r0,0,256,0
2741         rxsbg   %r0,%r0,-1,0,0
2742         rxsbg   %r0,%r0,256,0,0
2743
2744 #CHECK: error: invalid operand
2745 #CHECK: rll     %r0,%r0,-524289
2746 #CHECK: error: invalid operand
2747 #CHECK: rll     %r0,%r0,524288
2748 #CHECK: error: %r0 used in an address
2749 #CHECK: rll     %r0,%r0,0(%r0)
2750 #CHECK: error: invalid use of indexed addressing
2751 #CHECK: rll     %r0,%r0,0(%r1,%r2)
2752
2753         rll     %r0,%r0,-524289
2754         rll     %r0,%r0,524288
2755         rll     %r0,%r0,0(%r0)
2756         rll     %r0,%r0,0(%r1,%r2)
2757
2758 #CHECK: error: invalid operand
2759 #CHECK: rllg    %r0,%r0,-524289
2760 #CHECK: error: invalid operand
2761 #CHECK: rllg    %r0,%r0,524288
2762 #CHECK: error: %r0 used in an address
2763 #CHECK: rllg    %r0,%r0,0(%r0)
2764 #CHECK: error: invalid use of indexed addressing
2765 #CHECK: rllg    %r0,%r0,0(%r1,%r2)
2766
2767         rllg    %r0,%r0,-524289
2768         rllg    %r0,%r0,524288
2769         rllg    %r0,%r0,0(%r0)
2770         rllg    %r0,%r0,0(%r1,%r2)
2771
2772 #CHECK: error: invalid operand
2773 #CHECK: s       %r0, -1
2774 #CHECK: error: invalid operand
2775 #CHECK: s       %r0, 4096
2776
2777         s       %r0, -1
2778         s       %r0, 4096
2779
2780 #CHECK: error: invalid operand
2781 #CHECK: sdb     %f0, -1
2782 #CHECK: error: invalid operand
2783 #CHECK: sdb     %f0, 4096
2784
2785         sdb     %f0, -1
2786         sdb     %f0, 4096
2787
2788 #CHECK: error: invalid operand
2789 #CHECK: seb     %f0, -1
2790 #CHECK: error: invalid operand
2791 #CHECK: seb     %f0, 4096
2792
2793         seb     %f0, -1
2794         seb     %f0, 4096
2795
2796 #CHECK: error: invalid operand
2797 #CHECK: sg      %r0, -524289
2798 #CHECK: error: invalid operand
2799 #CHECK: sg      %r0, 524288
2800
2801         sg      %r0, -524289
2802         sg      %r0, 524288
2803
2804 #CHECK: error: invalid operand
2805 #CHECK: sgf     %r0, -524289
2806 #CHECK: error: invalid operand
2807 #CHECK: sgf     %r0, 524288
2808
2809         sgf     %r0, -524289
2810         sgf     %r0, 524288
2811
2812 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2813 #CHECK: sgrk    %r2,%r3,%r4
2814
2815         sgrk    %r2,%r3,%r4
2816
2817 #CHECK: error: invalid operand
2818 #CHECK: sh      %r0, -1
2819 #CHECK: error: invalid operand
2820 #CHECK: sh      %r0, 4096
2821
2822         sh      %r0, -1
2823         sh      %r0, 4096
2824
2825 #CHECK: error: invalid operand
2826 #CHECK: shy     %r0, -524289
2827 #CHECK: error: invalid operand
2828 #CHECK: shy     %r0, 524288
2829
2830         shy     %r0, -524289
2831         shy     %r0, 524288
2832
2833 #CHECK: error: invalid operand
2834 #CHECK: sl      %r0, -1
2835 #CHECK: error: invalid operand
2836 #CHECK: sl      %r0, 4096
2837
2838         sl      %r0, -1
2839         sl      %r0, 4096
2840
2841 #CHECK: error: invalid operand
2842 #CHECK: slb     %r0, -524289
2843 #CHECK: error: invalid operand
2844 #CHECK: slb     %r0, 524288
2845
2846         slb     %r0, -524289
2847         slb     %r0, 524288
2848
2849 #CHECK: error: invalid operand
2850 #CHECK: slbg    %r0, -524289
2851 #CHECK: error: invalid operand
2852 #CHECK: slbg    %r0, 524288
2853
2854         slbg    %r0, -524289
2855         slbg    %r0, 524288
2856
2857 #CHECK: error: invalid operand
2858 #CHECK: slfi    %r0, -1
2859 #CHECK: error: invalid operand
2860 #CHECK: slfi    %r0, (1 << 32)
2861
2862         slfi    %r0, -1
2863         slfi    %r0, (1 << 32)
2864
2865 #CHECK: error: invalid operand
2866 #CHECK: slg     %r0, -524289
2867 #CHECK: error: invalid operand
2868 #CHECK: slg     %r0, 524288
2869
2870         slg     %r0, -524289
2871         slg     %r0, 524288
2872
2873 #CHECK: error: invalid operand
2874 #CHECK: slgf    %r0, -524289
2875 #CHECK: error: invalid operand
2876 #CHECK: slgf    %r0, 524288
2877
2878         slgf    %r0, -524289
2879         slgf    %r0, 524288
2880
2881 #CHECK: error: invalid operand
2882 #CHECK: slgfi   %r0, -1
2883 #CHECK: error: invalid operand
2884 #CHECK: slgfi   %r0, (1 << 32)
2885
2886         slgfi   %r0, -1
2887         slgfi   %r0, (1 << 32)
2888
2889 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2890 #CHECK: slgrk   %r2,%r3,%r4
2891
2892         slgrk   %r2,%r3,%r4
2893
2894 #CHECK: error: invalid operand
2895 #CHECK: sll     %r0,-1
2896 #CHECK: error: invalid operand
2897 #CHECK: sll     %r0,4096
2898 #CHECK: error: %r0 used in an address
2899 #CHECK: sll     %r0,0(%r0)
2900 #CHECK: error: invalid use of indexed addressing
2901 #CHECK: sll     %r0,0(%r1,%r2)
2902
2903         sll     %r0,-1
2904         sll     %r0,4096
2905         sll     %r0,0(%r0)
2906         sll     %r0,0(%r1,%r2)
2907
2908 #CHECK: error: invalid operand
2909 #CHECK: sllg    %r0,%r0,-524289
2910 #CHECK: error: invalid operand
2911 #CHECK: sllg    %r0,%r0,524288
2912 #CHECK: error: %r0 used in an address
2913 #CHECK: sllg    %r0,%r0,0(%r0)
2914 #CHECK: error: invalid use of indexed addressing
2915 #CHECK: sllg    %r0,%r0,0(%r1,%r2)
2916
2917         sllg    %r0,%r0,-524289
2918         sllg    %r0,%r0,524288
2919         sllg    %r0,%r0,0(%r0)
2920         sllg    %r0,%r0,0(%r1,%r2)
2921
2922 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2923 #CHECK: sllk    %r2,%r3,4(%r5)
2924
2925         sllk    %r2,%r3,4(%r5)
2926
2927 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2928 #CHECK: slrk    %r2,%r3,%r4
2929
2930         slrk    %r2,%r3,%r4
2931
2932 #CHECK: error: invalid operand
2933 #CHECK: sly     %r0, -524289
2934 #CHECK: error: invalid operand
2935 #CHECK: sly     %r0, 524288
2936
2937         sly     %r0, -524289
2938         sly     %r0, 524288
2939
2940 #CHECK: error: invalid operand
2941 #CHECK: sqdb    %f0, -1
2942 #CHECK: error: invalid operand
2943 #CHECK: sqdb    %f0, 4096
2944
2945         sqdb    %f0, -1
2946         sqdb    %f0, 4096
2947
2948 #CHECK: error: invalid operand
2949 #CHECK: sqeb    %f0, -1
2950 #CHECK: error: invalid operand
2951 #CHECK: sqeb    %f0, 4096
2952
2953         sqeb    %f0, -1
2954         sqeb    %f0, 4096
2955
2956 #CHECK: error: invalid register pair
2957 #CHECK: sqxbr   %f0, %f2
2958 #CHECK: error: invalid register pair
2959 #CHECK: sqxbr   %f2, %f0
2960
2961         sqxbr   %f0, %f2
2962         sqxbr   %f2, %f0
2963
2964 #CHECK: error: invalid operand
2965 #CHECK: sra     %r0,-1
2966 #CHECK: error: invalid operand
2967 #CHECK: sra     %r0,4096
2968 #CHECK: error: %r0 used in an address
2969 #CHECK: sra     %r0,0(%r0)
2970 #CHECK: error: invalid use of indexed addressing
2971 #CHECK: sra     %r0,0(%r1,%r2)
2972
2973         sra     %r0,-1
2974         sra     %r0,4096
2975         sra     %r0,0(%r0)
2976         sra     %r0,0(%r1,%r2)
2977
2978 #CHECK: error: invalid operand
2979 #CHECK: srag    %r0,%r0,-524289
2980 #CHECK: error: invalid operand
2981 #CHECK: srag    %r0,%r0,524288
2982 #CHECK: error: %r0 used in an address
2983 #CHECK: srag    %r0,%r0,0(%r0)
2984 #CHECK: error: invalid use of indexed addressing
2985 #CHECK: srag    %r0,%r0,0(%r1,%r2)
2986
2987         srag    %r0,%r0,-524289
2988         srag    %r0,%r0,524288
2989         srag    %r0,%r0,0(%r0)
2990         srag    %r0,%r0,0(%r1,%r2)
2991
2992 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2993 #CHECK: srak    %r2,%r3,4(%r5)
2994
2995         srak    %r2,%r3,4(%r5)
2996
2997 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2998 #CHECK: srk     %r2,%r3,%r4
2999
3000         srk     %r2,%r3,%r4
3001
3002 #CHECK: error: invalid operand
3003 #CHECK: srl     %r0,-1
3004 #CHECK: error: invalid operand
3005 #CHECK: srl     %r0,4096
3006 #CHECK: error: %r0 used in an address
3007 #CHECK: srl     %r0,0(%r0)
3008 #CHECK: error: invalid use of indexed addressing
3009 #CHECK: srl     %r0,0(%r1,%r2)
3010
3011         srl     %r0,-1
3012         srl     %r0,4096
3013         srl     %r0,0(%r0)
3014         srl     %r0,0(%r1,%r2)
3015
3016 #CHECK: error: invalid operand
3017 #CHECK: srlg    %r0,%r0,-524289
3018 #CHECK: error: invalid operand
3019 #CHECK: srlg    %r0,%r0,524288
3020 #CHECK: error: %r0 used in an address
3021 #CHECK: srlg    %r0,%r0,0(%r0)
3022 #CHECK: error: invalid use of indexed addressing
3023 #CHECK: srlg    %r0,%r0,0(%r1,%r2)
3024
3025         srlg    %r0,%r0,-524289
3026         srlg    %r0,%r0,524288
3027         srlg    %r0,%r0,0(%r0)
3028         srlg    %r0,%r0,0(%r1,%r2)
3029
3030 #CHECK: error: {{(instruction requires: distinct-ops)?}}
3031 #CHECK: srlk    %r2,%r3,4(%r5)
3032
3033         srlk    %r2,%r3,4(%r5)
3034
3035 #CHECK: error: invalid operand
3036 #CHECK: st      %r0, -1
3037 #CHECK: error: invalid operand
3038 #CHECK: st      %r0, 4096
3039
3040         st      %r0, -1
3041         st      %r0, 4096
3042
3043 #CHECK: error: invalid operand
3044 #CHECK: stc     %r0, -1
3045 #CHECK: error: invalid operand
3046 #CHECK: stc     %r0, 4096
3047
3048         stc     %r0, -1
3049         stc     %r0, 4096
3050
3051 #CHECK: error: {{(instruction requires: high-word)?}}
3052 #CHECK: stch    %r0, 0
3053
3054         stch    %r0, 0
3055
3056 #CHECK: error: invalid operand
3057 #CHECK: stcy    %r0, -524289
3058 #CHECK: error: invalid operand
3059 #CHECK: stcy    %r0, 524288
3060
3061         stcy    %r0, -524289
3062         stcy    %r0, 524288
3063
3064 #CHECK: error: invalid operand
3065 #CHECK: std     %f0, -1
3066 #CHECK: error: invalid operand
3067 #CHECK: std     %f0, 4096
3068
3069         std     %f0, -1
3070         std     %f0, 4096
3071
3072 #CHECK: error: invalid operand
3073 #CHECK: stdy    %f0, -524289
3074 #CHECK: error: invalid operand
3075 #CHECK: stdy    %f0, 524288
3076
3077         stdy    %f0, -524289
3078         stdy    %f0, 524288
3079
3080 #CHECK: error: invalid operand
3081 #CHECK: ste     %f0, -1
3082 #CHECK: error: invalid operand
3083 #CHECK: ste     %f0, 4096
3084
3085         ste     %f0, -1
3086         ste     %f0, 4096
3087
3088 #CHECK: error: invalid operand
3089 #CHECK: stey    %f0, -524289
3090 #CHECK: error: invalid operand
3091 #CHECK: stey    %f0, 524288
3092
3093         stey    %f0, -524289
3094         stey    %f0, 524288
3095
3096 #CHECK: error: invalid operand
3097 #CHECK: stg     %r0, -524289
3098 #CHECK: error: invalid operand
3099 #CHECK: stg     %r0, 524288
3100
3101         stg     %r0, -524289
3102         stg     %r0, 524288
3103
3104 #CHECK: error: offset out of range
3105 #CHECK: stgrl   %r0, -0x1000000002
3106 #CHECK: error: offset out of range
3107 #CHECK: stgrl   %r0, -1
3108 #CHECK: error: offset out of range
3109 #CHECK: stgrl   %r0, 1
3110 #CHECK: error: offset out of range
3111 #CHECK: stgrl   %r0, 0x100000000
3112
3113         stgrl   %r0, -0x1000000002
3114         stgrl   %r0, -1
3115         stgrl   %r0, 1
3116         stgrl   %r0, 0x100000000
3117
3118 #CHECK: error: invalid operand
3119 #CHECK: sth     %r0, -1
3120 #CHECK: error: invalid operand
3121 #CHECK: sth     %r0, 4096
3122
3123         sth     %r0, -1
3124         sth     %r0, 4096
3125
3126 #CHECK: error: {{(instruction requires: high-word)?}}
3127 #CHECK: sthh    %r0, 0
3128
3129         sthh    %r0, 0
3130
3131 #CHECK: error: offset out of range
3132 #CHECK: sthrl   %r0, -0x1000000002
3133 #CHECK: error: offset out of range
3134 #CHECK: sthrl   %r0, -1
3135 #CHECK: error: offset out of range
3136 #CHECK: sthrl   %r0, 1
3137 #CHECK: error: offset out of range
3138 #CHECK: sthrl   %r0, 0x100000000
3139
3140         sthrl   %r0, -0x1000000002
3141         sthrl   %r0, -1
3142         sthrl   %r0, 1
3143         sthrl   %r0, 0x100000000
3144
3145 #CHECK: error: invalid operand
3146 #CHECK: sthy    %r0, -524289
3147 #CHECK: error: invalid operand
3148 #CHECK: sthy    %r0, 524288
3149
3150         sthy    %r0, -524289
3151         sthy    %r0, 524288
3152
3153 #CHECK: error: {{(instruction requires: high-word)?}}
3154 #CHECK: stfh    %r0, 0
3155
3156         stfh    %r0, 0
3157
3158 #CHECK: error: invalid operand
3159 #CHECK: stmg    %r0, %r0, -524289
3160 #CHECK: error: invalid operand
3161 #CHECK: stmg    %r0, %r0, 524288
3162 #CHECK: error: invalid use of indexed addressing
3163 #CHECK: stmg    %r0, %r0, 0(%r1,%r2)
3164
3165         stmg    %r0, %r0, -524289
3166         stmg    %r0, %r0, 524288
3167         stmg    %r0, %r0, 0(%r1,%r2)
3168
3169 #CHECK: error: offset out of range
3170 #CHECK: strl    %r0, -0x1000000002
3171 #CHECK: error: offset out of range
3172 #CHECK: strl    %r0, -1
3173 #CHECK: error: offset out of range
3174 #CHECK: strl    %r0, 1
3175 #CHECK: error: offset out of range
3176 #CHECK: strl    %r0, 0x100000000
3177
3178         strl    %r0, -0x1000000002
3179         strl    %r0, -1
3180         strl    %r0, 1
3181         strl    %r0, 0x100000000
3182
3183 #CHECK: error: invalid operand
3184 #CHECK: strv    %r0, -524289
3185 #CHECK: error: invalid operand
3186 #CHECK: strv    %r0, 524288
3187
3188         strv    %r0, -524289
3189         strv    %r0, 524288
3190
3191 #CHECK: error: invalid operand
3192 #CHECK: strvg   %r0, -524289
3193 #CHECK: error: invalid operand
3194 #CHECK: strvg   %r0, 524288
3195
3196         strvg   %r0, -524289
3197         strvg   %r0, 524288
3198
3199 #CHECK: error: invalid operand
3200 #CHECK: sty     %r0, -524289
3201 #CHECK: error: invalid operand
3202 #CHECK: sty     %r0, 524288
3203
3204         sty     %r0, -524289
3205         sty     %r0, 524288
3206
3207 #CHECK: error: invalid register pair
3208 #CHECK: sxbr    %f0, %f2
3209 #CHECK: error: invalid register pair
3210 #CHECK: sxbr    %f2, %f0
3211
3212         sxbr    %f0, %f2
3213         sxbr    %f2, %f0
3214
3215 #CHECK: error: invalid operand
3216 #CHECK: sy      %r0, -524289
3217 #CHECK: error: invalid operand
3218 #CHECK: sy      %r0, 524288
3219
3220         sy      %r0, -524289
3221         sy      %r0, 524288
3222
3223 #CHECK: error: invalid operand
3224 #CHECK: tm      -1, 0
3225 #CHECK: error: invalid operand
3226 #CHECK: tm      4096, 0
3227 #CHECK: error: invalid use of indexed addressing
3228 #CHECK: tm      0(%r1,%r2), 0
3229 #CHECK: error: invalid operand
3230 #CHECK: tm      0, -1
3231 #CHECK: error: invalid operand
3232 #CHECK: tm      0, 256
3233
3234         tm      -1, 0
3235         tm      4096, 0
3236         tm      0(%r1,%r2), 0
3237         tm      0, -1
3238         tm      0, 256
3239
3240 #CHECK: error: invalid operand
3241 #CHECK: tmhh    %r0, -1
3242 #CHECK: error: invalid operand
3243 #CHECK: tmhh    %r0, 0x10000
3244
3245         tmhh    %r0, -1
3246         tmhh    %r0, 0x10000
3247
3248 #CHECK: error: invalid operand
3249 #CHECK: tmhl    %r0, -1
3250 #CHECK: error: invalid operand
3251 #CHECK: tmhl    %r0, 0x10000
3252
3253         tmhl    %r0, -1
3254         tmhl    %r0, 0x10000
3255
3256 #CHECK: error: invalid operand
3257 #CHECK: tmlh    %r0, -1
3258 #CHECK: error: invalid operand
3259 #CHECK: tmlh    %r0, 0x10000
3260
3261         tmlh    %r0, -1
3262         tmlh    %r0, 0x10000
3263
3264 #CHECK: error: invalid operand
3265 #CHECK: tmll    %r0, -1
3266 #CHECK: error: invalid operand
3267 #CHECK: tmll    %r0, 0x10000
3268
3269         tmll    %r0, -1
3270         tmll    %r0, 0x10000
3271
3272 #CHECK: error: invalid operand
3273 #CHECK: tmy     -524289, 0
3274 #CHECK: error: invalid operand
3275 #CHECK: tmy     524288, 0
3276 #CHECK: error: invalid use of indexed addressing
3277 #CHECK: tmy     0(%r1,%r2), 0
3278 #CHECK: error: invalid operand
3279 #CHECK: tmy     0, -1
3280 #CHECK: error: invalid operand
3281 #CHECK: tmy     0, 256
3282
3283         tmy     -524289, 0
3284         tmy     524288, 0
3285         tmy     0(%r1,%r2), 0
3286         tmy     0, -1
3287         tmy     0, 256
3288
3289 #CHECK: error: invalid operand
3290 #CHECK: x       %r0, -1
3291 #CHECK: error: invalid operand
3292 #CHECK: x       %r0, 4096
3293
3294         x       %r0, -1
3295         x       %r0, 4096
3296
3297 #CHECK: error: missing length in address
3298 #CHECK: xc      0, 0
3299 #CHECK: error: missing length in address
3300 #CHECK: xc      0(%r1), 0(%r1)
3301 #CHECK: error: invalid use of length addressing
3302 #CHECK: xc      0(1,%r1), 0(2,%r1)
3303 #CHECK: error: invalid operand
3304 #CHECK: xc      0(0,%r1), 0(%r1)
3305 #CHECK: error: invalid operand
3306 #CHECK: xc      0(257,%r1), 0(%r1)
3307 #CHECK: error: invalid operand
3308 #CHECK: xc      -1(1,%r1), 0(%r1)
3309 #CHECK: error: invalid operand
3310 #CHECK: xc      4096(1,%r1), 0(%r1)
3311 #CHECK: error: invalid operand
3312 #CHECK: xc      0(1,%r1), -1(%r1)
3313 #CHECK: error: invalid operand
3314 #CHECK: xc      0(1,%r1), 4096(%r1)
3315 #CHECK: error: %r0 used in an address
3316 #CHECK: xc      0(1,%r0), 0(%r1)
3317 #CHECK: error: %r0 used in an address
3318 #CHECK: xc      0(1,%r1), 0(%r0)
3319 #CHECK: error: invalid use of indexed addressing
3320 #CHECK: xc      0(%r1,%r2), 0(%r1)
3321 #CHECK: error: invalid use of indexed addressing
3322 #CHECK: xc      0(1,%r2), 0(%r1,%r2)
3323 #CHECK: error: unknown token in expression
3324 #CHECK: xc      0(-), 0
3325
3326         xc      0, 0
3327         xc      0(%r1), 0(%r1)
3328         xc      0(1,%r1), 0(2,%r1)
3329         xc      0(0,%r1), 0(%r1)
3330         xc      0(257,%r1), 0(%r1)
3331         xc      -1(1,%r1), 0(%r1)
3332         xc      4096(1,%r1), 0(%r1)
3333         xc      0(1,%r1), -1(%r1)
3334         xc      0(1,%r1), 4096(%r1)
3335         xc      0(1,%r0), 0(%r1)
3336         xc      0(1,%r1), 0(%r0)
3337         xc      0(%r1,%r2), 0(%r1)
3338         xc      0(1,%r2), 0(%r1,%r2)
3339         xc      0(-), 0
3340
3341 #CHECK: error: invalid operand
3342 #CHECK: xg      %r0, -524289
3343 #CHECK: error: invalid operand
3344 #CHECK: xg      %r0, 524288
3345
3346         xg      %r0, -524289
3347         xg      %r0, 524288
3348
3349 #CHECK: error: {{(instruction requires: distinct-ops)?}}
3350 #CHECK: xgrk    %r2,%r3,%r4
3351
3352         xgrk    %r2,%r3,%r4
3353
3354 #CHECK: error: invalid operand
3355 #CHECK: xi      -1, 0
3356 #CHECK: error: invalid operand
3357 #CHECK: xi      4096, 0
3358 #CHECK: error: invalid use of indexed addressing
3359 #CHECK: xi      0(%r1,%r2), 0
3360 #CHECK: error: invalid operand
3361 #CHECK: xi      0, -1
3362 #CHECK: error: invalid operand
3363 #CHECK: xi      0, 256
3364
3365         xi      -1, 0
3366         xi      4096, 0
3367         xi      0(%r1,%r2), 0
3368         xi      0, -1
3369         xi      0, 256
3370
3371 #CHECK: error: invalid operand
3372 #CHECK: xihf    %r0, -1
3373 #CHECK: error: invalid operand
3374 #CHECK: xihf    %r0, 1 << 32
3375
3376         xihf    %r0, -1
3377         xihf    %r0, 1 << 32
3378
3379 #CHECK: error: invalid operand
3380 #CHECK: xilf    %r0, -1
3381 #CHECK: error: invalid operand
3382 #CHECK: xilf    %r0, 1 << 32
3383
3384         xilf    %r0, -1
3385         xilf    %r0, 1 << 32
3386
3387 #CHECK: error: invalid operand
3388 #CHECK: xiy     -524289, 0
3389 #CHECK: error: invalid operand
3390 #CHECK: xiy     524288, 0
3391 #CHECK: error: invalid use of indexed addressing
3392 #CHECK: xiy     0(%r1,%r2), 0
3393 #CHECK: error: invalid operand
3394 #CHECK: xiy     0, -1
3395 #CHECK: error: invalid operand
3396 #CHECK: xiy     0, 256
3397
3398         xiy     -524289, 0
3399         xiy     524288, 0
3400         xiy     0(%r1,%r2), 0
3401         xiy     0, -1
3402         xiy     0, 256
3403
3404 #CHECK: error: {{(instruction requires: distinct-ops)?}}
3405 #CHECK: xrk     %r2,%r3,%r4
3406
3407         xrk     %r2,%r3,%r4
3408
3409 #CHECK: error: invalid operand
3410 #CHECK: xy      %r0, -524289
3411 #CHECK: error: invalid operand
3412 #CHECK: xy      %r0, 524288
3413
3414         xy      %r0, -524289
3415         xy      %r0, 524288