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