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