insn-bad-z196.s revision cf20e45cc4cb77bcb16363531e600883cd27ff80
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: loc	%r0,0,-1
29#CHECK: error: invalid operand
30#CHECK: loc	%r0,0,16
31#CHECK: error: invalid operand
32#CHECK: loc	%r0,-524289,1
33#CHECK: error: invalid operand
34#CHECK: loc	%r0,524288,1
35#CHECK: error: invalid use of indexed addressing
36#CHECK: loc	%r0,0(%r1,%r2),1
37
38	loc	%r0,0,-1
39	loc	%r0,0,16
40	loc	%r0,-524289,1
41	loc	%r0,524288,1
42	loc	%r0,0(%r1,%r2),1
43
44#CHECK: error: invalid operand
45#CHECK: locg	%r0,0,-1
46#CHECK: error: invalid operand
47#CHECK: locg	%r0,0,16
48#CHECK: error: invalid operand
49#CHECK: locg	%r0,-524289,1
50#CHECK: error: invalid operand
51#CHECK: locg	%r0,524288,1
52#CHECK: error: invalid use of indexed addressing
53#CHECK: locg	%r0,0(%r1,%r2),1
54
55	locg	%r0,0,-1
56	locg	%r0,0,16
57	locg	%r0,-524289,1
58	locg	%r0,524288,1
59	locg	%r0,0(%r1,%r2),1
60
61#CHECK: error: invalid operand
62#CHECK: sllk	%r0,%r0,-524289
63#CHECK: error: invalid operand
64#CHECK: sllk	%r0,%r0,524288
65#CHECK: error: %r0 used in an address
66#CHECK: sllk	%r0,%r0,0(%r0)
67#CHECK: error: invalid use of indexed addressing
68#CHECK: sllk	%r0,%r0,0(%r1,%r2)
69
70	sllk	%r0,%r0,-524289
71	sllk	%r0,%r0,524288
72	sllk	%r0,%r0,0(%r0)
73	sllk	%r0,%r0,0(%r1,%r2)
74
75#CHECK: error: invalid operand
76#CHECK: srak	%r0,%r0,-524289
77#CHECK: error: invalid operand
78#CHECK: srak	%r0,%r0,524288
79#CHECK: error: %r0 used in an address
80#CHECK: srak	%r0,%r0,0(%r0)
81#CHECK: error: invalid use of indexed addressing
82#CHECK: srak	%r0,%r0,0(%r1,%r2)
83
84	srak	%r0,%r0,-524289
85	srak	%r0,%r0,524288
86	srak	%r0,%r0,0(%r0)
87	srak	%r0,%r0,0(%r1,%r2)
88
89#CHECK: error: invalid operand
90#CHECK: srlk	%r0,%r0,-524289
91#CHECK: error: invalid operand
92#CHECK: srlk	%r0,%r0,524288
93#CHECK: error: %r0 used in an address
94#CHECK: srlk	%r0,%r0,0(%r0)
95#CHECK: error: invalid use of indexed addressing
96#CHECK: srlk	%r0,%r0,0(%r1,%r2)
97
98	srlk	%r0,%r0,-524289
99	srlk	%r0,%r0,524288
100	srlk	%r0,%r0,0(%r0)
101	srlk	%r0,%r0,0(%r1,%r2)
102
103#CHECK: error: invalid operand
104#CHECK: stoc	%r0,0,-1
105#CHECK: error: invalid operand
106#CHECK: stoc	%r0,0,16
107#CHECK: error: invalid operand
108#CHECK: stoc	%r0,-524289,1
109#CHECK: error: invalid operand
110#CHECK: stoc	%r0,524288,1
111#CHECK: error: invalid use of indexed addressing
112#CHECK: stoc	%r0,0(%r1,%r2),1
113
114	stoc	%r0,0,-1
115	stoc	%r0,0,16
116	stoc	%r0,-524289,1
117	stoc	%r0,524288,1
118	stoc	%r0,0(%r1,%r2),1
119
120#CHECK: error: invalid operand
121#CHECK: stocg	%r0,0,-1
122#CHECK: error: invalid operand
123#CHECK: stocg	%r0,0,16
124#CHECK: error: invalid operand
125#CHECK: stocg	%r0,-524289,1
126#CHECK: error: invalid operand
127#CHECK: stocg	%r0,524288,1
128#CHECK: error: invalid use of indexed addressing
129#CHECK: stocg	%r0,0(%r1,%r2),1
130
131	stocg	%r0,0,-1
132	stocg	%r0,0,16
133	stocg	%r0,-524289,1
134	stocg	%r0,524288,1
135	stocg	%r0,0(%r1,%r2),1
136