• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# For z196 only.
2# RUN: not llvm-mc -triple s390x-linux-gnu -mcpu=z196 < %s 2> %t
3# RUN: FileCheck < %t %s
4
5#CHECK: error: invalid operand
6#CHECK: aghik	%r0, %r1, -32769
7#CHECK: error: invalid operand
8#CHECK: aghik	%r0, %r1, 32768
9#CHECK: error: invalid operand
10#CHECK: aghik	%r0, %r1, foo
11
12	aghik	%r0, %r1, -32769
13	aghik	%r0, %r1, 32768
14	aghik	%r0, %r1, foo
15
16#CHECK: error: invalid operand
17#CHECK: ahik	%r0, %r1, -32769
18#CHECK: error: invalid operand
19#CHECK: ahik	%r0, %r1, 32768
20#CHECK: error: invalid operand
21#CHECK: ahik	%r0, %r1, foo
22
23	ahik	%r0, %r1, -32769
24	ahik	%r0, %r1, 32768
25	ahik	%r0, %r1, foo
26
27#CHECK: error: invalid operand
28#CHECK: aih	%r0, (-1 << 31) - 1
29#CHECK: error: invalid operand
30#CHECK: aih	%r0, (1 << 31)
31
32	aih	%r0, (-1 << 31) - 1
33	aih	%r0, (1 << 31)
34
35#CHECK: error: invalid operand
36#CHECK: cdlfbr	%f0, 0, %r0, -1
37#CHECK: error: invalid operand
38#CHECK: cdlfbr	%f0, 0, %r0, 16
39#CHECK: error: invalid operand
40#CHECK: cdlfbr	%f0, -1, %r0, 0
41#CHECK: error: invalid operand
42#CHECK: cdlfbr	%f0, 16, %r0, 0
43
44	cdlfbr	%f0, 0, %r0, -1
45	cdlfbr	%f0, 0, %r0, 16
46	cdlfbr	%f0, -1, %r0, 0
47	cdlfbr	%f0, 16, %r0, 0
48
49#CHECK: error: invalid operand
50#CHECK: cdlgbr	%f0, 0, %r0, -1
51#CHECK: error: invalid operand
52#CHECK: cdlgbr	%f0, 0, %r0, 16
53#CHECK: error: invalid operand
54#CHECK: cdlgbr	%f0, -1, %r0, 0
55#CHECK: error: invalid operand
56#CHECK: cdlgbr	%f0, 16, %r0, 0
57
58	cdlgbr	%f0, 0, %r0, -1
59	cdlgbr	%f0, 0, %r0, 16
60	cdlgbr	%f0, -1, %r0, 0
61	cdlgbr	%f0, 16, %r0, 0
62
63#CHECK: error: invalid operand
64#CHECK: celfbr	%f0, 0, %r0, -1
65#CHECK: error: invalid operand
66#CHECK: celfbr	%f0, 0, %r0, 16
67#CHECK: error: invalid operand
68#CHECK: celfbr	%f0, -1, %r0, 0
69#CHECK: error: invalid operand
70#CHECK: celfbr	%f0, 16, %r0, 0
71
72	celfbr	%f0, 0, %r0, -1
73	celfbr	%f0, 0, %r0, 16
74	celfbr	%f0, -1, %r0, 0
75	celfbr	%f0, 16, %r0, 0
76
77#CHECK: error: invalid operand
78#CHECK: celgbr	%f0, 0, %r0, -1
79#CHECK: error: invalid operand
80#CHECK: celgbr	%f0, 0, %r0, 16
81#CHECK: error: invalid operand
82#CHECK: celgbr	%f0, -1, %r0, 0
83#CHECK: error: invalid operand
84#CHECK: celgbr	%f0, 16, %r0, 0
85
86	celgbr	%f0, 0, %r0, -1
87	celgbr	%f0, 0, %r0, 16
88	celgbr	%f0, -1, %r0, 0
89	celgbr	%f0, 16, %r0, 0
90
91#CHECK: error: invalid operand
92#CHECK: chf	%r0, -524289
93#CHECK: error: invalid operand
94#CHECK: chf	%r0, 524288
95
96	chf	%r0, -524289
97	chf	%r0, 524288
98
99#CHECK: error: invalid operand
100#CHECK: cih	%r0, (-1 << 31) - 1
101#CHECK: error: invalid operand
102#CHECK: cih	%r0, (1 << 31)
103
104	cih	%r0, (-1 << 31) - 1
105	cih	%r0, (1 << 31)
106
107#CHECK: error: invalid operand
108#CHECK: clfdbr	%r0, 0, %f0, -1
109#CHECK: error: invalid operand
110#CHECK: clfdbr	%r0, 0, %f0, 16
111#CHECK: error: invalid operand
112#CHECK: clfdbr	%r0, -1, %f0, 0
113#CHECK: error: invalid operand
114#CHECK: clfdbr	%r0, 16, %f0, 0
115
116	clfdbr	%r0, 0, %f0, -1
117	clfdbr	%r0, 0, %f0, 16
118	clfdbr	%r0, -1, %f0, 0
119	clfdbr	%r0, 16, %f0, 0
120
121#CHECK: error: invalid operand
122#CHECK: clfebr	%r0, 0, %f0, -1
123#CHECK: error: invalid operand
124#CHECK: clfebr	%r0, 0, %f0, 16
125#CHECK: error: invalid operand
126#CHECK: clfebr	%r0, -1, %f0, 0
127#CHECK: error: invalid operand
128#CHECK: clfebr	%r0, 16, %f0, 0
129
130	clfebr	%r0, 0, %f0, -1
131	clfebr	%r0, 0, %f0, 16
132	clfebr	%r0, -1, %f0, 0
133	clfebr	%r0, 16, %f0, 0
134
135#CHECK: error: invalid operand
136#CHECK: clfxbr	%r0, 0, %f0, -1
137#CHECK: error: invalid operand
138#CHECK: clfxbr	%r0, 0, %f0, 16
139#CHECK: error: invalid operand
140#CHECK: clfxbr	%r0, -1, %f0, 0
141#CHECK: error: invalid operand
142#CHECK: clfxbr	%r0, 16, %f0, 0
143#CHECK: error: invalid register pair
144#CHECK: clfxbr	%r0, 0, %f14, 0
145
146	clfxbr	%r0, 0, %f0, -1
147	clfxbr	%r0, 0, %f0, 16
148	clfxbr	%r0, -1, %f0, 0
149	clfxbr	%r0, 16, %f0, 0
150	clfxbr	%r0, 0, %f14, 0
151
152#CHECK: error: invalid operand
153#CHECK: clgdbr	%r0, 0, %f0, -1
154#CHECK: error: invalid operand
155#CHECK: clgdbr	%r0, 0, %f0, 16
156#CHECK: error: invalid operand
157#CHECK: clgdbr	%r0, -1, %f0, 0
158#CHECK: error: invalid operand
159#CHECK: clgdbr	%r0, 16, %f0, 0
160
161	clgdbr	%r0, 0, %f0, -1
162	clgdbr	%r0, 0, %f0, 16
163	clgdbr	%r0, -1, %f0, 0
164	clgdbr	%r0, 16, %f0, 0
165
166#CHECK: error: invalid operand
167#CHECK: clgebr	%r0, 0, %f0, -1
168#CHECK: error: invalid operand
169#CHECK: clgebr	%r0, 0, %f0, 16
170#CHECK: error: invalid operand
171#CHECK: clgebr	%r0, -1, %f0, 0
172#CHECK: error: invalid operand
173#CHECK: clgebr	%r0, 16, %f0, 0
174
175	clgebr	%r0, 0, %f0, -1
176	clgebr	%r0, 0, %f0, 16
177	clgebr	%r0, -1, %f0, 0
178	clgebr	%r0, 16, %f0, 0
179
180#CHECK: error: invalid operand
181#CHECK: clgxbr	%r0, 0, %f0, -1
182#CHECK: error: invalid operand
183#CHECK: clgxbr	%r0, 0, %f0, 16
184#CHECK: error: invalid operand
185#CHECK: clgxbr	%r0, -1, %f0, 0
186#CHECK: error: invalid operand
187#CHECK: clgxbr	%r0, 16, %f0, 0
188#CHECK: error: invalid register pair
189#CHECK: clgxbr	%r0, 0, %f14, 0
190
191	clgxbr	%r0, 0, %f0, -1
192	clgxbr	%r0, 0, %f0, 16
193	clgxbr	%r0, -1, %f0, 0
194	clgxbr	%r0, 16, %f0, 0
195	clgxbr	%r0, 0, %f14, 0
196
197#CHECK: error: invalid operand
198#CHECK: clhf	%r0, -524289
199#CHECK: error: invalid operand
200#CHECK: clhf	%r0, 524288
201
202	clhf	%r0, -524289
203	clhf	%r0, 524288
204
205#CHECK: error: invalid operand
206#CHECK: clih	%r0, -1
207#CHECK: error: invalid operand
208#CHECK: clih	%r0, (1 << 32)
209
210	clih	%r0, -1
211	clih	%r0, (1 << 32)
212
213#CHECK: error: invalid operand
214#CHECK: cxlfbr	%f0, 0, %r0, -1
215#CHECK: error: invalid operand
216#CHECK: cxlfbr	%f0, 0, %r0, 16
217#CHECK: error: invalid operand
218#CHECK: cxlfbr	%f0, -1, %r0, 0
219#CHECK: error: invalid operand
220#CHECK: cxlfbr	%f0, 16, %r0, 0
221#CHECK: error: invalid register pair
222#CHECK: cxlfbr	%f2, 0, %r0, 0
223
224	cxlfbr	%f0, 0, %r0, -1
225	cxlfbr	%f0, 0, %r0, 16
226	cxlfbr	%f0, -1, %r0, 0
227	cxlfbr	%f0, 16, %r0, 0
228	cxlfbr	%f2, 0, %r0, 0
229
230#CHECK: error: invalid operand
231#CHECK: cxlgbr	%f0, 0, %r0, -1
232#CHECK: error: invalid operand
233#CHECK: cxlgbr	%f0, 0, %r0, 16
234#CHECK: error: invalid operand
235#CHECK: cxlgbr	%f0, -1, %r0, 0
236#CHECK: error: invalid operand
237#CHECK: cxlgbr	%f0, 16, %r0, 0
238#CHECK: error: invalid register pair
239#CHECK: cxlgbr	%f2, 0, %r0, 0
240
241	cxlgbr	%f0, 0, %r0, -1
242	cxlgbr	%f0, 0, %r0, 16
243	cxlgbr	%f0, -1, %r0, 0
244	cxlgbr	%f0, 16, %r0, 0
245	cxlgbr	%f2, 0, %r0, 0
246
247#CHECK: error: {{(instruction requires: transactional-execution)?}}
248#CHECK: etnd	%r7
249
250	etnd	%r7
251
252#CHECK: error: invalid operand
253#CHECK: fidbra	%f0, 0, %f0, -1
254#CHECK: error: invalid operand
255#CHECK: fidbra	%f0, 0, %f0, 16
256#CHECK: error: invalid operand
257#CHECK: fidbra	%f0, -1, %f0, 0
258#CHECK: error: invalid operand
259#CHECK: fidbra	%f0, 16, %f0, 0
260
261	fidbra	%f0, 0, %f0, -1
262	fidbra	%f0, 0, %f0, 16
263	fidbra	%f0, -1, %f0, 0
264	fidbra	%f0, 16, %f0, 0
265
266#CHECK: error: invalid operand
267#CHECK: fiebra	%f0, 0, %f0, -1
268#CHECK: error: invalid operand
269#CHECK: fiebra	%f0, 0, %f0, 16
270#CHECK: error: invalid operand
271#CHECK: fiebra	%f0, -1, %f0, 0
272#CHECK: error: invalid operand
273#CHECK: fiebra	%f0, 16, %f0, 0
274
275	fiebra	%f0, 0, %f0, -1
276	fiebra	%f0, 0, %f0, 16
277	fiebra	%f0, -1, %f0, 0
278	fiebra	%f0, 16, %f0, 0
279
280#CHECK: error: invalid operand
281#CHECK: fixbra	%f0, 0, %f0, -1
282#CHECK: error: invalid operand
283#CHECK: fixbra	%f0, 0, %f0, 16
284#CHECK: error: invalid operand
285#CHECK: fixbra	%f0, -1, %f0, 0
286#CHECK: error: invalid operand
287#CHECK: fixbra	%f0, 16, %f0, 0
288#CHECK: error: invalid register pair
289#CHECK: fixbra	%f0, 0, %f2, 0
290#CHECK: error: invalid register pair
291#CHECK: fixbra	%f2, 0, %f0, 0
292
293	fixbra	%f0, 0, %f0, -1
294	fixbra	%f0, 0, %f0, 16
295	fixbra	%f0, -1, %f0, 0
296	fixbra	%f0, 16, %f0, 0
297	fixbra	%f0, 0, %f2, 0
298	fixbra	%f2, 0, %f0, 0
299
300#CHECK: error: invalid operand
301#CHECK: laa	%r0, %r0, -524289
302#CHECK: error: invalid operand
303#CHECK: laa	%r0, %r0, 524288
304#CHECK: error: invalid use of indexed addressing
305#CHECK: laa	%r0, %r0, 0(%r1,%r2)
306
307	laa	%r0, %r0, -524289
308	laa	%r0, %r0, 524288
309	laa	%r0, %r0, 0(%r1,%r2)
310
311#CHECK: error: invalid operand
312#CHECK: laag	%r0, %r0, -524289
313#CHECK: error: invalid operand
314#CHECK: laag	%r0, %r0, 524288
315#CHECK: error: invalid use of indexed addressing
316#CHECK: laag	%r0, %r0, 0(%r1,%r2)
317
318	laag	%r0, %r0, -524289
319	laag	%r0, %r0, 524288
320	laag	%r0, %r0, 0(%r1,%r2)
321
322#CHECK: error: invalid operand
323#CHECK: laal	%r0, %r0, -524289
324#CHECK: error: invalid operand
325#CHECK: laal	%r0, %r0, 524288
326#CHECK: error: invalid use of indexed addressing
327#CHECK: laal	%r0, %r0, 0(%r1,%r2)
328
329	laal	%r0, %r0, -524289
330	laal	%r0, %r0, 524288
331	laal	%r0, %r0, 0(%r1,%r2)
332
333#CHECK: error: invalid operand
334#CHECK: laalg	%r0, %r0, -524289
335#CHECK: error: invalid operand
336#CHECK: laalg	%r0, %r0, 524288
337#CHECK: error: invalid use of indexed addressing
338#CHECK: laalg	%r0, %r0, 0(%r1,%r2)
339
340	laalg	%r0, %r0, -524289
341	laalg	%r0, %r0, 524288
342	laalg	%r0, %r0, 0(%r1,%r2)
343
344#CHECK: error: invalid operand
345#CHECK: lan	%r0, %r0, -524289
346#CHECK: error: invalid operand
347#CHECK: lan	%r0, %r0, 524288
348#CHECK: error: invalid use of indexed addressing
349#CHECK: lan	%r0, %r0, 0(%r1,%r2)
350
351	lan	%r0, %r0, -524289
352	lan	%r0, %r0, 524288
353	lan	%r0, %r0, 0(%r1,%r2)
354
355#CHECK: error: invalid operand
356#CHECK: lang	%r0, %r0, -524289
357#CHECK: error: invalid operand
358#CHECK: lang	%r0, %r0, 524288
359#CHECK: error: invalid use of indexed addressing
360#CHECK: lang	%r0, %r0, 0(%r1,%r2)
361
362	lang	%r0, %r0, -524289
363	lang	%r0, %r0, 524288
364	lang	%r0, %r0, 0(%r1,%r2)
365
366#CHECK: error: invalid operand
367#CHECK: lao	%r0, %r0, -524289
368#CHECK: error: invalid operand
369#CHECK: lao	%r0, %r0, 524288
370#CHECK: error: invalid use of indexed addressing
371#CHECK: lao	%r0, %r0, 0(%r1,%r2)
372
373	lao	%r0, %r0, -524289
374	lao	%r0, %r0, 524288
375	lao	%r0, %r0, 0(%r1,%r2)
376
377#CHECK: error: invalid operand
378#CHECK: laog	%r0, %r0, -524289
379#CHECK: error: invalid operand
380#CHECK: laog	%r0, %r0, 524288
381#CHECK: error: invalid use of indexed addressing
382#CHECK: laog	%r0, %r0, 0(%r1,%r2)
383
384	laog	%r0, %r0, -524289
385	laog	%r0, %r0, 524288
386	laog	%r0, %r0, 0(%r1,%r2)
387
388#CHECK: error: invalid operand
389#CHECK: lax	%r0, %r0, -524289
390#CHECK: error: invalid operand
391#CHECK: lax	%r0, %r0, 524288
392#CHECK: error: invalid use of indexed addressing
393#CHECK: lax	%r0, %r0, 0(%r1,%r2)
394
395	lax	%r0, %r0, -524289
396	lax	%r0, %r0, 524288
397	lax	%r0, %r0, 0(%r1,%r2)
398
399#CHECK: error: invalid operand
400#CHECK: laxg	%r0, %r0, -524289
401#CHECK: error: invalid operand
402#CHECK: laxg	%r0, %r0, 524288
403#CHECK: error: invalid use of indexed addressing
404#CHECK: laxg	%r0, %r0, 0(%r1,%r2)
405
406	laxg	%r0, %r0, -524289
407	laxg	%r0, %r0, 524288
408	laxg	%r0, %r0, 0(%r1,%r2)
409
410#CHECK: error: invalid operand
411#CHECK: lbh	%r0, -524289
412#CHECK: error: invalid operand
413#CHECK: lbh	%r0, 524288
414
415	lbh	%r0, -524289
416	lbh	%r0, 524288
417
418#CHECK: error: invalid operand
419#CHECK: ldxbra	%f0, 0, %f0, -1
420#CHECK: error: invalid operand
421#CHECK: ldxbra	%f0, 0, %f0, 16
422#CHECK: error: invalid operand
423#CHECK: ldxbra	%f0, -1, %f0, 0
424#CHECK: error: invalid operand
425#CHECK: ldxbra	%f0, 16, %f0, 0
426#CHECK: error: invalid register pair
427#CHECK: ldxbra	%f0, 0, %f2, 0
428#CHECK: error: invalid register pair
429#CHECK: ldxbra	%f2, 0, %f0, 0
430
431	ldxbra	%f0, 0, %f0, -1
432	ldxbra	%f0, 0, %f0, 16
433	ldxbra	%f0, -1, %f0, 0
434	ldxbra	%f0, 16, %f0, 0
435	ldxbra	%f0, 0, %f2, 0
436	ldxbra	%f2, 0, %f0, 0
437
438#CHECK: error: invalid operand
439#CHECK: ledbra	%f0, 0, %f0, -1
440#CHECK: error: invalid operand
441#CHECK: ledbra	%f0, 0, %f0, 16
442#CHECK: error: invalid operand
443#CHECK: ledbra	%f0, -1, %f0, 0
444#CHECK: error: invalid operand
445#CHECK: ledbra	%f0, 16, %f0, 0
446
447	ledbra	%f0, 0, %f0, -1
448	ledbra	%f0, 0, %f0, 16
449	ledbra	%f0, -1, %f0, 0
450	ledbra	%f0, 16, %f0, 0
451
452#CHECK: error: invalid operand
453#CHECK: lexbra	%f0, 0, %f0, -1
454#CHECK: error: invalid operand
455#CHECK: lexbra	%f0, 0, %f0, 16
456#CHECK: error: invalid operand
457#CHECK: lexbra	%f0, -1, %f0, 0
458#CHECK: error: invalid operand
459#CHECK: lexbra	%f0, 16, %f0, 0
460#CHECK: error: invalid register pair
461#CHECK: lexbra	%f0, 0, %f2, 0
462#CHECK: error: invalid register pair
463#CHECK: lexbra	%f2, 0, %f0, 0
464
465	lexbra	%f0, 0, %f0, -1
466	lexbra	%f0, 0, %f0, 16
467	lexbra	%f0, -1, %f0, 0
468	lexbra	%f0, 16, %f0, 0
469	lexbra	%f0, 0, %f2, 0
470	lexbra	%f2, 0, %f0, 0
471
472#CHECK: error: invalid operand
473#CHECK: lfh	%r0, -524289
474#CHECK: error: invalid operand
475#CHECK: lfh	%r0, 524288
476
477	lfh	%r0, -524289
478	lfh	%r0, 524288
479
480#CHECK: error: invalid operand
481#CHECK: lhh	%r0, -524289
482#CHECK: error: invalid operand
483#CHECK: lhh	%r0, 524288
484
485	lhh	%r0, -524289
486	lhh	%r0, 524288
487
488#CHECK: error: invalid operand
489#CHECK: llch	%r0, -524289
490#CHECK: error: invalid operand
491#CHECK: llch	%r0, 524288
492
493	llch	%r0, -524289
494	llch	%r0, 524288
495
496#CHECK: error: invalid operand
497#CHECK: llhh	%r0, -524289
498#CHECK: error: invalid operand
499#CHECK: llhh	%r0, 524288
500
501	llhh	%r0, -524289
502	llhh	%r0, 524288
503
504#CHECK: error: invalid operand
505#CHECK: loc	%r0,0,-1
506#CHECK: error: invalid operand
507#CHECK: loc	%r0,0,16
508#CHECK: error: invalid operand
509#CHECK: loc	%r0,-524289,1
510#CHECK: error: invalid operand
511#CHECK: loc	%r0,524288,1
512#CHECK: error: invalid use of indexed addressing
513#CHECK: loc	%r0,0(%r1,%r2),1
514
515	loc	%r0,0,-1
516	loc	%r0,0,16
517	loc	%r0,-524289,1
518	loc	%r0,524288,1
519	loc	%r0,0(%r1,%r2),1
520
521#CHECK: error: invalid operand
522#CHECK: locg	%r0,0,-1
523#CHECK: error: invalid operand
524#CHECK: locg	%r0,0,16
525#CHECK: error: invalid operand
526#CHECK: locg	%r0,-524289,1
527#CHECK: error: invalid operand
528#CHECK: locg	%r0,524288,1
529#CHECK: error: invalid use of indexed addressing
530#CHECK: locg	%r0,0(%r1,%r2),1
531
532	locg	%r0,0,-1
533	locg	%r0,0,16
534	locg	%r0,-524289,1
535	locg	%r0,524288,1
536	locg	%r0,0(%r1,%r2),1
537
538#CHECK: error: invalid operand
539#CHECK: locgr	%r0,%r0,-1
540#CHECK: error: invalid operand
541#CHECK: locgr	%r0,%r0,16
542
543	locgr	%r0,%r0,-1
544	locgr	%r0,%r0,16
545
546#CHECK: error: invalid operand
547#CHECK: locr	%r0,%r0,-1
548#CHECK: error: invalid operand
549#CHECK: locr	%r0,%r0,16
550
551	locr	%r0,%r0,-1
552	locr	%r0,%r0,16
553
554#CHECK: error: {{(instruction requires: transactional-execution)?}}
555#CHECK: ntstg	%r0, 524287(%r1,%r15)
556
557	ntstg	%r0, 524287(%r1,%r15)
558
559#CHECK: error: {{(instruction requires: processor-assist)?}}
560#CHECK: ppa	%r4, %r6, 7
561
562	ppa	%r4, %r6, 7
563
564#CHECK: error: {{(instruction requires: miscellaneous-extensions)?}}
565#CHECK: risbgn	%r1, %r2, 0, 0, 0
566
567	risbgn	%r1, %r2, 0, 0, 0
568
569#CHECK: error: invalid operand
570#CHECK: risbhg	%r0,%r0,0,0,-1
571#CHECK: error: invalid operand
572#CHECK: risbhg	%r0,%r0,0,0,64
573#CHECK: error: invalid operand
574#CHECK: risbhg	%r0,%r0,0,-1,0
575#CHECK: error: invalid operand
576#CHECK: risbhg	%r0,%r0,0,256,0
577#CHECK: error: invalid operand
578#CHECK: risbhg	%r0,%r0,-1,0,0
579#CHECK: error: invalid operand
580#CHECK: risbhg	%r0,%r0,256,0,0
581
582	risbhg	%r0,%r0,0,0,-1
583	risbhg	%r0,%r0,0,0,64
584	risbhg	%r0,%r0,0,-1,0
585	risbhg	%r0,%r0,0,256,0
586	risbhg	%r0,%r0,-1,0,0
587	risbhg	%r0,%r0,256,0,0
588
589#CHECK: error: invalid operand
590#CHECK: risblg	%r0,%r0,0,0,-1
591#CHECK: error: invalid operand
592#CHECK: risblg	%r0,%r0,0,0,64
593#CHECK: error: invalid operand
594#CHECK: risblg	%r0,%r0,0,-1,0
595#CHECK: error: invalid operand
596#CHECK: risblg	%r0,%r0,0,256,0
597#CHECK: error: invalid operand
598#CHECK: risblg	%r0,%r0,-1,0,0
599#CHECK: error: invalid operand
600#CHECK: risblg	%r0,%r0,256,0,0
601
602	risblg	%r0,%r0,0,0,-1
603	risblg	%r0,%r0,0,0,64
604	risblg	%r0,%r0,0,-1,0
605	risblg	%r0,%r0,0,256,0
606	risblg	%r0,%r0,-1,0,0
607	risblg	%r0,%r0,256,0,0
608
609#CHECK: error: invalid operand
610#CHECK: slak	%r0,%r0,-524289
611#CHECK: error: invalid operand
612#CHECK: slak	%r0,%r0,524288
613#CHECK: error: %r0 used in an address
614#CHECK: slak	%r0,%r0,0(%r0)
615#CHECK: error: invalid use of indexed addressing
616#CHECK: slak	%r0,%r0,0(%r1,%r2)
617
618	slak	%r0,%r0,-524289
619	slak	%r0,%r0,524288
620	slak	%r0,%r0,0(%r0)
621	slak	%r0,%r0,0(%r1,%r2)
622
623#CHECK: error: invalid operand
624#CHECK: sllk	%r0,%r0,-524289
625#CHECK: error: invalid operand
626#CHECK: sllk	%r0,%r0,524288
627#CHECK: error: %r0 used in an address
628#CHECK: sllk	%r0,%r0,0(%r0)
629#CHECK: error: invalid use of indexed addressing
630#CHECK: sllk	%r0,%r0,0(%r1,%r2)
631
632	sllk	%r0,%r0,-524289
633	sllk	%r0,%r0,524288
634	sllk	%r0,%r0,0(%r0)
635	sllk	%r0,%r0,0(%r1,%r2)
636
637#CHECK: error: invalid operand
638#CHECK: srak	%r0,%r0,-524289
639#CHECK: error: invalid operand
640#CHECK: srak	%r0,%r0,524288
641#CHECK: error: %r0 used in an address
642#CHECK: srak	%r0,%r0,0(%r0)
643#CHECK: error: invalid use of indexed addressing
644#CHECK: srak	%r0,%r0,0(%r1,%r2)
645
646	srak	%r0,%r0,-524289
647	srak	%r0,%r0,524288
648	srak	%r0,%r0,0(%r0)
649	srak	%r0,%r0,0(%r1,%r2)
650
651#CHECK: error: invalid operand
652#CHECK: srlk	%r0,%r0,-524289
653#CHECK: error: invalid operand
654#CHECK: srlk	%r0,%r0,524288
655#CHECK: error: %r0 used in an address
656#CHECK: srlk	%r0,%r0,0(%r0)
657#CHECK: error: invalid use of indexed addressing
658#CHECK: srlk	%r0,%r0,0(%r1,%r2)
659
660	srlk	%r0,%r0,-524289
661	srlk	%r0,%r0,524288
662	srlk	%r0,%r0,0(%r0)
663	srlk	%r0,%r0,0(%r1,%r2)
664
665#CHECK: error: invalid operand
666#CHECK: stch	%r0, -524289
667#CHECK: error: invalid operand
668#CHECK: stch	%r0, 524288
669
670	stch	%r0, -524289
671	stch	%r0, 524288
672
673#CHECK: error: invalid operand
674#CHECK: sthh	%r0, -524289
675#CHECK: error: invalid operand
676#CHECK: sthh	%r0, 524288
677
678	sthh	%r0, -524289
679	sthh	%r0, 524288
680
681#CHECK: error: invalid operand
682#CHECK: stfh	%r0, -524289
683#CHECK: error: invalid operand
684#CHECK: stfh	%r0, 524288
685
686	stfh	%r0, -524289
687	stfh	%r0, 524288
688
689#CHECK: error: invalid operand
690#CHECK: stoc	%r0,0,-1
691#CHECK: error: invalid operand
692#CHECK: stoc	%r0,0,16
693#CHECK: error: invalid operand
694#CHECK: stoc	%r0,-524289,1
695#CHECK: error: invalid operand
696#CHECK: stoc	%r0,524288,1
697#CHECK: error: invalid use of indexed addressing
698#CHECK: stoc	%r0,0(%r1,%r2),1
699
700	stoc	%r0,0,-1
701	stoc	%r0,0,16
702	stoc	%r0,-524289,1
703	stoc	%r0,524288,1
704	stoc	%r0,0(%r1,%r2),1
705
706#CHECK: error: invalid operand
707#CHECK: stocg	%r0,0,-1
708#CHECK: error: invalid operand
709#CHECK: stocg	%r0,0,16
710#CHECK: error: invalid operand
711#CHECK: stocg	%r0,-524289,1
712#CHECK: error: invalid operand
713#CHECK: stocg	%r0,524288,1
714#CHECK: error: invalid use of indexed addressing
715#CHECK: stocg	%r0,0(%r1,%r2),1
716
717	stocg	%r0,0,-1
718	stocg	%r0,0,16
719	stocg	%r0,-524289,1
720	stocg	%r0,524288,1
721	stocg	%r0,0(%r1,%r2),1
722
723#CHECK: error: {{(instruction requires: transactional-execution)?}}
724#CHECK: tabort	4095(%r1)
725
726	tabort	4095(%r1)
727
728#CHECK: error: {{(instruction requires: transactional-execution)?}}
729#CHECK: tbegin	4095(%r1), 42
730
731	tbegin	4095(%r1), 42
732
733#CHECK: error: {{(instruction requires: transactional-execution)?}}
734#CHECK: tbeginc	4095(%r1), 42
735
736	tbeginc	4095(%r1), 42
737
738#CHECK: error: {{(instruction requires: transactional-execution)?}}
739#CHECK: tend
740
741	tend
742
743