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