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