]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - test/MC/SystemZ/insn-bad-z196.s
Vendor import of llvm release_34 branch r197841 (effectively, 3.4 RC3):
[FreeBSD/FreeBSD.git] / test / MC / SystemZ / insn-bad-z196.s
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: chf     %r0, -524289
37 #CHECK: error: invalid operand
38 #CHECK: chf     %r0, 524288
39
40         chf     %r0, -524289
41         chf     %r0, 524288
42
43 #CHECK: error: invalid operand
44 #CHECK: cih     %r0, (-1 << 31) - 1
45 #CHECK: error: invalid operand
46 #CHECK: cih     %r0, (1 << 31)
47
48         cih     %r0, (-1 << 31) - 1
49         cih     %r0, (1 << 31)
50
51 #CHECK: error: invalid operand
52 #CHECK: clhf    %r0, -524289
53 #CHECK: error: invalid operand
54 #CHECK: clhf    %r0, 524288
55
56         clhf    %r0, -524289
57         clhf    %r0, 524288
58
59 #CHECK: error: invalid operand
60 #CHECK: clih    %r0, -1
61 #CHECK: error: invalid operand
62 #CHECK: clih    %r0, (1 << 32)
63
64         clih    %r0, -1
65         clih    %r0, (1 << 32)
66
67 #CHECK: error: invalid operand
68 #CHECK: fidbra  %f0, 0, %f0, -1
69 #CHECK: error: invalid operand
70 #CHECK: fidbra  %f0, 0, %f0, 16
71 #CHECK: error: invalid operand
72 #CHECK: fidbra  %f0, -1, %f0, 0
73 #CHECK: error: invalid operand
74 #CHECK: fidbra  %f0, 16, %f0, 0
75
76         fidbra  %f0, 0, %f0, -1
77         fidbra  %f0, 0, %f0, 16
78         fidbra  %f0, -1, %f0, 0
79         fidbra  %f0, 16, %f0, 0
80
81 #CHECK: error: invalid operand
82 #CHECK: fiebra  %f0, 0, %f0, -1
83 #CHECK: error: invalid operand
84 #CHECK: fiebra  %f0, 0, %f0, 16
85 #CHECK: error: invalid operand
86 #CHECK: fiebra  %f0, -1, %f0, 0
87 #CHECK: error: invalid operand
88 #CHECK: fiebra  %f0, 16, %f0, 0
89
90         fiebra  %f0, 0, %f0, -1
91         fiebra  %f0, 0, %f0, 16
92         fiebra  %f0, -1, %f0, 0
93         fiebra  %f0, 16, %f0, 0
94
95 #CHECK: error: invalid operand
96 #CHECK: fixbra  %f0, 0, %f0, -1
97 #CHECK: error: invalid operand
98 #CHECK: fixbra  %f0, 0, %f0, 16
99 #CHECK: error: invalid operand
100 #CHECK: fixbra  %f0, -1, %f0, 0
101 #CHECK: error: invalid operand
102 #CHECK: fixbra  %f0, 16, %f0, 0
103 #CHECK: error: invalid register pair
104 #CHECK: fixbra  %f0, 0, %f2, 0
105 #CHECK: error: invalid register pair
106 #CHECK: fixbra  %f2, 0, %f0, 0
107
108         fixbra  %f0, 0, %f0, -1
109         fixbra  %f0, 0, %f0, 16
110         fixbra  %f0, -1, %f0, 0
111         fixbra  %f0, 16, %f0, 0
112         fixbra  %f0, 0, %f2, 0
113         fixbra  %f2, 0, %f0, 0
114
115 #CHECK: error: invalid operand
116 #CHECK: lbh     %r0, -524289
117 #CHECK: error: invalid operand
118 #CHECK: lbh     %r0, 524288
119
120         lbh     %r0, -524289
121         lbh     %r0, 524288
122
123 #CHECK: error: invalid operand
124 #CHECK: lfh     %r0, -524289
125 #CHECK: error: invalid operand
126 #CHECK: lfh     %r0, 524288
127
128         lfh     %r0, -524289
129         lfh     %r0, 524288
130
131 #CHECK: error: invalid operand
132 #CHECK: lhh     %r0, -524289
133 #CHECK: error: invalid operand
134 #CHECK: lhh     %r0, 524288
135
136         lhh     %r0, -524289
137         lhh     %r0, 524288
138
139 #CHECK: error: invalid operand
140 #CHECK: llch    %r0, -524289
141 #CHECK: error: invalid operand
142 #CHECK: llch    %r0, 524288
143
144         llch    %r0, -524289
145         llch    %r0, 524288
146
147 #CHECK: error: invalid operand
148 #CHECK: llhh    %r0, -524289
149 #CHECK: error: invalid operand
150 #CHECK: llhh    %r0, 524288
151
152         llhh    %r0, -524289
153         llhh    %r0, 524288
154
155 #CHECK: error: invalid operand
156 #CHECK: loc     %r0,0,-1
157 #CHECK: error: invalid operand
158 #CHECK: loc     %r0,0,16
159 #CHECK: error: invalid operand
160 #CHECK: loc     %r0,-524289,1
161 #CHECK: error: invalid operand
162 #CHECK: loc     %r0,524288,1
163 #CHECK: error: invalid use of indexed addressing
164 #CHECK: loc     %r0,0(%r1,%r2),1
165
166         loc     %r0,0,-1
167         loc     %r0,0,16
168         loc     %r0,-524289,1
169         loc     %r0,524288,1
170         loc     %r0,0(%r1,%r2),1
171
172 #CHECK: error: invalid operand
173 #CHECK: locg    %r0,0,-1
174 #CHECK: error: invalid operand
175 #CHECK: locg    %r0,0,16
176 #CHECK: error: invalid operand
177 #CHECK: locg    %r0,-524289,1
178 #CHECK: error: invalid operand
179 #CHECK: locg    %r0,524288,1
180 #CHECK: error: invalid use of indexed addressing
181 #CHECK: locg    %r0,0(%r1,%r2),1
182
183         locg    %r0,0,-1
184         locg    %r0,0,16
185         locg    %r0,-524289,1
186         locg    %r0,524288,1
187         locg    %r0,0(%r1,%r2),1
188
189 #CHECK: error: invalid operand
190 #CHECK: locgr   %r0,%r0,-1
191 #CHECK: error: invalid operand
192 #CHECK: locgr   %r0,%r0,16
193
194         locgr   %r0,%r0,-1
195         locgr   %r0,%r0,16
196
197 #CHECK: error: invalid operand
198 #CHECK: locr    %r0,%r0,-1
199 #CHECK: error: invalid operand
200 #CHECK: locr    %r0,%r0,16
201
202         locr    %r0,%r0,-1
203         locr    %r0,%r0,16
204
205 #CHECK: error: invalid operand
206 #CHECK: risbhg  %r0,%r0,0,0,-1
207 #CHECK: error: invalid operand
208 #CHECK: risbhg  %r0,%r0,0,0,64
209 #CHECK: error: invalid operand
210 #CHECK: risbhg  %r0,%r0,0,-1,0
211 #CHECK: error: invalid operand
212 #CHECK: risbhg  %r0,%r0,0,256,0
213 #CHECK: error: invalid operand
214 #CHECK: risbhg  %r0,%r0,-1,0,0
215 #CHECK: error: invalid operand
216 #CHECK: risbhg  %r0,%r0,256,0,0
217
218         risbhg  %r0,%r0,0,0,-1
219         risbhg  %r0,%r0,0,0,64
220         risbhg  %r0,%r0,0,-1,0
221         risbhg  %r0,%r0,0,256,0
222         risbhg  %r0,%r0,-1,0,0
223         risbhg  %r0,%r0,256,0,0
224
225 #CHECK: error: invalid operand
226 #CHECK: risblg  %r0,%r0,0,0,-1
227 #CHECK: error: invalid operand
228 #CHECK: risblg  %r0,%r0,0,0,64
229 #CHECK: error: invalid operand
230 #CHECK: risblg  %r0,%r0,0,-1,0
231 #CHECK: error: invalid operand
232 #CHECK: risblg  %r0,%r0,0,256,0
233 #CHECK: error: invalid operand
234 #CHECK: risblg  %r0,%r0,-1,0,0
235 #CHECK: error: invalid operand
236 #CHECK: risblg  %r0,%r0,256,0,0
237
238         risblg  %r0,%r0,0,0,-1
239         risblg  %r0,%r0,0,0,64
240         risblg  %r0,%r0,0,-1,0
241         risblg  %r0,%r0,0,256,0
242         risblg  %r0,%r0,-1,0,0
243         risblg  %r0,%r0,256,0,0
244
245 #CHECK: error: invalid operand
246 #CHECK: sllk    %r0,%r0,-524289
247 #CHECK: error: invalid operand
248 #CHECK: sllk    %r0,%r0,524288
249 #CHECK: error: %r0 used in an address
250 #CHECK: sllk    %r0,%r0,0(%r0)
251 #CHECK: error: invalid use of indexed addressing
252 #CHECK: sllk    %r0,%r0,0(%r1,%r2)
253
254         sllk    %r0,%r0,-524289
255         sllk    %r0,%r0,524288
256         sllk    %r0,%r0,0(%r0)
257         sllk    %r0,%r0,0(%r1,%r2)
258
259 #CHECK: error: invalid operand
260 #CHECK: srak    %r0,%r0,-524289
261 #CHECK: error: invalid operand
262 #CHECK: srak    %r0,%r0,524288
263 #CHECK: error: %r0 used in an address
264 #CHECK: srak    %r0,%r0,0(%r0)
265 #CHECK: error: invalid use of indexed addressing
266 #CHECK: srak    %r0,%r0,0(%r1,%r2)
267
268         srak    %r0,%r0,-524289
269         srak    %r0,%r0,524288
270         srak    %r0,%r0,0(%r0)
271         srak    %r0,%r0,0(%r1,%r2)
272
273 #CHECK: error: invalid operand
274 #CHECK: srlk    %r0,%r0,-524289
275 #CHECK: error: invalid operand
276 #CHECK: srlk    %r0,%r0,524288
277 #CHECK: error: %r0 used in an address
278 #CHECK: srlk    %r0,%r0,0(%r0)
279 #CHECK: error: invalid use of indexed addressing
280 #CHECK: srlk    %r0,%r0,0(%r1,%r2)
281
282         srlk    %r0,%r0,-524289
283         srlk    %r0,%r0,524288
284         srlk    %r0,%r0,0(%r0)
285         srlk    %r0,%r0,0(%r1,%r2)
286
287 #CHECK: error: invalid operand
288 #CHECK: stch    %r0, -524289
289 #CHECK: error: invalid operand
290 #CHECK: stch    %r0, 524288
291
292         stch    %r0, -524289
293         stch    %r0, 524288
294
295 #CHECK: error: invalid operand
296 #CHECK: sthh    %r0, -524289
297 #CHECK: error: invalid operand
298 #CHECK: sthh    %r0, 524288
299
300         sthh    %r0, -524289
301         sthh    %r0, 524288
302
303 #CHECK: error: invalid operand
304 #CHECK: stfh    %r0, -524289
305 #CHECK: error: invalid operand
306 #CHECK: stfh    %r0, 524288
307
308         stfh    %r0, -524289
309         stfh    %r0, 524288
310
311 #CHECK: error: invalid operand
312 #CHECK: stoc    %r0,0,-1
313 #CHECK: error: invalid operand
314 #CHECK: stoc    %r0,0,16
315 #CHECK: error: invalid operand
316 #CHECK: stoc    %r0,-524289,1
317 #CHECK: error: invalid operand
318 #CHECK: stoc    %r0,524288,1
319 #CHECK: error: invalid use of indexed addressing
320 #CHECK: stoc    %r0,0(%r1,%r2),1
321
322         stoc    %r0,0,-1
323         stoc    %r0,0,16
324         stoc    %r0,-524289,1
325         stoc    %r0,524288,1
326         stoc    %r0,0(%r1,%r2),1
327
328 #CHECK: error: invalid operand
329 #CHECK: stocg   %r0,0,-1
330 #CHECK: error: invalid operand
331 #CHECK: stocg   %r0,0,16
332 #CHECK: error: invalid operand
333 #CHECK: stocg   %r0,-524289,1
334 #CHECK: error: invalid operand
335 #CHECK: stocg   %r0,524288,1
336 #CHECK: error: invalid use of indexed addressing
337 #CHECK: stocg   %r0,0(%r1,%r2),1
338
339         stocg   %r0,0,-1
340         stocg   %r0,0,16
341         stocg   %r0,-524289,1
342         stocg   %r0,524288,1
343         stocg   %r0,0(%r1,%r2),1