[SystemZ] Add NRK, ORK and XRK
[oota-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: invalid operand
73 #CHECK: agsi    -524289, 0
74 #CHECK: error: invalid operand
75 #CHECK: agsi    524288, 0
76 #CHECK: error: invalid use of indexed addressing
77 #CHECK: agsi    0(%r1,%r2), 0
78 #CHECK: error: invalid operand
79 #CHECK: agsi    0, -129
80 #CHECK: error: invalid operand
81 #CHECK: agsi    0, 128
82
83         agsi    -524289, 0
84         agsi    524288, 0
85         agsi    0(%r1,%r2), 0
86         agsi    0, -129
87         agsi    0, 128
88
89 #CHECK: error: invalid operand
90 #CHECK: ah      %r0, -1
91 #CHECK: error: invalid operand
92 #CHECK: ah      %r0, 4096
93
94         ah      %r0, -1
95         ah      %r0, 4096
96
97 #CHECK: error: invalid operand
98 #CHECK: ahi     %r0, -32769
99 #CHECK: error: invalid operand
100 #CHECK: ahi     %r0, 32768
101 #CHECK: error: invalid operand
102 #CHECK: ahi     %r0, foo
103
104         ahi     %r0, -32769
105         ahi     %r0, 32768
106         ahi     %r0, foo
107
108 #CHECK: error: invalid operand
109 #CHECK: ahy     %r0, -524289
110 #CHECK: error: invalid operand
111 #CHECK: ahy     %r0, 524288
112
113         ahy     %r0, -524289
114         ahy     %r0, 524288
115
116 #CHECK: error: invalid operand
117 #CHECK: al      %r0, -1
118 #CHECK: error: invalid operand
119 #CHECK: al      %r0, 4096
120
121         al      %r0, -1
122         al      %r0, 4096
123
124 #CHECK: error: invalid operand
125 #CHECK: alc     %r0, -524289
126 #CHECK: error: invalid operand
127 #CHECK: alc     %r0, 524288
128
129         alc     %r0, -524289
130         alc     %r0, 524288
131
132 #CHECK: error: invalid operand
133 #CHECK: alcg    %r0, -524289
134 #CHECK: error: invalid operand
135 #CHECK: alcg    %r0, 524288
136
137         alcg    %r0, -524289
138         alcg    %r0, 524288
139
140 #CHECK: error: invalid operand
141 #CHECK: alfi    %r0, -1
142 #CHECK: error: invalid operand
143 #CHECK: alfi    %r0, (1 << 32)
144
145         alfi    %r0, -1
146         alfi    %r0, (1 << 32)
147
148 #CHECK: error: invalid operand
149 #CHECK: alg     %r0, -524289
150 #CHECK: error: invalid operand
151 #CHECK: alg     %r0, 524288
152
153         alg     %r0, -524289
154         alg     %r0, 524288
155
156 #CHECK: error: invalid operand
157 #CHECK: algf    %r0, -524289
158 #CHECK: error: invalid operand
159 #CHECK: algf    %r0, 524288
160
161         algf    %r0, -524289
162         algf    %r0, 524288
163
164 #CHECK: error: invalid operand
165 #CHECK: algfi   %r0, -1
166 #CHECK: error: invalid operand
167 #CHECK: algfi   %r0, (1 << 32)
168
169         algfi   %r0, -1
170         algfi   %r0, (1 << 32)
171
172 #CHECK: error: invalid operand
173 #CHECK: aly     %r0, -524289
174 #CHECK: error: invalid operand
175 #CHECK: aly     %r0, 524288
176
177         aly     %r0, -524289
178         aly     %r0, 524288
179
180 #CHECK: error: invalid operand
181 #CHECK: asi     -524289, 0
182 #CHECK: error: invalid operand
183 #CHECK: asi     524288, 0
184 #CHECK: error: invalid use of indexed addressing
185 #CHECK: asi     0(%r1,%r2), 0
186 #CHECK: error: invalid operand
187 #CHECK: asi     0, -129
188 #CHECK: error: invalid operand
189 #CHECK: asi     0, 128
190
191         asi     -524289, 0
192         asi     524288, 0
193         asi     0(%r1,%r2), 0
194         asi     0, -129
195         asi     0, 128
196
197 #CHECK: error: invalid register pair
198 #CHECK: axbr    %f0, %f2
199 #CHECK: error: invalid register pair
200 #CHECK: axbr    %f2, %f0
201
202         axbr    %f0, %f2
203         axbr    %f2, %f0
204
205
206 #CHECK: error: invalid operand
207 #CHECK: ay      %r0, -524289
208 #CHECK: error: invalid operand
209 #CHECK: ay      %r0, 524288
210
211         ay      %r0, -524289
212         ay      %r0, 524288
213
214 #CHECK: error: offset out of range
215 #CHECK: bras    %r0, -0x100002
216 #CHECK: error: offset out of range
217 #CHECK: bras    %r0, -1
218 #CHECK: error: offset out of range
219 #CHECK: bras    %r0, 1
220 #CHECK: error: offset out of range
221 #CHECK: bras    %r0, 0x10000
222
223         bras    %r0, -0x100002
224         bras    %r0, -1
225         bras    %r0, 1
226         bras    %r0, 0x10000
227
228 #CHECK: error: offset out of range
229 #CHECK: brasl   %r0, -0x1000000002
230 #CHECK: error: offset out of range
231 #CHECK: brasl   %r0, -1
232 #CHECK: error: offset out of range
233 #CHECK: brasl   %r0, 1
234 #CHECK: error: offset out of range
235 #CHECK: brasl   %r0, 0x100000000
236
237         brasl   %r0, -0x1000000002
238         brasl   %r0, -1
239         brasl   %r0, 1
240         brasl   %r0, 0x100000000
241
242 #CHECK: error: offset out of range
243 #CHECK: brc     0, -0x100002
244 #CHECK: error: offset out of range
245 #CHECK: brc     0, -1
246 #CHECK: error: offset out of range
247 #CHECK: brc     0, 1
248 #CHECK: error: offset out of range
249 #CHECK: brc     0, 0x10000
250
251         brc     0, -0x100002
252         brc     0, -1
253         brc     0, 1
254         brc     0, 0x10000
255
256 #CHECK: error: invalid operand
257 #CHECK: brc     foo, bar
258 #CHECK: error: invalid operand
259 #CHECK: brc     -1, bar
260 #CHECK: error: invalid operand
261 #CHECK: brc     16, bar
262
263         brc     foo, bar
264         brc     -1, bar
265         brc     16, bar
266
267 #CHECK: error: offset out of range
268 #CHECK: brcl    0, -0x1000000002
269 #CHECK: error: offset out of range
270 #CHECK: brcl    0, -1
271 #CHECK: error: offset out of range
272 #CHECK: brcl    0, 1
273 #CHECK: error: offset out of range
274 #CHECK: brcl    0, 0x100000000
275
276         brcl    0, -0x1000000002
277         brcl    0, -1
278         brcl    0, 1
279         brcl    0, 0x100000000
280
281 #CHECK: error: invalid operand
282 #CHECK: brcl    foo, bar
283 #CHECK: error: invalid operand
284 #CHECK: brcl    -1, bar
285 #CHECK: error: invalid operand
286 #CHECK: brcl    16, bar
287
288         brcl    foo, bar
289         brcl    -1, bar
290         brcl    16, bar
291
292 #CHECK: error: invalid operand
293 #CHECK: c       %r0, -1
294 #CHECK: error: invalid operand
295 #CHECK: c       %r0, 4096
296
297         c       %r0, -1
298         c       %r0, 4096
299
300 #CHECK: error: invalid operand
301 #CHECK: cdb     %f0, -1
302 #CHECK: error: invalid operand
303 #CHECK: cdb     %f0, 4096
304
305         cdb     %f0, -1
306         cdb     %f0, 4096
307
308 #CHECK: error: invalid operand
309 #CHECK: ceb     %f0, -1
310 #CHECK: error: invalid operand
311 #CHECK: ceb     %f0, 4096
312
313         ceb     %f0, -1
314         ceb     %f0, 4096
315
316 #CHECK: error: invalid operand
317 #CHECK: cfdbr   %r0, -1, %f0
318 #CHECK: error: invalid operand
319 #CHECK: cfdbr   %r0, 16, %f0
320
321         cfdbr   %r0, -1, %f0
322         cfdbr   %r0, 16, %f0
323
324 #CHECK: error: invalid operand
325 #CHECK: cfebr   %r0, -1, %f0
326 #CHECK: error: invalid operand
327 #CHECK: cfebr   %r0, 16, %f0
328
329         cfebr   %r0, -1, %f0
330         cfebr   %r0, 16, %f0
331
332 #CHECK: error: invalid operand
333 #CHECK: cfi     %r0, (-1 << 31) - 1
334 #CHECK: error: invalid operand
335 #CHECK: cfi     %r0, (1 << 31)
336
337         cfi     %r0, (-1 << 31) - 1
338         cfi     %r0, (1 << 31)
339
340 #CHECK: error: invalid operand
341 #CHECK: cfxbr   %r0, -1, %f0
342 #CHECK: error: invalid operand
343 #CHECK: cfxbr   %r0, 16, %f0
344 #CHECK: error: invalid register pair
345 #CHECK: cfxbr   %r0, 0, %f2
346
347         cfxbr   %r0, -1, %f0
348         cfxbr   %r0, 16, %f0
349         cfxbr   %r0, 0, %f2
350
351
352 #CHECK: error: invalid operand
353 #CHECK: cg      %r0, -524289
354 #CHECK: error: invalid operand
355 #CHECK: cg      %r0, 524288
356
357         cg      %r0, -524289
358         cg      %r0, 524288
359
360 #CHECK: error: invalid operand
361 #CHECK: cgdbr   %r0, -1, %f0
362 #CHECK: error: invalid operand
363 #CHECK: cgdbr   %r0, 16, %f0
364
365         cgdbr   %r0, -1, %f0
366         cgdbr   %r0, 16, %f0
367
368 #CHECK: error: invalid operand
369 #CHECK: cgebr   %r0, -1, %f0
370 #CHECK: error: invalid operand
371 #CHECK: cgebr   %r0, 16, %f0
372
373         cgebr   %r0, -1, %f0
374         cgebr   %r0, 16, %f0
375
376 #CHECK: error: invalid operand
377 #CHECK: cgf     %r0, -524289
378 #CHECK: error: invalid operand
379 #CHECK: cgf     %r0, 524288
380
381         cgf     %r0, -524289
382         cgf     %r0, 524288
383
384 #CHECK: error: invalid operand
385 #CHECK: cgfi    %r0, (-1 << 31) - 1
386 #CHECK: error: invalid operand
387 #CHECK: cgfi    %r0, (1 << 31)
388
389         cgfi    %r0, (-1 << 31) - 1
390         cgfi    %r0, (1 << 31)
391
392 #CHECK: error: offset out of range
393 #CHECK: cgfrl   %r0, -0x1000000002
394 #CHECK: error: offset out of range
395 #CHECK: cgfrl   %r0, -1
396 #CHECK: error: offset out of range
397 #CHECK: cgfrl   %r0, 1
398 #CHECK: error: offset out of range
399 #CHECK: cgfrl   %r0, 0x100000000
400
401         cgfrl   %r0, -0x1000000002
402         cgfrl   %r0, -1
403         cgfrl   %r0, 1
404         cgfrl   %r0, 0x100000000
405
406 #CHECK: error: invalid operand
407 #CHECK: cgh     %r0, -524289
408 #CHECK: error: invalid operand
409 #CHECK: cgh     %r0, 524288
410
411         cgh     %r0, -524289
412         cgh     %r0, 524288
413
414 #CHECK: error: invalid operand
415 #CHECK: cghi    %r0, -32769
416 #CHECK: error: invalid operand
417 #CHECK: cghi    %r0, 32768
418 #CHECK: error: invalid operand
419 #CHECK: cghi    %r0, foo
420
421         cghi    %r0, -32769
422         cghi    %r0, 32768
423         cghi    %r0, foo
424
425 #CHECK: error: offset out of range
426 #CHECK: cghrl   %r0, -0x1000000002
427 #CHECK: error: offset out of range
428 #CHECK: cghrl   %r0, -1
429 #CHECK: error: offset out of range
430 #CHECK: cghrl   %r0, 1
431 #CHECK: error: offset out of range
432 #CHECK: cghrl   %r0, 0x100000000
433
434         cghrl   %r0, -0x1000000002
435         cghrl   %r0, -1
436         cghrl   %r0, 1
437         cghrl   %r0, 0x100000000
438
439 #CHECK: error: invalid operand
440 #CHECK: cghsi   -1, 0
441 #CHECK: error: invalid operand
442 #CHECK: cghsi   4096, 0
443 #CHECK: error: invalid use of indexed addressing
444 #CHECK: cghsi   0(%r1,%r2), 0
445 #CHECK: error: invalid operand
446 #CHECK: cghsi   0, -32769
447 #CHECK: error: invalid operand
448 #CHECK: cghsi   0, 32768
449
450         cghsi   -1, 0
451         cghsi   4096, 0
452         cghsi   0(%r1,%r2), 0
453         cghsi   0, -32769
454         cghsi   0, 32768
455
456 #CHECK: error: invalid operand
457 #CHECK: cgij    %r0, -129, 0, 0
458 #CHECK: error: invalid operand
459 #CHECK: cgij    %r0, 128, 0, 0
460
461         cgij    %r0, -129, 0, 0
462         cgij    %r0, 128, 0, 0
463
464 #CHECK: error: offset out of range
465 #CHECK: cgij    %r0, 0, 0, -0x100002
466 #CHECK: error: offset out of range
467 #CHECK: cgij    %r0, 0, 0, -1
468 #CHECK: error: offset out of range
469 #CHECK: cgij    %r0, 0, 0, 1
470 #CHECK: error: offset out of range
471 #CHECK: cgij    %r0, 0, 0, 0x10000
472
473         cgij    %r0, 0, 0, -0x100002
474         cgij    %r0, 0, 0, -1
475         cgij    %r0, 0, 0, 1
476         cgij    %r0, 0, 0, 0x10000
477
478 #CHECK: error: invalid instruction
479 #CHECK: cgijo   %r0, 0, 0, 0
480 #CHECK: error: invalid instruction
481 #CHECK: cgijno  %r0, 0, 0, 0
482
483         cgijo   %r0, 0, 0, 0
484         cgijno  %r0, 0, 0, 0
485
486 #CHECK: error: offset out of range
487 #CHECK: cgrj    %r0, %r0, 0, -0x100002
488 #CHECK: error: offset out of range
489 #CHECK: cgrj    %r0, %r0, 0, -1
490 #CHECK: error: offset out of range
491 #CHECK: cgrj    %r0, %r0, 0, 1
492 #CHECK: error: offset out of range
493 #CHECK: cgrj    %r0, %r0, 0, 0x10000
494
495         cgrj    %r0, %r0, 0, -0x100002
496         cgrj    %r0, %r0, 0, -1
497         cgrj    %r0, %r0, 0, 1
498         cgrj    %r0, %r0, 0, 0x10000
499
500 #CHECK: error: invalid instruction
501 #CHECK: cgrjo   %r0, %r0, 0, 0
502 #CHECK: error: invalid instruction
503 #CHECK: cgrjno  %r0, %r0, 0, 0
504
505         cgrjo   %r0, %r0, 0, 0
506         cgrjno  %r0, %r0, 0, 0
507
508 #CHECK: error: offset out of range
509 #CHECK: cgrl    %r0, -0x1000000002
510 #CHECK: error: offset out of range
511 #CHECK: cgrl    %r0, -1
512 #CHECK: error: offset out of range
513 #CHECK: cgrl    %r0, 1
514 #CHECK: error: offset out of range
515 #CHECK: cgrl    %r0, 0x100000000
516
517         cgrl    %r0, -0x1000000002
518         cgrl    %r0, -1
519         cgrl    %r0, 1
520         cgrl    %r0, 0x100000000
521
522 #CHECK: error: invalid operand
523 #CHECK: cgxbr   %r0, -1, %f0
524 #CHECK: error: invalid operand
525 #CHECK: cgxbr   %r0, 16, %f0
526 #CHECK: error: invalid register pair
527 #CHECK: cgxbr   %r0, 0, %f2
528
529         cgxbr   %r0, -1, %f0
530         cgxbr   %r0, 16, %f0
531         cgxbr   %r0, 0, %f2
532
533
534 #CHECK: error: invalid operand
535 #CHECK: ch      %r0, -1
536 #CHECK: error: invalid operand
537 #CHECK: ch      %r0, 4096
538
539         ch      %r0, -1
540         ch      %r0, 4096
541
542 #CHECK: error: invalid operand
543 #CHECK: chhsi   -1, 0
544 #CHECK: error: invalid operand
545 #CHECK: chhsi   4096, 0
546 #CHECK: error: invalid use of indexed addressing
547 #CHECK: chhsi   0(%r1,%r2), 0
548 #CHECK: error: invalid operand
549 #CHECK: chhsi   0, -32769
550 #CHECK: error: invalid operand
551 #CHECK: chhsi   0, 32768
552
553         chhsi   -1, 0
554         chhsi   4096, 0
555         chhsi   0(%r1,%r2), 0
556         chhsi   0, -32769
557         chhsi   0, 32768
558
559 #CHECK: error: invalid operand
560 #CHECK: chi     %r0, -32769
561 #CHECK: error: invalid operand
562 #CHECK: chi     %r0, 32768
563 #CHECK: error: invalid operand
564 #CHECK: chi     %r0, foo
565
566         chi     %r0, -32769
567         chi     %r0, 32768
568         chi     %r0, foo
569
570 #CHECK: error: offset out of range
571 #CHECK: chrl    %r0, -0x1000000002
572 #CHECK: error: offset out of range
573 #CHECK: chrl    %r0, -1
574 #CHECK: error: offset out of range
575 #CHECK: chrl    %r0, 1
576 #CHECK: error: offset out of range
577 #CHECK: chrl    %r0, 0x100000000
578
579         chrl    %r0, -0x1000000002
580         chrl    %r0, -1
581         chrl    %r0, 1
582         chrl    %r0, 0x100000000
583
584 #CHECK: error: invalid operand
585 #CHECK: chsi    -1, 0
586 #CHECK: error: invalid operand
587 #CHECK: chsi    4096, 0
588 #CHECK: error: invalid use of indexed addressing
589 #CHECK: chsi    0(%r1,%r2), 0
590 #CHECK: error: invalid operand
591 #CHECK: chsi    0, -32769
592 #CHECK: error: invalid operand
593 #CHECK: chsi    0, 32768
594
595         chsi    -1, 0
596         chsi    4096, 0
597         chsi    0(%r1,%r2), 0
598         chsi    0, -32769
599         chsi    0, 32768
600
601 #CHECK: error: invalid operand
602 #CHECK: chy     %r0, -524289
603 #CHECK: error: invalid operand
604 #CHECK: chy     %r0, 524288
605
606         chy     %r0, -524289
607         chy     %r0, 524288
608
609 #CHECK: error: invalid operand
610 #CHECK: cij     %r0, -129, 0, 0
611 #CHECK: error: invalid operand
612 #CHECK: cij     %r0, 128, 0, 0
613
614         cij     %r0, -129, 0, 0
615         cij     %r0, 128, 0, 0
616
617 #CHECK: error: offset out of range
618 #CHECK: cij     %r0, 0, 0, -0x100002
619 #CHECK: error: offset out of range
620 #CHECK: cij     %r0, 0, 0, -1
621 #CHECK: error: offset out of range
622 #CHECK: cij     %r0, 0, 0, 1
623 #CHECK: error: offset out of range
624 #CHECK: cij     %r0, 0, 0, 0x10000
625
626         cij     %r0, 0, 0, -0x100002
627         cij     %r0, 0, 0, -1
628         cij     %r0, 0, 0, 1
629         cij     %r0, 0, 0, 0x10000
630
631 #CHECK: error: invalid instruction
632 #CHECK: cijo    %r0, 0, 0, 0
633 #CHECK: error: invalid instruction
634 #CHECK: cijno   %r0, 0, 0, 0
635
636         cijo    %r0, 0, 0, 0
637         cijno   %r0, 0, 0, 0
638
639 #CHECK: error: invalid operand
640 #CHECK: cl      %r0, -1
641 #CHECK: error: invalid operand
642 #CHECK: cl      %r0, 4096
643
644         cl      %r0, -1
645         cl      %r0, 4096
646
647 #CHECK: error: invalid operand
648 #CHECK: clfhsi  -1, 0
649 #CHECK: error: invalid operand
650 #CHECK: clfhsi  4096, 0
651 #CHECK: error: invalid use of indexed addressing
652 #CHECK: clfhsi  0(%r1,%r2), 0
653 #CHECK: error: invalid operand
654 #CHECK: clfhsi  0, -1
655 #CHECK: error: invalid operand
656 #CHECK: clfhsi  0, 65536
657
658         clfhsi  -1, 0
659         clfhsi  4096, 0
660         clfhsi  0(%r1,%r2), 0
661         clfhsi  0, -1
662         clfhsi  0, 65536
663
664 #CHECK: error: invalid operand
665 #CHECK: clfi    %r0, -1
666 #CHECK: error: invalid operand
667 #CHECK: clfi    %r0, (1 << 32)
668
669         clfi    %r0, -1
670         clfi    %r0, (1 << 32)
671
672 #CHECK: error: invalid operand
673 #CHECK: clg     %r0, -524289
674 #CHECK: error: invalid operand
675 #CHECK: clg     %r0, 524288
676
677         clg     %r0, -524289
678         clg     %r0, 524288
679
680 #CHECK: error: invalid operand
681 #CHECK: clgf    %r0, -524289
682 #CHECK: error: invalid operand
683 #CHECK: clgf    %r0, 524288
684
685         clgf    %r0, -524289
686         clgf    %r0, 524288
687
688 #CHECK: error: invalid operand
689 #CHECK: clgfi   %r0, -1
690 #CHECK: error: invalid operand
691 #CHECK: clgfi   %r0, (1 << 32)
692
693         clgfi   %r0, -1
694         clgfi   %r0, (1 << 32)
695
696 #CHECK: error: offset out of range
697 #CHECK: clgfrl  %r0, -0x1000000002
698 #CHECK: error: offset out of range
699 #CHECK: clgfrl  %r0, -1
700 #CHECK: error: offset out of range
701 #CHECK: clgfrl  %r0, 1
702 #CHECK: error: offset out of range
703 #CHECK: clgfrl  %r0, 0x100000000
704
705         clgfrl  %r0, -0x1000000002
706         clgfrl  %r0, -1
707         clgfrl  %r0, 1
708         clgfrl  %r0, 0x100000000
709
710 #CHECK: error: offset out of range
711 #CHECK: clghrl  %r0, -0x1000000002
712 #CHECK: error: offset out of range
713 #CHECK: clghrl  %r0, -1
714 #CHECK: error: offset out of range
715 #CHECK: clghrl  %r0, 1
716 #CHECK: error: offset out of range
717 #CHECK: clghrl  %r0, 0x100000000
718
719         clghrl  %r0, -0x1000000002
720         clghrl  %r0, -1
721         clghrl  %r0, 1
722         clghrl  %r0, 0x100000000
723
724 #CHECK: error: invalid operand
725 #CHECK: clghsi  -1, 0
726 #CHECK: error: invalid operand
727 #CHECK: clghsi  4096, 0
728 #CHECK: error: invalid use of indexed addressing
729 #CHECK: clghsi  0(%r1,%r2), 0
730 #CHECK: error: invalid operand
731 #CHECK: clghsi  0, -1
732 #CHECK: error: invalid operand
733 #CHECK: clghsi  0, 65536
734
735         clghsi  -1, 0
736         clghsi  4096, 0
737         clghsi  0(%r1,%r2), 0
738         clghsi  0, -1
739         clghsi  0, 65536
740
741 #CHECK: error: offset out of range
742 #CHECK: clgrl   %r0, -0x1000000002
743 #CHECK: error: offset out of range
744 #CHECK: clgrl   %r0, -1
745 #CHECK: error: offset out of range
746 #CHECK: clgrl   %r0, 1
747 #CHECK: error: offset out of range
748 #CHECK: clgrl   %r0, 0x100000000
749
750         clgrl   %r0, -0x1000000002
751         clgrl   %r0, -1
752         clgrl   %r0, 1
753         clgrl   %r0, 0x100000000
754
755 #CHECK: error: invalid operand
756 #CHECK: clhhsi  -1, 0
757 #CHECK: error: invalid operand
758 #CHECK: clhhsi  4096, 0
759 #CHECK: error: invalid use of indexed addressing
760 #CHECK: clhhsi  0(%r1,%r2), 0
761 #CHECK: error: invalid operand
762 #CHECK: clhhsi  0, -1
763 #CHECK: error: invalid operand
764 #CHECK: clhhsi  0, 65536
765
766         clhhsi  -1, 0
767         clhhsi  4096, 0
768         clhhsi  0(%r1,%r2), 0
769         clhhsi  0, -1
770         clhhsi  0, 65536
771
772 #CHECK: error: offset out of range
773 #CHECK: clhrl   %r0, -0x1000000002
774 #CHECK: error: offset out of range
775 #CHECK: clhrl   %r0, -1
776 #CHECK: error: offset out of range
777 #CHECK: clhrl   %r0, 1
778 #CHECK: error: offset out of range
779 #CHECK: clhrl   %r0, 0x100000000
780
781         clhrl   %r0, -0x1000000002
782         clhrl   %r0, -1
783         clhrl   %r0, 1
784         clhrl   %r0, 0x100000000
785
786 #CHECK: error: invalid operand
787 #CHECK: cli     -1, 0
788 #CHECK: error: invalid operand
789 #CHECK: cli     4096, 0
790 #CHECK: error: invalid use of indexed addressing
791 #CHECK: cli     0(%r1,%r2), 0
792 #CHECK: error: invalid operand
793 #CHECK: cli     0, -1
794 #CHECK: error: invalid operand
795 #CHECK: cli     0, 256
796
797         cli     -1, 0
798         cli     4096, 0
799         cli     0(%r1,%r2), 0
800         cli     0, -1
801         cli     0, 256
802
803 #CHECK: error: invalid operand
804 #CHECK: cliy    -524289, 0
805 #CHECK: error: invalid operand
806 #CHECK: cliy    524288, 0
807 #CHECK: error: invalid use of indexed addressing
808 #CHECK: cliy    0(%r1,%r2), 0
809 #CHECK: error: invalid operand
810 #CHECK: cliy    0, -1
811 #CHECK: error: invalid operand
812 #CHECK: cliy    0, 256
813
814         cliy    -524289, 0
815         cliy    524288, 0
816         cliy    0(%r1,%r2), 0
817         cliy    0, -1
818         cliy    0, 256
819
820 #CHECK: error: offset out of range
821 #CHECK: clrl    %r0, -0x1000000002
822 #CHECK: error: offset out of range
823 #CHECK: clrl    %r0, -1
824 #CHECK: error: offset out of range
825 #CHECK: clrl    %r0, 1
826 #CHECK: error: offset out of range
827 #CHECK: clrl    %r0, 0x100000000
828
829         clrl    %r0, -0x1000000002
830         clrl    %r0, -1
831         clrl    %r0, 1
832         clrl    %r0, 0x100000000
833
834 #CHECK: error: invalid operand
835 #CHECK: cly     %r0, -524289
836 #CHECK: error: invalid operand
837 #CHECK: cly     %r0, 524288
838
839         cly     %r0, -524289
840         cly     %r0, 524288
841
842 #CHECK: error: offset out of range
843 #CHECK: crj     %r0, %r0, 0, -0x100002
844 #CHECK: error: offset out of range
845 #CHECK: crj     %r0, %r0, 0, -1
846 #CHECK: error: offset out of range
847 #CHECK: crj     %r0, %r0, 0, 1
848 #CHECK: error: offset out of range
849 #CHECK: crj     %r0, %r0, 0, 0x10000
850
851         crj     %r0, %r0, 0, -0x100002
852         crj     %r0, %r0, 0, -1
853         crj     %r0, %r0, 0, 1
854         crj     %r0, %r0, 0, 0x10000
855
856 #CHECK: error: invalid instruction
857 #CHECK: crjo    %r0, %r0, 0, 0
858 #CHECK: error: invalid instruction
859 #CHECK: crjno   %r0, %r0, 0, 0
860
861         crjo    %r0, %r0, 0, 0
862         crjno   %r0, %r0, 0, 0
863
864 #CHECK: error: offset out of range
865 #CHECK: crl     %r0, -0x1000000002
866 #CHECK: error: offset out of range
867 #CHECK: crl     %r0, -1
868 #CHECK: error: offset out of range
869 #CHECK: crl     %r0, 1
870 #CHECK: error: offset out of range
871 #CHECK: crl     %r0, 0x100000000
872
873         crl     %r0, -0x1000000002
874         crl     %r0, -1
875         crl     %r0, 1
876         crl     %r0, 0x100000000
877
878 #CHECK: error: invalid operand
879 #CHECK: cs      %r0, %r0, -1
880 #CHECK: error: invalid operand
881 #CHECK: cs      %r0, %r0, 4096
882 #CHECK: error: invalid use of indexed addressing
883 #CHECK: cs      %r0, %r0, 0(%r1,%r2)
884
885         cs      %r0, %r0, -1
886         cs      %r0, %r0, 4096
887         cs      %r0, %r0, 0(%r1,%r2)
888
889 #CHECK: error: invalid operand
890 #CHECK: csg     %r0, %r0, -524289
891 #CHECK: error: invalid operand
892 #CHECK: csg     %r0, %r0, 524288
893 #CHECK: error: invalid use of indexed addressing
894 #CHECK: csg     %r0, %r0, 0(%r1,%r2)
895
896         csg     %r0, %r0, -524289
897         csg     %r0, %r0, 524288
898         csg     %r0, %r0, 0(%r1,%r2)
899
900 #CHECK: error: invalid operand
901 #CHECK: csy     %r0, %r0, -524289
902 #CHECK: error: invalid operand
903 #CHECK: csy     %r0, %r0, 524288
904 #CHECK: error: invalid use of indexed addressing
905 #CHECK: csy     %r0, %r0, 0(%r1,%r2)
906
907         csy     %r0, %r0, -524289
908         csy     %r0, %r0, 524288
909         csy     %r0, %r0, 0(%r1,%r2)
910
911 #CHECK: error: invalid register pair
912 #CHECK: cxbr    %f0, %f2
913 #CHECK: error: invalid register pair
914 #CHECK: cxbr    %f2, %f0
915
916         cxbr    %f0, %f2
917         cxbr    %f2, %f0
918
919 #CHECK: error: invalid register pair
920 #CHECK: cxfbr   %f2, %r0
921
922         cxfbr   %f2, %r0
923
924 #CHECK: error: invalid register pair
925 #CHECK: cxgbr   %f2, %r0
926
927         cxgbr   %f2, %r0
928
929 #CHECK: error: invalid operand
930 #CHECK: cy      %r0, -524289
931 #CHECK: error: invalid operand
932 #CHECK: cy      %r0, 524288
933
934         cy      %r0, -524289
935         cy      %r0, 524288
936
937 #CHECK: error: invalid operand
938 #CHECK: ddb     %f0, -1
939 #CHECK: error: invalid operand
940 #CHECK: ddb     %f0, 4096
941
942         ddb     %f0, -1
943         ddb     %f0, 4096
944
945 #CHECK: error: invalid operand
946 #CHECK: deb     %f0, -1
947 #CHECK: error: invalid operand
948 #CHECK: deb     %f0, 4096
949
950         deb     %f0, -1
951         deb     %f0, 4096
952
953 #CHECK: error: invalid operand
954 #CHECK: dl      %r0, -524289
955 #CHECK: error: invalid operand
956 #CHECK: dl      %r0, 524288
957 #CHECK: error: invalid register pair
958 #CHECK: dl      %r1, 0
959
960         dl      %r0, -524289
961         dl      %r0, 524288
962         dl      %r1, 0
963
964 #CHECK: error: invalid operand
965 #CHECK: dlg     %r0, -524289
966 #CHECK: error: invalid operand
967 #CHECK: dlg     %r0, 524288
968 #CHECK: error: invalid register pair
969 #CHECK: dlg     %r1, 0
970
971         dlg     %r0, -524289
972         dlg     %r0, 524288
973         dlg     %r1, 0
974
975 #CHECK: error: invalid register pair
976 #CHECK: dlgr    %r1, %r0
977
978         dlgr    %r1, %r0
979
980 #CHECK: error: invalid register pair
981 #CHECK: dlr     %r1, %r0
982
983         dlr     %r1, %r0
984
985 #CHECK: error: invalid operand
986 #CHECK: dsg     %r0, -524289
987 #CHECK: error: invalid operand
988 #CHECK: dsg     %r0, 524288
989 #CHECK: error: invalid register pair
990 #CHECK: dsg     %r1, 0
991
992         dsg     %r0, -524289
993         dsg     %r0, 524288
994         dsg     %r1, 0
995
996 #CHECK: error: invalid operand
997 #CHECK: dsgf    %r0, -524289
998 #CHECK: error: invalid operand
999 #CHECK: dsgf    %r0, 524288
1000 #CHECK: error: invalid register pair
1001 #CHECK: dsgf    %r1, 0
1002
1003         dsgf    %r0, -524289
1004         dsgf    %r0, 524288
1005         dsgf    %r1, 0
1006
1007 #CHECK: error: invalid register pair
1008 #CHECK: dsgfr   %r1, %r0
1009
1010         dsgfr   %r1, %r0
1011
1012 #CHECK: error: invalid register pair
1013 #CHECK: dsgr    %r1, %r0
1014
1015         dsgr    %r1, %r0
1016
1017 #CHECK: error: invalid register pair
1018 #CHECK: dxbr    %f0, %f2
1019 #CHECK: error: invalid register pair
1020 #CHECK: dxbr    %f2, %f0
1021
1022         dxbr    %f0, %f2
1023         dxbr    %f2, %f0
1024
1025 #CHECK: error: invalid operand
1026 #CHECK: fidbr   %f0, -1, %f0
1027 #CHECK: error: invalid operand
1028 #CHECK: fidbr   %f0, 16, %f0
1029
1030         fidbr   %f0, -1, %f0
1031         fidbr   %f0, 16, %f0
1032
1033 #CHECK: error: invalid operand
1034 #CHECK: fiebr   %f0, -1, %f0
1035 #CHECK: error: invalid operand
1036 #CHECK: fiebr   %f0, 16, %f0
1037
1038         fiebr   %f0, -1, %f0
1039         fiebr   %f0, 16, %f0
1040
1041 #CHECK: error: invalid operand
1042 #CHECK: fixbr   %f0, -1, %f0
1043 #CHECK: error: invalid operand
1044 #CHECK: fixbr   %f0, 16, %f0
1045 #CHECK: error: invalid register pair
1046 #CHECK: fixbr   %f0, 0, %f2
1047 #CHECK: error: invalid register pair
1048 #CHECK: fixbr   %f2, 0, %f0
1049
1050         fixbr   %f0, -1, %f0
1051         fixbr   %f0, 16, %f0
1052         fixbr   %f0, 0, %f2
1053         fixbr   %f2, 0, %f0
1054
1055 #CHECK: error: invalid register pair
1056 #CHECK: flogr   %r1, %r0
1057
1058         flogr   %r1, %r0
1059
1060 #CHECK: error: invalid operand
1061 #CHECK: ic      %r0, -1
1062 #CHECK: error: invalid operand
1063 #CHECK: ic      %r0, 4096
1064
1065         ic      %r0, -1
1066         ic      %r0, 4096
1067
1068 #CHECK: error: invalid operand
1069 #CHECK: icy     %r0, -524289
1070 #CHECK: error: invalid operand
1071 #CHECK: icy     %r0, 524288
1072
1073         icy     %r0, -524289
1074         icy     %r0, 524288
1075
1076 #CHECK: error: invalid operand
1077 #CHECK: iihf    %r0, -1
1078 #CHECK: error: invalid operand
1079 #CHECK: iihf    %r0, 1 << 32
1080
1081         iihf    %r0, -1
1082         iihf    %r0, 1 << 32
1083
1084 #CHECK: error: invalid operand
1085 #CHECK: iihh    %r0, -1
1086 #CHECK: error: invalid operand
1087 #CHECK: iihh    %r0, 0x10000
1088
1089         iihh    %r0, -1
1090         iihh    %r0, 0x10000
1091
1092 #CHECK: error: invalid operand
1093 #CHECK: iihl    %r0, -1
1094 #CHECK: error: invalid operand
1095 #CHECK: iihl    %r0, 0x10000
1096
1097         iihl    %r0, -1
1098         iihl    %r0, 0x10000
1099
1100 #CHECK: error: invalid operand
1101 #CHECK: iilf    %r0, -1
1102 #CHECK: error: invalid operand
1103 #CHECK: iilf    %r0, 1 << 32
1104
1105         iilf    %r0, -1
1106         iilf    %r0, 1 << 32
1107
1108 #CHECK: error: invalid operand
1109 #CHECK: iilh    %r0, -1
1110 #CHECK: error: invalid operand
1111 #CHECK: iilh    %r0, 0x10000
1112
1113         iilh    %r0, -1
1114         iilh    %r0, 0x10000
1115
1116 #CHECK: error: invalid operand
1117 #CHECK: iill    %r0, -1
1118 #CHECK: error: invalid operand
1119 #CHECK: iill    %r0, 0x10000
1120
1121         iill    %r0, -1
1122         iill    %r0, 0x10000
1123
1124 #CHECK: error: invalid operand
1125 #CHECK: l       %r0, -1
1126 #CHECK: error: invalid operand
1127 #CHECK: l       %r0, 4096
1128
1129         l       %r0, -1
1130         l       %r0, 4096
1131
1132 #CHECK: error: invalid operand
1133 #CHECK: la      %r0, -1
1134 #CHECK: error: invalid operand
1135 #CHECK: la      %r0, 4096
1136
1137         la      %r0, -1
1138         la      %r0, 4096
1139
1140 #CHECK: error: offset out of range
1141 #CHECK: larl    %r0, -0x1000000002
1142 #CHECK: error: offset out of range
1143 #CHECK: larl    %r0, -1
1144 #CHECK: error: offset out of range
1145 #CHECK: larl    %r0, 1
1146 #CHECK: error: offset out of range
1147 #CHECK: larl    %r0, 0x100000000
1148
1149         larl    %r0, -0x1000000002
1150         larl    %r0, -1
1151         larl    %r0, 1
1152         larl    %r0, 0x100000000
1153
1154 #CHECK: error: invalid operand
1155 #CHECK: lay     %r0, -524289
1156 #CHECK: error: invalid operand
1157 #CHECK: lay     %r0, 524288
1158
1159         lay     %r0, -524289
1160         lay     %r0, 524288
1161
1162 #CHECK: error: invalid operand
1163 #CHECK: lb      %r0, -524289
1164 #CHECK: error: invalid operand
1165 #CHECK: lb      %r0, 524288
1166
1167         lb      %r0, -524289
1168         lb      %r0, 524288
1169
1170 #CHECK: error: invalid register pair
1171 #CHECK: lcxbr   %f0, %f2
1172 #CHECK: error: invalid register pair
1173 #CHECK: lcxbr   %f2, %f0
1174
1175         lcxbr   %f0, %f2
1176         lcxbr   %f2, %f0
1177
1178 #CHECK: error: invalid operand
1179 #CHECK: ld      %f0, -1
1180 #CHECK: error: invalid operand
1181 #CHECK: ld      %f0, 4096
1182
1183         ld      %f0, -1
1184         ld      %f0, 4096
1185
1186 #CHECK: error: invalid operand
1187 #CHECK: ldeb    %f0, -1
1188 #CHECK: error: invalid operand
1189 #CHECK: ldeb    %f0, 4096
1190
1191         ldeb    %f0, -1
1192         ldeb    %f0, 4096
1193
1194 #CHECK: error: invalid register pair
1195 #CHECK: ldxbr   %f0, %f2
1196 #CHECK: error: invalid register pair
1197 #CHECK: ldxbr   %f2, %f0
1198
1199         ldxbr   %f0, %f2
1200         ldxbr   %f2, %f0
1201
1202 #CHECK: error: invalid operand
1203 #CHECK: ldy     %f0, -524289
1204 #CHECK: error: invalid operand
1205 #CHECK: ldy     %f0, 524288
1206
1207         ldy     %f0, -524289
1208         ldy     %f0, 524288
1209
1210 #CHECK: error: invalid operand
1211 #CHECK: le      %f0, -1
1212 #CHECK: error: invalid operand
1213 #CHECK: le      %f0, 4096
1214
1215         le      %f0, -1
1216         le      %f0, 4096
1217
1218 #CHECK: error: invalid register pair
1219 #CHECK: lexbr   %f0, %f2
1220 #CHECK: error: invalid register pair
1221 #CHECK: lexbr   %f2, %f0
1222
1223         lexbr   %f0, %f2
1224         lexbr   %f2, %f0
1225
1226 #CHECK: error: invalid operand
1227 #CHECK: ley     %f0, -524289
1228 #CHECK: error: invalid operand
1229 #CHECK: ley     %f0, 524288
1230
1231         ley     %f0, -524289
1232         ley     %f0, 524288
1233
1234 #CHECK: error: invalid operand
1235 #CHECK: lg      %r0, -524289
1236 #CHECK: error: invalid operand
1237 #CHECK: lg      %r0, 524288
1238
1239         lg      %r0, -524289
1240         lg      %r0, 524288
1241
1242 #CHECK: error: invalid operand
1243 #CHECK: lgb     %r0, -524289
1244 #CHECK: error: invalid operand
1245 #CHECK: lgb     %r0, 524288
1246
1247         lgb     %r0, -524289
1248         lgb     %r0, 524288
1249
1250 #CHECK: error: invalid operand
1251 #CHECK: lgf     %r0, -524289
1252 #CHECK: error: invalid operand
1253 #CHECK: lgf     %r0, 524288
1254
1255         lgf     %r0, -524289
1256         lgf     %r0, 524288
1257
1258 #CHECK: error: invalid operand
1259 #CHECK: lgfi    %r0, (-1 << 31) - 1
1260 #CHECK: error: invalid operand
1261 #CHECK: lgfi    %r0, (1 << 31)
1262
1263         lgfi    %r0, (-1 << 31) - 1
1264         lgfi    %r0, (1 << 31)
1265
1266 #CHECK: error: offset out of range
1267 #CHECK: lgfrl   %r0, -0x1000000002
1268 #CHECK: error: offset out of range
1269 #CHECK: lgfrl   %r0, -1
1270 #CHECK: error: offset out of range
1271 #CHECK: lgfrl   %r0, 1
1272 #CHECK: error: offset out of range
1273 #CHECK: lgfrl   %r0, 0x100000000
1274
1275         lgfrl   %r0, -0x1000000002
1276         lgfrl   %r0, -1
1277         lgfrl   %r0, 1
1278         lgfrl   %r0, 0x100000000
1279
1280 #CHECK: error: invalid operand
1281 #CHECK: lgh     %r0, -524289
1282 #CHECK: error: invalid operand
1283 #CHECK: lgh     %r0, 524288
1284
1285         lgh     %r0, -524289
1286         lgh     %r0, 524288
1287
1288 #CHECK: error: invalid operand
1289 #CHECK: lghi    %r0, -32769
1290 #CHECK: error: invalid operand
1291 #CHECK: lghi    %r0, 32768
1292 #CHECK: error: invalid operand
1293 #CHECK: lghi    %r0, foo
1294
1295         lghi    %r0, -32769
1296         lghi    %r0, 32768
1297         lghi    %r0, foo
1298
1299 #CHECK: error: offset out of range
1300 #CHECK: lghrl   %r0, -0x1000000002
1301 #CHECK: error: offset out of range
1302 #CHECK: lghrl   %r0, -1
1303 #CHECK: error: offset out of range
1304 #CHECK: lghrl   %r0, 1
1305 #CHECK: error: offset out of range
1306 #CHECK: lghrl   %r0, 0x100000000
1307
1308         lghrl   %r0, -0x1000000002
1309         lghrl   %r0, -1
1310         lghrl   %r0, 1
1311         lghrl   %r0, 0x100000000
1312
1313 #CHECK: error: offset out of range
1314 #CHECK: lgrl    %r0, -0x1000000002
1315 #CHECK: error: offset out of range
1316 #CHECK: lgrl    %r0, -1
1317 #CHECK: error: offset out of range
1318 #CHECK: lgrl    %r0, 1
1319 #CHECK: error: offset out of range
1320 #CHECK: lgrl    %r0, 0x100000000
1321
1322         lgrl    %r0, -0x1000000002
1323         lgrl    %r0, -1
1324         lgrl    %r0, 1
1325         lgrl    %r0, 0x100000000
1326
1327 #CHECK: error: invalid operand
1328 #CHECK: lh      %r0, -1
1329 #CHECK: error: invalid operand
1330 #CHECK: lh      %r0, 4096
1331
1332         lh      %r0, -1
1333         lh      %r0, 4096
1334
1335 #CHECK: error: invalid operand
1336 #CHECK: lhi     %r0, -32769
1337 #CHECK: error: invalid operand
1338 #CHECK: lhi     %r0, 32768
1339 #CHECK: error: invalid operand
1340 #CHECK: lhi     %r0, foo
1341
1342         lhi     %r0, -32769
1343         lhi     %r0, 32768
1344         lhi     %r0, foo
1345
1346 #CHECK: error: offset out of range
1347 #CHECK: lhrl    %r0, -0x1000000002
1348 #CHECK: error: offset out of range
1349 #CHECK: lhrl    %r0, -1
1350 #CHECK: error: offset out of range
1351 #CHECK: lhrl    %r0, 1
1352 #CHECK: error: offset out of range
1353 #CHECK: lhrl    %r0, 0x100000000
1354
1355         lhrl    %r0, -0x1000000002
1356         lhrl    %r0, -1
1357         lhrl    %r0, 1
1358         lhrl    %r0, 0x100000000
1359
1360 #CHECK: error: invalid operand
1361 #CHECK: lhy     %r0, -524289
1362 #CHECK: error: invalid operand
1363 #CHECK: lhy     %r0, 524288
1364
1365         lhy     %r0, -524289
1366         lhy     %r0, 524288
1367
1368 #CHECK: error: invalid operand
1369 #CHECK: llc     %r0, -524289
1370 #CHECK: error: invalid operand
1371 #CHECK: llc     %r0, 524288
1372
1373         llc     %r0, -524289
1374         llc     %r0, 524288
1375
1376 #CHECK: error: invalid operand
1377 #CHECK: llgc    %r0, -524289
1378 #CHECK: error: invalid operand
1379 #CHECK: llgc    %r0, 524288
1380
1381         llgc    %r0, -524289
1382         llgc    %r0, 524288
1383
1384 #CHECK: error: invalid operand
1385 #CHECK: llgf    %r0, -524289
1386 #CHECK: error: invalid operand
1387 #CHECK: llgf    %r0, 524288
1388
1389         llgf    %r0, -524289
1390         llgf    %r0, 524288
1391
1392 #CHECK: error: offset out of range
1393 #CHECK: llgfrl  %r0, -0x1000000002
1394 #CHECK: error: offset out of range
1395 #CHECK: llgfrl  %r0, -1
1396 #CHECK: error: offset out of range
1397 #CHECK: llgfrl  %r0, 1
1398 #CHECK: error: offset out of range
1399 #CHECK: llgfrl  %r0, 0x100000000
1400
1401         llgfrl  %r0, -0x1000000002
1402         llgfrl  %r0, -1
1403         llgfrl  %r0, 1
1404         llgfrl  %r0, 0x100000000
1405
1406 #CHECK: error: invalid operand
1407 #CHECK: llgh    %r0, -524289
1408 #CHECK: error: invalid operand
1409 #CHECK: llgh    %r0, 524288
1410
1411         llgh    %r0, -524289
1412         llgh    %r0, 524288
1413
1414 #CHECK: error: offset out of range
1415 #CHECK: llghrl  %r0, -0x1000000002
1416 #CHECK: error: offset out of range
1417 #CHECK: llghrl  %r0, -1
1418 #CHECK: error: offset out of range
1419 #CHECK: llghrl  %r0, 1
1420 #CHECK: error: offset out of range
1421 #CHECK: llghrl  %r0, 0x100000000
1422
1423         llghrl  %r0, -0x1000000002
1424         llghrl  %r0, -1
1425         llghrl  %r0, 1
1426         llghrl  %r0, 0x100000000
1427
1428 #CHECK: error: invalid operand
1429 #CHECK: llh     %r0, -524289
1430 #CHECK: error: invalid operand
1431 #CHECK: llh     %r0, 524288
1432
1433         llh     %r0, -524289
1434         llh     %r0, 524288
1435
1436 #CHECK: error: offset out of range
1437 #CHECK: llhrl   %r0, -0x1000000002
1438 #CHECK: error: offset out of range
1439 #CHECK: llhrl   %r0, -1
1440 #CHECK: error: offset out of range
1441 #CHECK: llhrl   %r0, 1
1442 #CHECK: error: offset out of range
1443 #CHECK: llhrl   %r0, 0x100000000
1444
1445         llhrl   %r0, -0x1000000002
1446         llhrl   %r0, -1
1447         llhrl   %r0, 1
1448         llhrl   %r0, 0x100000000
1449
1450 #CHECK: error: invalid operand
1451 #CHECK: llihf   %r0, -1
1452 #CHECK: error: invalid operand
1453 #CHECK: llihf   %r0, 1 << 32
1454
1455         llihf   %r0, -1
1456         llihf   %r0, 1 << 32
1457
1458 #CHECK: error: invalid operand
1459 #CHECK: llihh   %r0, -1
1460 #CHECK: error: invalid operand
1461 #CHECK: llihh   %r0, 0x10000
1462
1463         llihh   %r0, -1
1464         llihh   %r0, 0x10000
1465
1466 #CHECK: error: invalid operand
1467 #CHECK: llihl   %r0, -1
1468 #CHECK: error: invalid operand
1469 #CHECK: llihl   %r0, 0x10000
1470
1471         llihl   %r0, -1
1472         llihl   %r0, 0x10000
1473
1474 #CHECK: error: invalid operand
1475 #CHECK: llilf   %r0, -1
1476 #CHECK: error: invalid operand
1477 #CHECK: llilf   %r0, 1 << 32
1478
1479         llilf   %r0, -1
1480         llilf   %r0, 1 << 32
1481
1482 #CHECK: error: invalid operand
1483 #CHECK: llilh   %r0, -1
1484 #CHECK: error: invalid operand
1485 #CHECK: llilh   %r0, 0x10000
1486
1487         llilh   %r0, -1
1488         llilh   %r0, 0x10000
1489
1490 #CHECK: error: invalid operand
1491 #CHECK: llill   %r0, -1
1492 #CHECK: error: invalid operand
1493 #CHECK: llill   %r0, 0x10000
1494
1495         llill   %r0, -1
1496         llill   %r0, 0x10000
1497
1498 #CHECK: error: invalid operand
1499 #CHECK: lmg     %r0, %r0, -524289
1500 #CHECK: error: invalid operand
1501 #CHECK: lmg     %r0, %r0, 524288
1502 #CHECK: error: invalid use of indexed addressing
1503 #CHECK: lmg     %r0, %r0, 0(%r1,%r2)
1504
1505         lmg     %r0, %r0, -524289
1506         lmg     %r0, %r0, 524288
1507         lmg     %r0, %r0, 0(%r1,%r2)
1508
1509 #CHECK: error: invalid register pair
1510 #CHECK: lnxbr   %f0, %f2
1511 #CHECK: error: invalid register pair
1512 #CHECK: lnxbr   %f2, %f0
1513
1514         lnxbr   %f0, %f2
1515         lnxbr   %f2, %f0
1516
1517 #CHECK: error: invalid register pair
1518 #CHECK: lpxbr   %f0, %f2
1519 #CHECK: error: invalid register pair
1520 #CHECK: lpxbr   %f2, %f0
1521
1522         lpxbr   %f0, %f2
1523         lpxbr   %f2, %f0
1524
1525 #CHECK: error: offset out of range
1526 #CHECK: lrl     %r0, -0x1000000002
1527 #CHECK: error: offset out of range
1528 #CHECK: lrl     %r0, -1
1529 #CHECK: error: offset out of range
1530 #CHECK: lrl     %r0, 1
1531 #CHECK: error: offset out of range
1532 #CHECK: lrl     %r0, 0x100000000
1533
1534         lrl     %r0, -0x1000000002
1535         lrl     %r0, -1
1536         lrl     %r0, 1
1537         lrl     %r0, 0x100000000
1538
1539 #CHECK: error: invalid operand
1540 #CHECK: lrv     %r0, -524289
1541 #CHECK: error: invalid operand
1542 #CHECK: lrv     %r0, 524288
1543
1544         lrv     %r0, -524289
1545         lrv     %r0, 524288
1546
1547 #CHECK: error: invalid operand
1548 #CHECK: lrvg    %r0, -524289
1549 #CHECK: error: invalid operand
1550 #CHECK: lrvg    %r0, 524288
1551
1552         lrvg    %r0, -524289
1553         lrvg    %r0, 524288
1554
1555 #CHECK: error: invalid register pair
1556 #CHECK: lxr     %f0, %f2
1557 #CHECK: error: invalid register pair
1558 #CHECK: lxr     %f2, %f0
1559
1560         lxr     %f0, %f2
1561         lxr     %f2, %f0
1562
1563 #CHECK: error: invalid operand
1564 #CHECK: ly      %r0, -524289
1565 #CHECK: error: invalid operand
1566 #CHECK: ly      %r0, 524288
1567
1568         ly      %r0, -524289
1569         ly      %r0, 524288
1570
1571 #CHECK: error: invalid register pair
1572 #CHECK: lzxr    %f2
1573
1574         lzxr    %f2
1575
1576 #CHECK: error: invalid operand
1577 #CHECK: madb    %f0, %f0, -1
1578 #CHECK: error: invalid operand
1579 #CHECK: madb    %f0, %f0, 4096
1580
1581         madb    %f0, %f0, -1
1582         madb    %f0, %f0, 4096
1583
1584 #CHECK: error: invalid operand
1585 #CHECK: maeb    %f0, %f0, -1
1586 #CHECK: error: invalid operand
1587 #CHECK: maeb    %f0, %f0, 4096
1588
1589         maeb    %f0, %f0, -1
1590         maeb    %f0, %f0, 4096
1591
1592 #CHECK: error: invalid operand
1593 #CHECK: mdb     %f0, -1
1594 #CHECK: error: invalid operand
1595 #CHECK: mdb     %f0, 4096
1596
1597         mdb     %f0, -1
1598         mdb     %f0, 4096
1599
1600 #CHECK: error: invalid operand
1601 #CHECK: mdeb    %f0, -1
1602 #CHECK: error: invalid operand
1603 #CHECK: mdeb    %f0, 4096
1604
1605         mdeb    %f0, -1
1606         mdeb    %f0, 4096
1607
1608 #CHECK: error: invalid operand
1609 #CHECK: meeb    %f0, -1
1610 #CHECK: error: invalid operand
1611 #CHECK: meeb    %f0, 4096
1612
1613         meeb    %f0, -1
1614         meeb    %f0, 4096
1615
1616 #CHECK: error: invalid operand
1617 #CHECK: mghi    %r0, -32769
1618 #CHECK: error: invalid operand
1619 #CHECK: mghi    %r0, 32768
1620 #CHECK: error: invalid operand
1621 #CHECK: mghi    %r0, foo
1622
1623         mghi    %r0, -32769
1624         mghi    %r0, 32768
1625         mghi    %r0, foo
1626
1627 #CHECK: error: invalid operand
1628 #CHECK: mh      %r0, -1
1629 #CHECK: error: invalid operand
1630 #CHECK: mh      %r0, 4096
1631
1632         mh      %r0, -1
1633         mh      %r0, 4096
1634
1635 #CHECK: error: invalid operand
1636 #CHECK: mhi     %r0, -32769
1637 #CHECK: error: invalid operand
1638 #CHECK: mhi     %r0, 32768
1639 #CHECK: error: invalid operand
1640 #CHECK: mhi     %r0, foo
1641
1642         mhi     %r0, -32769
1643         mhi     %r0, 32768
1644         mhi     %r0, foo
1645
1646 #CHECK: error: invalid operand
1647 #CHECK: mhy     %r0, -524289
1648 #CHECK: error: invalid operand
1649 #CHECK: mhy     %r0, 524288
1650
1651         mhy     %r0, -524289
1652         mhy     %r0, 524288
1653
1654 #CHECK: error: invalid operand
1655 #CHECK: mlg     %r0, -524289
1656 #CHECK: error: invalid operand
1657 #CHECK: mlg     %r0, 524288
1658 #CHECK: error: invalid register pair
1659 #CHECK: mlg     %r1, 0
1660
1661         mlg     %r0, -524289
1662         mlg     %r0, 524288
1663         mlg     %r1, 0
1664
1665 #CHECK: error: invalid register pair
1666 #CHECK: mlgr    %r1, %r0
1667
1668         mlgr    %r1, %r0
1669
1670 #CHECK: error: invalid operand
1671 #CHECK: ms      %r0, -1
1672 #CHECK: error: invalid operand
1673 #CHECK: ms      %r0, 4096
1674
1675         ms      %r0, -1
1676         ms      %r0, 4096
1677
1678 #CHECK: error: invalid operand
1679 #CHECK: msdb    %f0, %f0, -1
1680 #CHECK: error: invalid operand
1681 #CHECK: msdb    %f0, %f0, 4096
1682
1683         msdb    %f0, %f0, -1
1684         msdb    %f0, %f0, 4096
1685
1686 #CHECK: error: invalid operand
1687 #CHECK: mseb    %f0, %f0, -1
1688 #CHECK: error: invalid operand
1689 #CHECK: mseb    %f0, %f0, 4096
1690
1691         mseb    %f0, %f0, -1
1692         mseb    %f0, %f0, 4096
1693
1694 #CHECK: error: invalid operand
1695 #CHECK: msfi    %r0, (-1 << 31) - 1
1696 #CHECK: error: invalid operand
1697 #CHECK: msfi    %r0, (1 << 31)
1698
1699         msfi    %r0, (-1 << 31) - 1
1700         msfi    %r0, (1 << 31)
1701
1702 #CHECK: error: invalid operand
1703 #CHECK: msg     %r0, -524289
1704 #CHECK: error: invalid operand
1705 #CHECK: msg     %r0, 524288
1706
1707         msg     %r0, -524289
1708         msg     %r0, 524288
1709
1710 #CHECK: error: invalid operand
1711 #CHECK: msgf    %r0, -524289
1712 #CHECK: error: invalid operand
1713 #CHECK: msgf    %r0, 524288
1714
1715         msgf    %r0, -524289
1716         msgf    %r0, 524288
1717
1718 #CHECK: error: invalid operand
1719 #CHECK: msgfi   %r0, (-1 << 31) - 1
1720 #CHECK: error: invalid operand
1721 #CHECK: msgfi   %r0, (1 << 31)
1722
1723         msgfi   %r0, (-1 << 31) - 1
1724         msgfi   %r0, (1 << 31)
1725
1726 #CHECK: error: invalid operand
1727 #CHECK: msy     %r0, -524289
1728 #CHECK: error: invalid operand
1729 #CHECK: msy     %r0, 524288
1730
1731         msy     %r0, -524289
1732         msy     %r0, 524288
1733
1734 #CHECK: error: missing length in address
1735 #CHECK: mvc     0, 0
1736 #CHECK: error: missing length in address
1737 #CHECK: mvc     0(%r1), 0(%r1)
1738 #CHECK: error: invalid use of length addressing
1739 #CHECK: mvc     0(1,%r1), 0(2,%r1)
1740 #CHECK: error: invalid operand
1741 #CHECK: mvc     0(0,%r1), 0(%r1)
1742 #CHECK: error: invalid operand
1743 #CHECK: mvc     0(257,%r1), 0(%r1)
1744 #CHECK: error: invalid operand
1745 #CHECK: mvc     -1(1,%r1), 0(%r1)
1746 #CHECK: error: invalid operand
1747 #CHECK: mvc     4096(1,%r1), 0(%r1)
1748 #CHECK: error: invalid operand
1749 #CHECK: mvc     0(1,%r1), -1(%r1)
1750 #CHECK: error: invalid operand
1751 #CHECK: mvc     0(1,%r1), 4096(%r1)
1752 #CHECK: error: %r0 used in an address
1753 #CHECK: mvc     0(1,%r0), 0(%r1)
1754 #CHECK: error: %r0 used in an address
1755 #CHECK: mvc     0(1,%r1), 0(%r0)
1756 #CHECK: error: invalid use of indexed addressing
1757 #CHECK: mvc     0(%r1,%r2), 0(%r1)
1758 #CHECK: error: invalid use of indexed addressing
1759 #CHECK: mvc     0(1,%r2), 0(%r1,%r2)
1760 #CHECK: error: unknown token in expression
1761 #CHECK: mvc     0(-), 0
1762
1763         mvc     0, 0
1764         mvc     0(%r1), 0(%r1)
1765         mvc     0(1,%r1), 0(2,%r1)
1766         mvc     0(0,%r1), 0(%r1)
1767         mvc     0(257,%r1), 0(%r1)
1768         mvc     -1(1,%r1), 0(%r1)
1769         mvc     4096(1,%r1), 0(%r1)
1770         mvc     0(1,%r1), -1(%r1)
1771         mvc     0(1,%r1), 4096(%r1)
1772         mvc     0(1,%r0), 0(%r1)
1773         mvc     0(1,%r1), 0(%r0)
1774         mvc     0(%r1,%r2), 0(%r1)
1775         mvc     0(1,%r2), 0(%r1,%r2)
1776         mvc     0(-), 0
1777
1778 #CHECK: error: invalid operand
1779 #CHECK: mvghi   -1, 0
1780 #CHECK: error: invalid operand
1781 #CHECK: mvghi   4096, 0
1782 #CHECK: error: invalid use of indexed addressing
1783 #CHECK: mvghi   0(%r1,%r2), 0
1784 #CHECK: error: invalid operand
1785 #CHECK: mvghi   0, -32769
1786 #CHECK: error: invalid operand
1787 #CHECK: mvghi   0, 32768
1788
1789         mvghi   -1, 0
1790         mvghi   4096, 0
1791         mvghi   0(%r1,%r2), 0
1792         mvghi   0, -32769
1793         mvghi   0, 32768
1794
1795 #CHECK: error: invalid operand
1796 #CHECK: mvhhi   -1, 0
1797 #CHECK: error: invalid operand
1798 #CHECK: mvhhi   4096, 0
1799 #CHECK: error: invalid use of indexed addressing
1800 #CHECK: mvhhi   0(%r1,%r2), 0
1801 #CHECK: error: invalid operand
1802 #CHECK: mvhhi   0, -32769
1803 #CHECK: error: invalid operand
1804 #CHECK: mvhhi   0, 32768
1805
1806         mvhhi   -1, 0
1807         mvhhi   4096, 0
1808         mvhhi   0(%r1,%r2), 0
1809         mvhhi   0, -32769
1810         mvhhi   0, 32768
1811
1812 #CHECK: error: invalid operand
1813 #CHECK: mvhi    -1, 0
1814 #CHECK: error: invalid operand
1815 #CHECK: mvhi    4096, 0
1816 #CHECK: error: invalid use of indexed addressing
1817 #CHECK: mvhi    0(%r1,%r2), 0
1818 #CHECK: error: invalid operand
1819 #CHECK: mvhi    0, -32769
1820 #CHECK: error: invalid operand
1821 #CHECK: mvhi    0, 32768
1822
1823         mvhi    -1, 0
1824         mvhi    4096, 0
1825         mvhi    0(%r1,%r2), 0
1826         mvhi    0, -32769
1827         mvhi    0, 32768
1828
1829 #CHECK: error: invalid operand
1830 #CHECK: mvi     -1, 0
1831 #CHECK: error: invalid operand
1832 #CHECK: mvi     4096, 0
1833 #CHECK: error: invalid use of indexed addressing
1834 #CHECK: mvi     0(%r1,%r2), 0
1835 #CHECK: error: invalid operand
1836 #CHECK: mvi     0, -1
1837 #CHECK: error: invalid operand
1838 #CHECK: mvi     0, 256
1839
1840         mvi     -1, 0
1841         mvi     4096, 0
1842         mvi     0(%r1,%r2), 0
1843         mvi     0, -1
1844         mvi     0, 256
1845
1846 #CHECK: error: invalid operand
1847 #CHECK: mviy    -524289, 0
1848 #CHECK: error: invalid operand
1849 #CHECK: mviy    524288, 0
1850 #CHECK: error: invalid use of indexed addressing
1851 #CHECK: mviy    0(%r1,%r2), 0
1852 #CHECK: error: invalid operand
1853 #CHECK: mviy    0, -1
1854 #CHECK: error: invalid operand
1855 #CHECK: mviy    0, 256
1856
1857         mviy    -524289, 0
1858         mviy    524288, 0
1859         mviy    0(%r1,%r2), 0
1860         mviy    0, -1
1861         mviy    0, 256
1862
1863 #CHECK: error: invalid register pair
1864 #CHECK: mxbr    %f0, %f2
1865 #CHECK: error: invalid register pair
1866 #CHECK: mxbr    %f2, %f0
1867
1868         mxbr    %f0, %f2
1869         mxbr    %f2, %f0
1870
1871 #CHECK: error: invalid register pair
1872 #CHECK: mxdb    %f2, 0
1873 #CHECK: error: invalid operand
1874 #CHECK: mxdb    %f0, -1
1875 #CHECK: error: invalid operand
1876 #CHECK: mxdb    %f0, 4096
1877
1878         mxdb    %f2, 0
1879         mxdb    %f0, -1
1880         mxdb    %f0, 4096
1881
1882 #CHECK: error: invalid register pair
1883 #CHECK: mxdbr   %f2, %f0
1884
1885         mxdbr   %f2, %f0
1886
1887 #CHECK: error: invalid operand
1888 #CHECK: n       %r0, -1
1889 #CHECK: error: invalid operand
1890 #CHECK: n       %r0, 4096
1891
1892         n       %r0, -1
1893         n       %r0, 4096
1894
1895 #CHECK: error: invalid operand
1896 #CHECK: ng      %r0, -524289
1897 #CHECK: error: invalid operand
1898 #CHECK: ng      %r0, 524288
1899
1900         ng      %r0, -524289
1901         ng      %r0, 524288
1902
1903 #CHECK: error: invalid operand
1904 #CHECK: ni      -1, 0
1905 #CHECK: error: invalid operand
1906 #CHECK: ni      4096, 0
1907 #CHECK: error: invalid use of indexed addressing
1908 #CHECK: ni      0(%r1,%r2), 0
1909 #CHECK: error: invalid operand
1910 #CHECK: ni      0, -1
1911 #CHECK: error: invalid operand
1912 #CHECK: ni      0, 256
1913
1914         ni      -1, 0
1915         ni      4096, 0
1916         ni      0(%r1,%r2), 0
1917         ni      0, -1
1918         ni      0, 256
1919
1920 #CHECK: error: invalid operand
1921 #CHECK: nihf    %r0, -1
1922 #CHECK: error: invalid operand
1923 #CHECK: nihf    %r0, 1 << 32
1924
1925         nihf    %r0, -1
1926         nihf    %r0, 1 << 32
1927
1928 #CHECK: error: invalid operand
1929 #CHECK: nihh    %r0, -1
1930 #CHECK: error: invalid operand
1931 #CHECK: nihh    %r0, 0x10000
1932
1933         nihh    %r0, -1
1934         nihh    %r0, 0x10000
1935
1936 #CHECK: error: invalid operand
1937 #CHECK: nihl    %r0, -1
1938 #CHECK: error: invalid operand
1939 #CHECK: nihl    %r0, 0x10000
1940
1941         nihl    %r0, -1
1942         nihl    %r0, 0x10000
1943
1944 #CHECK: error: invalid operand
1945 #CHECK: nilf    %r0, -1
1946 #CHECK: error: invalid operand
1947 #CHECK: nilf    %r0, 1 << 32
1948
1949         nilf    %r0, -1
1950         nilf    %r0, 1 << 32
1951
1952 #CHECK: error: invalid operand
1953 #CHECK: nilh    %r0, -1
1954 #CHECK: error: invalid operand
1955 #CHECK: nilh    %r0, 0x10000
1956
1957         nilh    %r0, -1
1958         nilh    %r0, 0x10000
1959
1960 #CHECK: error: invalid operand
1961 #CHECK: nill    %r0, -1
1962 #CHECK: error: invalid operand
1963 #CHECK: nill    %r0, 0x10000
1964
1965         nill    %r0, -1
1966         nill    %r0, 0x10000
1967
1968 #CHECK: error: invalid operand
1969 #CHECK: niy     -524289, 0
1970 #CHECK: error: invalid operand
1971 #CHECK: niy     524288, 0
1972 #CHECK: error: invalid use of indexed addressing
1973 #CHECK: niy     0(%r1,%r2), 0
1974 #CHECK: error: invalid operand
1975 #CHECK: niy     0, -1
1976 #CHECK: error: invalid operand
1977 #CHECK: niy     0, 256
1978
1979         niy     -524289, 0
1980         niy     524288, 0
1981         niy     0(%r1,%r2), 0
1982         niy     0, -1
1983         niy     0, 256
1984
1985 #CHECK: error: {{(instruction requires: distinct-ops)?}}
1986 #CHECK: nrk     %r2,%r3,%r4
1987
1988         nrk     %r2,%r3,%r4
1989
1990 #CHECK: error: invalid operand
1991 #CHECK: ny      %r0, -524289
1992 #CHECK: error: invalid operand
1993 #CHECK: ny      %r0, 524288
1994
1995         ny      %r0, -524289
1996         ny      %r0, 524288
1997
1998 #CHECK: error: invalid operand
1999 #CHECK: o       %r0, -1
2000 #CHECK: error: invalid operand
2001 #CHECK: o       %r0, 4096
2002
2003         o       %r0, -1
2004         o       %r0, 4096
2005
2006 #CHECK: error: invalid operand
2007 #CHECK: og      %r0, -524289
2008 #CHECK: error: invalid operand
2009 #CHECK: og      %r0, 524288
2010
2011         og      %r0, -524289
2012         og      %r0, 524288
2013
2014 #CHECK: error: invalid operand
2015 #CHECK: oi      -1, 0
2016 #CHECK: error: invalid operand
2017 #CHECK: oi      4096, 0
2018 #CHECK: error: invalid use of indexed addressing
2019 #CHECK: oi      0(%r1,%r2), 0
2020 #CHECK: error: invalid operand
2021 #CHECK: oi      0, -1
2022 #CHECK: error: invalid operand
2023 #CHECK: oi      0, 256
2024
2025         oi      -1, 0
2026         oi      4096, 0
2027         oi      0(%r1,%r2), 0
2028         oi      0, -1
2029         oi      0, 256
2030
2031 #CHECK: error: invalid operand
2032 #CHECK: oihf    %r0, -1
2033 #CHECK: error: invalid operand
2034 #CHECK: oihf    %r0, 1 << 32
2035
2036         oihf    %r0, -1
2037         oihf    %r0, 1 << 32
2038
2039 #CHECK: error: invalid operand
2040 #CHECK: oihh    %r0, -1
2041 #CHECK: error: invalid operand
2042 #CHECK: oihh    %r0, 0x10000
2043
2044         oihh    %r0, -1
2045         oihh    %r0, 0x10000
2046
2047 #CHECK: error: invalid operand
2048 #CHECK: oihl    %r0, -1
2049 #CHECK: error: invalid operand
2050 #CHECK: oihl    %r0, 0x10000
2051
2052         oihl    %r0, -1
2053         oihl    %r0, 0x10000
2054
2055 #CHECK: error: invalid operand
2056 #CHECK: oilf    %r0, -1
2057 #CHECK: error: invalid operand
2058 #CHECK: oilf    %r0, 1 << 32
2059
2060         oilf    %r0, -1
2061         oilf    %r0, 1 << 32
2062
2063 #CHECK: error: invalid operand
2064 #CHECK: oilh    %r0, -1
2065 #CHECK: error: invalid operand
2066 #CHECK: oilh    %r0, 0x10000
2067
2068         oilh    %r0, -1
2069         oilh    %r0, 0x10000
2070
2071 #CHECK: error: invalid operand
2072 #CHECK: oill    %r0, -1
2073 #CHECK: error: invalid operand
2074 #CHECK: oill    %r0, 0x10000
2075
2076         oill    %r0, -1
2077         oill    %r0, 0x10000
2078
2079 #CHECK: error: invalid operand
2080 #CHECK: oiy     -524289, 0
2081 #CHECK: error: invalid operand
2082 #CHECK: oiy     524288, 0
2083 #CHECK: error: invalid use of indexed addressing
2084 #CHECK: oiy     0(%r1,%r2), 0
2085 #CHECK: error: invalid operand
2086 #CHECK: oiy     0, -1
2087 #CHECK: error: invalid operand
2088 #CHECK: oiy     0, 256
2089
2090         oiy     -524289, 0
2091         oiy     524288, 0
2092         oiy     0(%r1,%r2), 0
2093         oiy     0, -1
2094         oiy     0, 256
2095
2096 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2097 #CHECK: ork     %r2,%r3,%r4
2098
2099         ork     %r2,%r3,%r4
2100
2101 #CHECK: error: invalid operand
2102 #CHECK: oy      %r0, -524289
2103 #CHECK: error: invalid operand
2104 #CHECK: oy      %r0, 524288
2105
2106         oy      %r0, -524289
2107         oy      %r0, 524288
2108
2109 #CHECK: error: invalid operand
2110 #CHECK: risbg   %r0,%r0,0,0,-1
2111 #CHECK: error: invalid operand
2112 #CHECK: risbg   %r0,%r0,0,0,64
2113 #CHECK: error: invalid operand
2114 #CHECK: risbg   %r0,%r0,0,-1,0
2115 #CHECK: error: invalid operand
2116 #CHECK: risbg   %r0,%r0,0,256,0
2117 #CHECK: error: invalid operand
2118 #CHECK: risbg   %r0,%r0,-1,0,0
2119 #CHECK: error: invalid operand
2120 #CHECK: risbg   %r0,%r0,256,0,0
2121
2122         risbg   %r0,%r0,0,0,-1
2123         risbg   %r0,%r0,0,0,64
2124         risbg   %r0,%r0,0,-1,0
2125         risbg   %r0,%r0,0,256,0
2126         risbg   %r0,%r0,-1,0,0
2127         risbg   %r0,%r0,256,0,0
2128
2129 #CHECK: error: invalid operand
2130 #CHECK: rnsbg   %r0,%r0,0,0,-1
2131 #CHECK: error: invalid operand
2132 #CHECK: rnsbg   %r0,%r0,0,0,64
2133 #CHECK: error: invalid operand
2134 #CHECK: rnsbg   %r0,%r0,0,-1,0
2135 #CHECK: error: invalid operand
2136 #CHECK: rnsbg   %r0,%r0,0,256,0
2137 #CHECK: error: invalid operand
2138 #CHECK: rnsbg   %r0,%r0,-1,0,0
2139 #CHECK: error: invalid operand
2140 #CHECK: rnsbg   %r0,%r0,256,0,0
2141
2142         rnsbg   %r0,%r0,0,0,-1
2143         rnsbg   %r0,%r0,0,0,64
2144         rnsbg   %r0,%r0,0,-1,0
2145         rnsbg   %r0,%r0,0,256,0
2146         rnsbg   %r0,%r0,-1,0,0
2147         rnsbg   %r0,%r0,256,0,0
2148
2149 #CHECK: error: invalid operand
2150 #CHECK: rosbg   %r0,%r0,0,0,-1
2151 #CHECK: error: invalid operand
2152 #CHECK: rosbg   %r0,%r0,0,0,64
2153 #CHECK: error: invalid operand
2154 #CHECK: rosbg   %r0,%r0,0,-1,0
2155 #CHECK: error: invalid operand
2156 #CHECK: rosbg   %r0,%r0,0,256,0
2157 #CHECK: error: invalid operand
2158 #CHECK: rosbg   %r0,%r0,-1,0,0
2159 #CHECK: error: invalid operand
2160 #CHECK: rosbg   %r0,%r0,256,0,0
2161
2162         rosbg   %r0,%r0,0,0,-1
2163         rosbg   %r0,%r0,0,0,64
2164         rosbg   %r0,%r0,0,-1,0
2165         rosbg   %r0,%r0,0,256,0
2166         rosbg   %r0,%r0,-1,0,0
2167         rosbg   %r0,%r0,256,0,0
2168
2169 #CHECK: error: invalid operand
2170 #CHECK: rxsbg   %r0,%r0,0,0,-1
2171 #CHECK: error: invalid operand
2172 #CHECK: rxsbg   %r0,%r0,0,0,64
2173 #CHECK: error: invalid operand
2174 #CHECK: rxsbg   %r0,%r0,0,-1,0
2175 #CHECK: error: invalid operand
2176 #CHECK: rxsbg   %r0,%r0,0,256,0
2177 #CHECK: error: invalid operand
2178 #CHECK: rxsbg   %r0,%r0,-1,0,0
2179 #CHECK: error: invalid operand
2180 #CHECK: rxsbg   %r0,%r0,256,0,0
2181
2182         rxsbg   %r0,%r0,0,0,-1
2183         rxsbg   %r0,%r0,0,0,64
2184         rxsbg   %r0,%r0,0,-1,0
2185         rxsbg   %r0,%r0,0,256,0
2186         rxsbg   %r0,%r0,-1,0,0
2187         rxsbg   %r0,%r0,256,0,0
2188
2189 #CHECK: error: invalid operand
2190 #CHECK: rll     %r0,%r0,-524289
2191 #CHECK: error: invalid operand
2192 #CHECK: rll     %r0,%r0,524288
2193 #CHECK: error: %r0 used in an address
2194 #CHECK: rll     %r0,%r0,0(%r0)
2195 #CHECK: error: invalid use of indexed addressing
2196 #CHECK: rll     %r0,%r0,0(%r1,%r2)
2197
2198         rll     %r0,%r0,-524289
2199         rll     %r0,%r0,524288
2200         rll     %r0,%r0,0(%r0)
2201         rll     %r0,%r0,0(%r1,%r2)
2202
2203 #CHECK: error: invalid operand
2204 #CHECK: rllg    %r0,%r0,-524289
2205 #CHECK: error: invalid operand
2206 #CHECK: rllg    %r0,%r0,524288
2207 #CHECK: error: %r0 used in an address
2208 #CHECK: rllg    %r0,%r0,0(%r0)
2209 #CHECK: error: invalid use of indexed addressing
2210 #CHECK: rllg    %r0,%r0,0(%r1,%r2)
2211
2212         rllg    %r0,%r0,-524289
2213         rllg    %r0,%r0,524288
2214         rllg    %r0,%r0,0(%r0)
2215         rllg    %r0,%r0,0(%r1,%r2)
2216
2217 #CHECK: error: invalid operand
2218 #CHECK: s       %r0, -1
2219 #CHECK: error: invalid operand
2220 #CHECK: s       %r0, 4096
2221
2222         s       %r0, -1
2223         s       %r0, 4096
2224
2225 #CHECK: error: invalid operand
2226 #CHECK: sdb     %f0, -1
2227 #CHECK: error: invalid operand
2228 #CHECK: sdb     %f0, 4096
2229
2230         sdb     %f0, -1
2231         sdb     %f0, 4096
2232
2233 #CHECK: error: invalid operand
2234 #CHECK: seb     %f0, -1
2235 #CHECK: error: invalid operand
2236 #CHECK: seb     %f0, 4096
2237
2238         seb     %f0, -1
2239         seb     %f0, 4096
2240
2241 #CHECK: error: invalid operand
2242 #CHECK: sg      %r0, -524289
2243 #CHECK: error: invalid operand
2244 #CHECK: sg      %r0, 524288
2245
2246         sg      %r0, -524289
2247         sg      %r0, 524288
2248
2249 #CHECK: error: invalid operand
2250 #CHECK: sgf     %r0, -524289
2251 #CHECK: error: invalid operand
2252 #CHECK: sgf     %r0, 524288
2253
2254         sgf     %r0, -524289
2255         sgf     %r0, 524288
2256
2257 #CHECK: error: invalid operand
2258 #CHECK: sh      %r0, -1
2259 #CHECK: error: invalid operand
2260 #CHECK: sh      %r0, 4096
2261
2262         sh      %r0, -1
2263         sh      %r0, 4096
2264
2265 #CHECK: error: invalid operand
2266 #CHECK: shy     %r0, -524289
2267 #CHECK: error: invalid operand
2268 #CHECK: shy     %r0, 524288
2269
2270         shy     %r0, -524289
2271         shy     %r0, 524288
2272
2273 #CHECK: error: invalid operand
2274 #CHECK: sl      %r0, -1
2275 #CHECK: error: invalid operand
2276 #CHECK: sl      %r0, 4096
2277
2278         sl      %r0, -1
2279         sl      %r0, 4096
2280
2281 #CHECK: error: invalid operand
2282 #CHECK: slb     %r0, -524289
2283 #CHECK: error: invalid operand
2284 #CHECK: slb     %r0, 524288
2285
2286         slb     %r0, -524289
2287         slb     %r0, 524288
2288
2289 #CHECK: error: invalid operand
2290 #CHECK: slbg    %r0, -524289
2291 #CHECK: error: invalid operand
2292 #CHECK: slbg    %r0, 524288
2293
2294         slbg    %r0, -524289
2295         slbg    %r0, 524288
2296
2297 #CHECK: error: invalid operand
2298 #CHECK: slfi    %r0, -1
2299 #CHECK: error: invalid operand
2300 #CHECK: slfi    %r0, (1 << 32)
2301
2302         slfi    %r0, -1
2303         slfi    %r0, (1 << 32)
2304
2305 #CHECK: error: invalid operand
2306 #CHECK: slg     %r0, -524289
2307 #CHECK: error: invalid operand
2308 #CHECK: slg     %r0, 524288
2309
2310         slg     %r0, -524289
2311         slg     %r0, 524288
2312
2313 #CHECK: error: invalid operand
2314 #CHECK: slgf    %r0, -524289
2315 #CHECK: error: invalid operand
2316 #CHECK: slgf    %r0, 524288
2317
2318         slgf    %r0, -524289
2319         slgf    %r0, 524288
2320
2321 #CHECK: error: invalid operand
2322 #CHECK: slgfi   %r0, -1
2323 #CHECK: error: invalid operand
2324 #CHECK: slgfi   %r0, (1 << 32)
2325
2326         slgfi   %r0, -1
2327         slgfi   %r0, (1 << 32)
2328
2329 #CHECK: error: invalid operand
2330 #CHECK: sll     %r0,-1
2331 #CHECK: error: invalid operand
2332 #CHECK: sll     %r0,4096
2333 #CHECK: error: %r0 used in an address
2334 #CHECK: sll     %r0,0(%r0)
2335 #CHECK: error: invalid use of indexed addressing
2336 #CHECK: sll     %r0,0(%r1,%r2)
2337
2338         sll     %r0,-1
2339         sll     %r0,4096
2340         sll     %r0,0(%r0)
2341         sll     %r0,0(%r1,%r2)
2342
2343 #CHECK: error: invalid operand
2344 #CHECK: sllg    %r0,%r0,-524289
2345 #CHECK: error: invalid operand
2346 #CHECK: sllg    %r0,%r0,524288
2347 #CHECK: error: %r0 used in an address
2348 #CHECK: sllg    %r0,%r0,0(%r0)
2349 #CHECK: error: invalid use of indexed addressing
2350 #CHECK: sllg    %r0,%r0,0(%r1,%r2)
2351
2352         sllg    %r0,%r0,-524289
2353         sllg    %r0,%r0,524288
2354         sllg    %r0,%r0,0(%r0)
2355         sllg    %r0,%r0,0(%r1,%r2)
2356
2357 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2358 #CHECK: sllk    %r2,%r3,4(%r5)
2359
2360         sllk    %r2,%r3,4(%r5)
2361
2362 #CHECK: error: invalid operand
2363 #CHECK: sly     %r0, -524289
2364 #CHECK: error: invalid operand
2365 #CHECK: sly     %r0, 524288
2366
2367         sly     %r0, -524289
2368         sly     %r0, 524288
2369
2370 #CHECK: error: invalid operand
2371 #CHECK: sqdb    %f0, -1
2372 #CHECK: error: invalid operand
2373 #CHECK: sqdb    %f0, 4096
2374
2375         sqdb    %f0, -1
2376         sqdb    %f0, 4096
2377
2378 #CHECK: error: invalid operand
2379 #CHECK: sqeb    %f0, -1
2380 #CHECK: error: invalid operand
2381 #CHECK: sqeb    %f0, 4096
2382
2383         sqeb    %f0, -1
2384         sqeb    %f0, 4096
2385
2386 #CHECK: error: invalid register pair
2387 #CHECK: sqxbr   %f0, %f2
2388 #CHECK: error: invalid register pair
2389 #CHECK: sqxbr   %f2, %f0
2390
2391         sqxbr   %f0, %f2
2392         sqxbr   %f2, %f0
2393
2394 #CHECK: error: invalid operand
2395 #CHECK: sra     %r0,-1
2396 #CHECK: error: invalid operand
2397 #CHECK: sra     %r0,4096
2398 #CHECK: error: %r0 used in an address
2399 #CHECK: sra     %r0,0(%r0)
2400 #CHECK: error: invalid use of indexed addressing
2401 #CHECK: sra     %r0,0(%r1,%r2)
2402
2403         sra     %r0,-1
2404         sra     %r0,4096
2405         sra     %r0,0(%r0)
2406         sra     %r0,0(%r1,%r2)
2407
2408 #CHECK: error: invalid operand
2409 #CHECK: srag    %r0,%r0,-524289
2410 #CHECK: error: invalid operand
2411 #CHECK: srag    %r0,%r0,524288
2412 #CHECK: error: %r0 used in an address
2413 #CHECK: srag    %r0,%r0,0(%r0)
2414 #CHECK: error: invalid use of indexed addressing
2415 #CHECK: srag    %r0,%r0,0(%r1,%r2)
2416
2417         srag    %r0,%r0,-524289
2418         srag    %r0,%r0,524288
2419         srag    %r0,%r0,0(%r0)
2420         srag    %r0,%r0,0(%r1,%r2)
2421
2422 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2423 #CHECK: srak    %r2,%r3,4(%r5)
2424
2425         srak    %r2,%r3,4(%r5)
2426
2427 #CHECK: error: invalid operand
2428 #CHECK: srl     %r0,-1
2429 #CHECK: error: invalid operand
2430 #CHECK: srl     %r0,4096
2431 #CHECK: error: %r0 used in an address
2432 #CHECK: srl     %r0,0(%r0)
2433 #CHECK: error: invalid use of indexed addressing
2434 #CHECK: srl     %r0,0(%r1,%r2)
2435
2436         srl     %r0,-1
2437         srl     %r0,4096
2438         srl     %r0,0(%r0)
2439         srl     %r0,0(%r1,%r2)
2440
2441 #CHECK: error: invalid operand
2442 #CHECK: srlg    %r0,%r0,-524289
2443 #CHECK: error: invalid operand
2444 #CHECK: srlg    %r0,%r0,524288
2445 #CHECK: error: %r0 used in an address
2446 #CHECK: srlg    %r0,%r0,0(%r0)
2447 #CHECK: error: invalid use of indexed addressing
2448 #CHECK: srlg    %r0,%r0,0(%r1,%r2)
2449
2450         srlg    %r0,%r0,-524289
2451         srlg    %r0,%r0,524288
2452         srlg    %r0,%r0,0(%r0)
2453         srlg    %r0,%r0,0(%r1,%r2)
2454
2455 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2456 #CHECK: srlk    %r2,%r3,4(%r5)
2457
2458         srlk    %r2,%r3,4(%r5)
2459
2460 #CHECK: error: invalid operand
2461 #CHECK: st      %r0, -1
2462 #CHECK: error: invalid operand
2463 #CHECK: st      %r0, 4096
2464
2465         st      %r0, -1
2466         st      %r0, 4096
2467
2468 #CHECK: error: invalid operand
2469 #CHECK: stc     %r0, -1
2470 #CHECK: error: invalid operand
2471 #CHECK: stc     %r0, 4096
2472
2473         stc     %r0, -1
2474         stc     %r0, 4096
2475
2476 #CHECK: error: invalid operand
2477 #CHECK: stcy    %r0, -524289
2478 #CHECK: error: invalid operand
2479 #CHECK: stcy    %r0, 524288
2480
2481         stcy    %r0, -524289
2482         stcy    %r0, 524288
2483
2484 #CHECK: error: invalid operand
2485 #CHECK: std     %f0, -1
2486 #CHECK: error: invalid operand
2487 #CHECK: std     %f0, 4096
2488
2489         std     %f0, -1
2490         std     %f0, 4096
2491
2492 #CHECK: error: invalid operand
2493 #CHECK: stdy    %f0, -524289
2494 #CHECK: error: invalid operand
2495 #CHECK: stdy    %f0, 524288
2496
2497         stdy    %f0, -524289
2498         stdy    %f0, 524288
2499
2500 #CHECK: error: invalid operand
2501 #CHECK: ste     %f0, -1
2502 #CHECK: error: invalid operand
2503 #CHECK: ste     %f0, 4096
2504
2505         ste     %f0, -1
2506         ste     %f0, 4096
2507
2508 #CHECK: error: invalid operand
2509 #CHECK: stey    %f0, -524289
2510 #CHECK: error: invalid operand
2511 #CHECK: stey    %f0, 524288
2512
2513         stey    %f0, -524289
2514         stey    %f0, 524288
2515
2516 #CHECK: error: invalid operand
2517 #CHECK: stg     %r0, -524289
2518 #CHECK: error: invalid operand
2519 #CHECK: stg     %r0, 524288
2520
2521         stg     %r0, -524289
2522         stg     %r0, 524288
2523
2524 #CHECK: error: offset out of range
2525 #CHECK: stgrl   %r0, -0x1000000002
2526 #CHECK: error: offset out of range
2527 #CHECK: stgrl   %r0, -1
2528 #CHECK: error: offset out of range
2529 #CHECK: stgrl   %r0, 1
2530 #CHECK: error: offset out of range
2531 #CHECK: stgrl   %r0, 0x100000000
2532
2533         stgrl   %r0, -0x1000000002
2534         stgrl   %r0, -1
2535         stgrl   %r0, 1
2536         stgrl   %r0, 0x100000000
2537
2538 #CHECK: error: invalid operand
2539 #CHECK: sth     %r0, -1
2540 #CHECK: error: invalid operand
2541 #CHECK: sth     %r0, 4096
2542
2543         sth     %r0, -1
2544         sth     %r0, 4096
2545
2546 #CHECK: error: offset out of range
2547 #CHECK: sthrl   %r0, -0x1000000002
2548 #CHECK: error: offset out of range
2549 #CHECK: sthrl   %r0, -1
2550 #CHECK: error: offset out of range
2551 #CHECK: sthrl   %r0, 1
2552 #CHECK: error: offset out of range
2553 #CHECK: sthrl   %r0, 0x100000000
2554
2555         sthrl   %r0, -0x1000000002
2556         sthrl   %r0, -1
2557         sthrl   %r0, 1
2558         sthrl   %r0, 0x100000000
2559
2560 #CHECK: error: invalid operand
2561 #CHECK: sthy    %r0, -524289
2562 #CHECK: error: invalid operand
2563 #CHECK: sthy    %r0, 524288
2564
2565         sthy    %r0, -524289
2566         sthy    %r0, 524288
2567
2568 #CHECK: error: invalid operand
2569 #CHECK: stmg    %r0, %r0, -524289
2570 #CHECK: error: invalid operand
2571 #CHECK: stmg    %r0, %r0, 524288
2572 #CHECK: error: invalid use of indexed addressing
2573 #CHECK: stmg    %r0, %r0, 0(%r1,%r2)
2574
2575         stmg    %r0, %r0, -524289
2576         stmg    %r0, %r0, 524288
2577         stmg    %r0, %r0, 0(%r1,%r2)
2578
2579 #CHECK: error: offset out of range
2580 #CHECK: strl    %r0, -0x1000000002
2581 #CHECK: error: offset out of range
2582 #CHECK: strl    %r0, -1
2583 #CHECK: error: offset out of range
2584 #CHECK: strl    %r0, 1
2585 #CHECK: error: offset out of range
2586 #CHECK: strl    %r0, 0x100000000
2587
2588         strl    %r0, -0x1000000002
2589         strl    %r0, -1
2590         strl    %r0, 1
2591         strl    %r0, 0x100000000
2592
2593 #CHECK: error: invalid operand
2594 #CHECK: strv    %r0, -524289
2595 #CHECK: error: invalid operand
2596 #CHECK: strv    %r0, 524288
2597
2598         strv    %r0, -524289
2599         strv    %r0, 524288
2600
2601 #CHECK: error: invalid operand
2602 #CHECK: strvg   %r0, -524289
2603 #CHECK: error: invalid operand
2604 #CHECK: strvg   %r0, 524288
2605
2606         strvg   %r0, -524289
2607         strvg   %r0, 524288
2608
2609 #CHECK: error: invalid operand
2610 #CHECK: sty     %r0, -524289
2611 #CHECK: error: invalid operand
2612 #CHECK: sty     %r0, 524288
2613
2614         sty     %r0, -524289
2615         sty     %r0, 524288
2616
2617 #CHECK: error: invalid register pair
2618 #CHECK: sxbr    %f0, %f2
2619 #CHECK: error: invalid register pair
2620 #CHECK: sxbr    %f2, %f0
2621
2622         sxbr    %f0, %f2
2623         sxbr    %f2, %f0
2624
2625 #CHECK: error: invalid operand
2626 #CHECK: sy      %r0, -524289
2627 #CHECK: error: invalid operand
2628 #CHECK: sy      %r0, 524288
2629
2630         sy      %r0, -524289
2631         sy      %r0, 524288
2632
2633 #CHECK: error: invalid operand
2634 #CHECK: x       %r0, -1
2635 #CHECK: error: invalid operand
2636 #CHECK: x       %r0, 4096
2637
2638         x       %r0, -1
2639         x       %r0, 4096
2640
2641 #CHECK: error: invalid operand
2642 #CHECK: xg      %r0, -524289
2643 #CHECK: error: invalid operand
2644 #CHECK: xg      %r0, 524288
2645
2646         xg      %r0, -524289
2647         xg      %r0, 524288
2648
2649 #CHECK: error: invalid operand
2650 #CHECK: xi      -1, 0
2651 #CHECK: error: invalid operand
2652 #CHECK: xi      4096, 0
2653 #CHECK: error: invalid use of indexed addressing
2654 #CHECK: xi      0(%r1,%r2), 0
2655 #CHECK: error: invalid operand
2656 #CHECK: xi      0, -1
2657 #CHECK: error: invalid operand
2658 #CHECK: xi      0, 256
2659
2660         xi      -1, 0
2661         xi      4096, 0
2662         xi      0(%r1,%r2), 0
2663         xi      0, -1
2664         xi      0, 256
2665
2666 #CHECK: error: invalid operand
2667 #CHECK: xihf    %r0, -1
2668 #CHECK: error: invalid operand
2669 #CHECK: xihf    %r0, 1 << 32
2670
2671         xihf    %r0, -1
2672         xihf    %r0, 1 << 32
2673
2674 #CHECK: error: invalid operand
2675 #CHECK: xilf    %r0, -1
2676 #CHECK: error: invalid operand
2677 #CHECK: xilf    %r0, 1 << 32
2678
2679         xilf    %r0, -1
2680         xilf    %r0, 1 << 32
2681
2682 #CHECK: error: invalid operand
2683 #CHECK: xiy     -524289, 0
2684 #CHECK: error: invalid operand
2685 #CHECK: xiy     524288, 0
2686 #CHECK: error: invalid use of indexed addressing
2687 #CHECK: xiy     0(%r1,%r2), 0
2688 #CHECK: error: invalid operand
2689 #CHECK: xiy     0, -1
2690 #CHECK: error: invalid operand
2691 #CHECK: xiy     0, 256
2692
2693         xiy     -524289, 0
2694         xiy     524288, 0
2695         xiy     0(%r1,%r2), 0
2696         xiy     0, -1
2697         xiy     0, 256
2698
2699 #CHECK: error: {{(instruction requires: distinct-ops)?}}
2700 #CHECK: xrk     %r2,%r3,%r4
2701
2702         xrk     %r2,%r3,%r4
2703
2704 #CHECK: error: invalid operand
2705 #CHECK: xy      %r0, -524289
2706 #CHECK: error: invalid operand
2707 #CHECK: xy      %r0, 524288
2708
2709         xy      %r0, -524289
2710         xy      %r0, 524288