1# For z13 only.
2# RUN: not llvm-mc -triple s390x-linux-gnu -mcpu=z13 < %s 2> %t
3# RUN: FileCheck < %t %s
4# RUN: not llvm-mc -triple s390x-linux-gnu -mcpu=arch11 < %s 2> %t
5# RUN: FileCheck < %t %s
6
7#CHECK: error: instruction requires: miscellaneous-extensions-2
8#CHECK: agh	%r0, 0
9
10	agh	%r0, 0
11
12#CHECK: error: instruction requires: miscellaneous-extensions-2
13#CHECK: bi	0
14#CHECK: error: instruction requires: miscellaneous-extensions-2
15#CHECK: bic	0, 0
16
17	bi	0
18	bic	0, 0
19
20#CHECK: error: invalid operand
21#CHECK: cdpt	%f0, 0(1), -1
22#CHECK: error: invalid operand
23#CHECK: cdpt	%f0, 0(1), 16
24#CHECK: error: missing length in address
25#CHECK: cdpt	%f0, 0, 0
26#CHECK: error: missing length in address
27#CHECK: cdpt	%f0, 0(%r1), 0
28#CHECK: error: invalid operand
29#CHECK: cdpt	%f0, 0(0,%r1), 0
30#CHECK: error: invalid operand
31#CHECK: cdpt	%f0, 0(257,%r1), 0
32#CHECK: error: invalid operand
33#CHECK: cdpt	%f0, -1(1,%r1), 0
34#CHECK: error: invalid operand
35#CHECK: cdpt	%f0, 4096(1,%r1), 0
36#CHECK: error: invalid use of indexed addressing
37#CHECK: cdpt	%f0, 0(%r1,%r2), 0
38#CHECK: error: unknown token in expression
39#CHECK: cdpt	%f0, 0(-), 0
40
41	cdpt	%f0, 0(1), -1
42	cdpt	%f0, 0(1), 16
43	cdpt	%f0, 0, 0
44	cdpt	%f0, 0(%r1), 0
45	cdpt	%f0, 0(0,%r1), 0
46	cdpt	%f0, 0(257,%r1), 0
47	cdpt	%f0, -1(1,%r1), 0
48	cdpt	%f0, 4096(1,%r1), 0
49	cdpt	%f0, 0(%r1,%r2), 0
50	cdpt	%f0, 0(-), 0
51
52#CHECK: error: invalid operand
53#CHECK: cpdt	%f0, 0(1), -1
54#CHECK: error: invalid operand
55#CHECK: cpdt	%f0, 0(1), 16
56#CHECK: error: missing length in address
57#CHECK: cpdt	%f0, 0, 0
58#CHECK: error: missing length in address
59#CHECK: cpdt	%f0, 0(%r1), 0
60#CHECK: error: invalid operand
61#CHECK: cpdt	%f0, 0(0,%r1), 0
62#CHECK: error: invalid operand
63#CHECK: cpdt	%f0, 0(257,%r1), 0
64#CHECK: error: invalid operand
65#CHECK: cpdt	%f0, -1(1,%r1), 0
66#CHECK: error: invalid operand
67#CHECK: cpdt	%f0, 4096(1,%r1), 0
68#CHECK: error: invalid use of indexed addressing
69#CHECK: cpdt	%f0, 0(%r1,%r2), 0
70#CHECK: error: unknown token in expression
71#CHECK: cpdt	%f0, 0(-), 0
72
73	cpdt	%f0, 0(1), -1
74	cpdt	%f0, 0(1), 16
75	cpdt	%f0, 0, 0
76	cpdt	%f0, 0(%r1), 0
77	cpdt	%f0, 0(0,%r1), 0
78	cpdt	%f0, 0(257,%r1), 0
79	cpdt	%f0, -1(1,%r1), 0
80	cpdt	%f0, 4096(1,%r1), 0
81	cpdt	%f0, 0(%r1,%r2), 0
82	cpdt	%f0, 0(-), 0
83
84#CHECK: error: invalid operand
85#CHECK: cpxt	%f0, 0(1), -1
86#CHECK: error: invalid operand
87#CHECK: cpxt	%f0, 0(1), 16
88#CHECK: error: missing length in address
89#CHECK: cpxt	%f0, 0, 0
90#CHECK: error: missing length in address
91#CHECK: cpxt	%f0, 0(%r1), 0
92#CHECK: error: invalid operand
93#CHECK: cpxt	%f0, 0(0,%r1), 0
94#CHECK: error: invalid operand
95#CHECK: cpxt	%f0, 0(257,%r1), 0
96#CHECK: error: invalid operand
97#CHECK: cpxt	%f0, -1(1,%r1), 0
98#CHECK: error: invalid operand
99#CHECK: cpxt	%f0, 4096(1,%r1), 0
100#CHECK: error: invalid use of indexed addressing
101#CHECK: cpxt	%f0, 0(%r1,%r2), 0
102#CHECK: error: unknown token in expression
103#CHECK: cpxt	%f0, 0(-), 0
104#CHECK: error: invalid register pair
105#CHECK: cpxt	%f15, 0(1), 0
106
107	cpxt	%f0, 0(1), -1
108	cpxt	%f0, 0(1), 16
109	cpxt	%f0, 0, 0
110	cpxt	%f0, 0(%r1), 0
111	cpxt	%f0, 0(0,%r1), 0
112	cpxt	%f0, 0(257,%r1), 0
113	cpxt	%f0, -1(1,%r1), 0
114	cpxt	%f0, 4096(1,%r1), 0
115	cpxt	%f0, 0(%r1,%r2), 0
116	cpxt	%f0, 0(-), 0
117	cpxt	%f15, 0(1), 0
118
119#CHECK: error: invalid operand
120#CHECK: cxpt	%f0, 0(1), -1
121#CHECK: error: invalid operand
122#CHECK: cxpt	%f0, 0(1), 16
123#CHECK: error: missing length in address
124#CHECK: cxpt	%f0, 0, 0
125#CHECK: error: missing length in address
126#CHECK: cxpt	%f0, 0(%r1), 0
127#CHECK: error: invalid operand
128#CHECK: cxpt	%f0, 0(0,%r1), 0
129#CHECK: error: invalid operand
130#CHECK: cxpt	%f0, 0(257,%r1), 0
131#CHECK: error: invalid operand
132#CHECK: cxpt	%f0, -1(1,%r1), 0
133#CHECK: error: invalid operand
134#CHECK: cxpt	%f0, 4096(1,%r1), 0
135#CHECK: error: invalid use of indexed addressing
136#CHECK: cxpt	%f0, 0(%r1,%r2), 0
137#CHECK: error: unknown token in expression
138#CHECK: cxpt	%f0, 0(-), 0
139#CHECK: error: invalid register pair
140#CHECK: cxpt	%f15, 0(1), 0
141
142	cxpt	%f0, 0(1), -1
143	cxpt	%f0, 0(1), 16
144	cxpt	%f0, 0, 0
145	cxpt	%f0, 0(%r1), 0
146	cxpt	%f0, 0(0,%r1), 0
147	cxpt	%f0, 0(257,%r1), 0
148	cxpt	%f0, -1(1,%r1), 0
149	cxpt	%f0, 4096(1,%r1), 0
150	cxpt	%f0, 0(%r1,%r2), 0
151	cxpt	%f0, 0(-), 0
152	cxpt	%f15, 0(1), 0
153
154#CHECK: error: instruction requires: insert-reference-bits-multiple
155#CHECK: irbm	%r0, %r0
156
157	irbm	%r0, %r0
158
159#CHECK: error: instruction requires: message-security-assist-extension8
160#CHECK: kma	%r2, %r4, %r6
161
162	kma	%r2, %r4, %r6
163
164#CHECK: error: invalid operand
165#CHECK: lcbb	%r0, 0, -1
166#CHECK: error: invalid operand
167#CHECK: lcbb	%r0, 0, 16
168#CHECK: error: invalid operand
169#CHECK: lcbb	%r0, -1, 0
170#CHECK: error: invalid operand
171#CHECK: lcbb	%r0, 4096, 0
172#CHECK: error: invalid use of vector addressing
173#CHECK: lcbb	%r0, 0(%v1,%r2), 0
174
175	lcbb	%r0, 0, -1
176	lcbb	%r0, 0, 16
177	lcbb	%r0, -1, 0
178	lcbb	%r0, 4096, 0
179	lcbb	%r0, 0(%v1,%r2), 0
180
181#CHECK: error: instruction requires: guarded-storage
182#CHECK: lgg	%r0, 0
183
184	lgg	%r0, 0
185
186#CHECK: error: instruction requires: guarded-storage
187#CHECK: lgsc	%r0, 0
188
189	lgsc	%r0, 0
190
191#CHECK: error: instruction requires: guarded-storage
192#CHECK: llgfsg	%r0, 0
193
194	llgfsg	%r0, 0
195
196#CHECK: error: invalid operand
197#CHECK: llzrgf	%r0, -524289
198#CHECK: error: invalid operand
199#CHECK: llzrgf	%r0, 524288
200
201	llzrgf	%r0, -524289
202	llzrgf	%r0, 524288
203
204#CHECK: error: invalid operand
205#CHECK: locfh	%r0, 0, -1
206#CHECK: error: invalid operand
207#CHECK: locfh	%r0, 0, 16
208#CHECK: error: invalid operand
209#CHECK: locfh	%r0, -524289, 1
210#CHECK: error: invalid operand
211#CHECK: locfh	%r0, 524288, 1
212#CHECK: error: invalid use of indexed addressing
213#CHECK: locfh	%r0, 0(%r1,%r2), 1
214
215	locfh	%r0, 0, -1
216	locfh	%r0, 0, 16
217	locfh	%r0, -524289, 1
218	locfh	%r0, 524288, 1
219	locfh	%r0, 0(%r1,%r2), 1
220
221#CHECK: error: invalid operand
222#CHECK: locfhr	%r0, %r0, -1
223#CHECK: error: invalid operand
224#CHECK: locfhr	%r0, %r0, 16
225
226	locfhr	%r0, %r0, -1
227	locfhr	%r0, %r0, 16
228
229#CHECK: error: invalid operand
230#CHECK: locghie	%r0, 66000
231#CHECK: error: invalid operand
232#CHECK: locghie	%f0, 0
233#CHECK: error: invalid operand
234#CHECK: locghie	0, %r0
235
236	locghie	%r0, 66000
237	locghie	%f0, 0
238	locghie	0, %r0
239
240#CHECK: error: invalid operand
241#CHECK: lochhie	%r0, 66000
242#CHECK: error: invalid operand
243#CHECK: lochhie	%f0, 0
244#CHECK: error: invalid operand
245#CHECK: lochhie	0, %r0
246
247	lochhie	%r0, 66000
248	lochhie	%f0, 0
249	lochhie	0, %r0
250
251#CHECK: error: invalid operand
252#CHECK: lochie	%r0, 66000
253#CHECK: error: invalid operand
254#CHECK: lochie	%f0, 0
255#CHECK: error: invalid operand
256#CHECK: lochie	0, %r0
257
258	lochie	%r0, 66000
259	lochie	%f0, 0
260	lochie	0, %r0
261
262#CHECK: error: invalid operand
263#CHECK: lzrf	%r0, -524289
264#CHECK: error: invalid operand
265#CHECK: lzrf	%r0, 524288
266
267	lzrf	%r0, -524289
268	lzrf	%r0, 524288
269
270#CHECK: error: invalid operand
271#CHECK: lzrg	%r0, -524289
272#CHECK: error: invalid operand
273#CHECK: lzrg	%r0, 524288
274
275	lzrg	%r0, -524289
276	lzrg	%r0, 524288
277
278#CHECK: error: instruction requires: miscellaneous-extensions-2
279#CHECK: mg	%r0, 0
280
281	mg	%r0, 0
282
283#CHECK: error: instruction requires: miscellaneous-extensions-2
284#CHECK: mgh	%r0, 0
285
286	mgh	%r0, 0
287
288#CHECK: error: instruction requires: miscellaneous-extensions-2
289#CHECK: mgrk	%r0, %r0, %r0
290
291	mgrk	%r0, %r0, %r0
292
293#CHECK: error: instruction requires: miscellaneous-extensions-2
294#CHECK: msc	%r0, 0
295
296	msc	%r0, 0
297
298#CHECK: error: instruction requires: miscellaneous-extensions-2
299#CHECK: msgc	%r0, 0
300
301	msgc	%r0, 0
302
303#CHECK: error: instruction requires: miscellaneous-extensions-2
304#CHECK: msrkc	%r0, %r0, %r0
305
306	msrkc	%r0, %r0, %r0
307
308#CHECK: error: instruction requires: miscellaneous-extensions-2
309#CHECK: msgrkc	%r0, %r0, %r0
310
311	msgrkc	%r0, %r0, %r0
312
313#CHECK: error: invalid register pair
314#CHECK: ppno	%r1, %r2
315#CHECK: error: invalid register pair
316#CHECK: ppno	%r2, %r1
317
318	ppno	%r1, %r2
319	ppno	%r2, %r1
320
321#CHECK: error: instruction requires: message-security-assist-extension7
322#CHECK: prno	%r2, %r4
323
324	prno	%r2, %r4
325
326#CHECK: error: instruction requires: miscellaneous-extensions-2
327#CHECK: sgh	%r0, 0
328
329	sgh	%r0, 0
330
331#CHECK: error: instruction requires: guarded-storage
332#CHECK: stgsc	%r0, 0
333
334	stgsc	%r0, 0
335
336#CHECK: error: invalid operand
337#CHECK: stocfh	%r0, 0, -1
338#CHECK: error: invalid operand
339#CHECK: stocfh	%r0, 0, 16
340#CHECK: error: invalid operand
341#CHECK: stocfh	%r0, -524289, 1
342#CHECK: error: invalid operand
343#CHECK: stocfh	%r0, 524288, 1
344#CHECK: error: invalid use of indexed addressing
345#CHECK: stocfh	%r0, 0(%r1,%r2), 1
346
347	stocfh	%r0, 0, -1
348	stocfh	%r0, 0, 16
349	stocfh	%r0, -524289, 1
350	stocfh	%r0, 524288, 1
351	stocfh	%r0, 0(%r1,%r2), 1
352
353#CHECK: error: instruction requires: vector-packed-decimal
354#CHECK: vap	%v0, %v0, %v0, 0, 0
355
356	vap	%v0, %v0, %v0, 0, 0
357
358#CHECK: error: instruction requires: vector-enhancements-1
359#CHECK: vbperm	%v0, %v0, %v0
360
361	vbperm	%v0, %v0, %v0
362
363#CHECK: error: invalid operand
364#CHECK: vcdg	%v0, %v0, 0, 0, -1
365#CHECK: error: invalid operand
366#CHECK: vcdg	%v0, %v0, 0, 0, 16
367#CHECK: error: invalid operand
368#CHECK: vcdg	%v0, %v0, 0, -1, 0
369#CHECK: error: invalid operand
370#CHECK: vcdg	%v0, %v0, 0, 16, 0
371#CHECK: error: invalid operand
372#CHECK: vcdg	%v0, %v0, -1, 0, 0
373#CHECK: error: invalid operand
374#CHECK: vcdg	%v0, %v0, 16, 0, 0
375
376	vcdg	%v0, %v0, 0, 0, -1
377	vcdg	%v0, %v0, 0, 0, 16
378	vcdg	%v0, %v0, 0, -1, 0
379	vcdg	%v0, %v0, 0, 16, 0
380	vcdg	%v0, %v0, -1, 0, 0
381	vcdg	%v0, %v0, 16, 0, 0
382
383#CHECK: error: invalid operand
384#CHECK: vcdgb	%v0, %v0, 0, -1
385#CHECK: error: invalid operand
386#CHECK: vcdgb	%v0, %v0, 0, 16
387#CHECK: error: invalid operand
388#CHECK: vcdgb	%v0, %v0, -1, 0
389#CHECK: error: invalid operand
390#CHECK: vcdgb	%v0, %v0, 16, 0
391
392	vcdgb	%v0, %v0, 0, -1
393	vcdgb	%v0, %v0, 0, 16
394	vcdgb	%v0, %v0, -1, 0
395	vcdgb	%v0, %v0, 16, 0
396
397#CHECK: error: invalid operand
398#CHECK: vcdlg	%v0, %v0, 0, 0, -1
399#CHECK: error: invalid operand
400#CHECK: vcdlg	%v0, %v0, 0, 0, 16
401#CHECK: error: invalid operand
402#CHECK: vcdlg	%v0, %v0, 0, -1, 0
403#CHECK: error: invalid operand
404#CHECK: vcdlg	%v0, %v0, 0, 16, 0
405#CHECK: error: invalid operand
406#CHECK: vcdlg	%v0, %v0, -1, 0, 0
407#CHECK: error: invalid operand
408#CHECK: vcdlg	%v0, %v0, 16, 0, 0
409
410	vcdlg	%v0, %v0, 0, 0, -1
411	vcdlg	%v0, %v0, 0, 0, 16
412	vcdlg	%v0, %v0, 0, -1, 0
413	vcdlg	%v0, %v0, 0, 16, 0
414	vcdlg	%v0, %v0, -1, 0, 0
415	vcdlg	%v0, %v0, 16, 0, 0
416
417#CHECK: error: invalid operand
418#CHECK: vcdlgb	%v0, %v0, 0, -1
419#CHECK: error: invalid operand
420#CHECK: vcdlgb	%v0, %v0, 0, 16
421#CHECK: error: invalid operand
422#CHECK: vcdlgb	%v0, %v0, -1, 0
423#CHECK: error: invalid operand
424#CHECK: vcdlgb	%v0, %v0, 16, 0
425
426	vcdlgb	%v0, %v0, 0, -1
427	vcdlgb	%v0, %v0, 0, 16
428	vcdlgb	%v0, %v0, -1, 0
429	vcdlgb	%v0, %v0, 16, 0
430
431#CHECK: error: invalid operand
432#CHECK: vcgd	%v0, %v0, 0, 0, -1
433#CHECK: error: invalid operand
434#CHECK: vcgd	%v0, %v0, 0, 0, 16
435#CHECK: error: invalid operand
436#CHECK: vcgd	%v0, %v0, 0, -1, 0
437#CHECK: error: invalid operand
438#CHECK: vcgd	%v0, %v0, 0, 16, 0
439#CHECK: error: invalid operand
440#CHECK: vcgd	%v0, %v0, -1, 0, 0
441#CHECK: error: invalid operand
442#CHECK: vcgd	%v0, %v0, 16, 0, 0
443
444	vcgd	%v0, %v0, 0, 0, -1
445	vcgd	%v0, %v0, 0, 0, 16
446	vcgd	%v0, %v0, 0, -1, 0
447	vcgd	%v0, %v0, 0, 16, 0
448	vcgd	%v0, %v0, -1, 0, 0
449	vcgd	%v0, %v0, 16, 0, 0
450
451#CHECK: error: invalid operand
452#CHECK: vcgdb	%v0, %v0, 0, -1
453#CHECK: error: invalid operand
454#CHECK: vcgdb	%v0, %v0, 0, 16
455#CHECK: error: invalid operand
456#CHECK: vcgdb	%v0, %v0, -1, 0
457#CHECK: error: invalid operand
458#CHECK: vcgdb	%v0, %v0, 16, 0
459
460	vcgdb	%v0, %v0, 0, -1
461	vcgdb	%v0, %v0, 0, 16
462	vcgdb	%v0, %v0, -1, 0
463	vcgdb	%v0, %v0, 16, 0
464
465#CHECK: error: invalid operand
466#CHECK: vclgd	%v0, %v0, 0, 0, -1
467#CHECK: error: invalid operand
468#CHECK: vclgd	%v0, %v0, 0, 0, 16
469#CHECK: error: invalid operand
470#CHECK: vclgd	%v0, %v0, 0, -1, 0
471#CHECK: error: invalid operand
472#CHECK: vclgd	%v0, %v0, 0, 16, 0
473#CHECK: error: invalid operand
474#CHECK: vclgd	%v0, %v0, -1, 0, 0
475#CHECK: error: invalid operand
476#CHECK: vclgd	%v0, %v0, 16, 0, 0
477
478	vclgd	%v0, %v0, 0, 0, -1
479	vclgd	%v0, %v0, 0, 0, 16
480	vclgd	%v0, %v0, 0, -1, 0
481	vclgd	%v0, %v0, 0, 16, 0
482	vclgd	%v0, %v0, -1, 0, 0
483	vclgd	%v0, %v0, 16, 0, 0
484
485#CHECK: error: invalid operand
486#CHECK: vclgdb	%v0, %v0, 0, -1
487#CHECK: error: invalid operand
488#CHECK: vclgdb	%v0, %v0, 0, 16
489#CHECK: error: invalid operand
490#CHECK: vclgdb	%v0, %v0, -1, 0
491#CHECK: error: invalid operand
492#CHECK: vclgdb	%v0, %v0, 16, 0
493
494	vclgdb	%v0, %v0, 0, -1
495	vclgdb	%v0, %v0, 0, 16
496	vclgdb	%v0, %v0, -1, 0
497	vclgdb	%v0, %v0, 16, 0
498
499#CHECK: error: instruction requires: vector-packed-decimal
500#CHECK: vcp	%v0, %v0, 0
501
502	vcp	%v0, %v0, 0
503
504#CHECK: vcvb	%r0, %v0, 0
505
506	vcvb	%r0, %v0, 0
507
508#CHECK: error: instruction requires: vector-packed-decimal
509#CHECK: vcvbg	%r0, %v0, 0
510
511	vcvbg	%r0, %v0, 0
512
513#CHECK: error: instruction requires: vector-packed-decimal
514#CHECK: vcvd	%v0, %r0, 0, 0
515
516	vcvd	%v0, %r0, 0, 0
517
518#CHECK: error: instruction requires: vector-packed-decimal
519#CHECK: vcvdg	%v0, %r0, 0, 0
520
521	vcvdg	%v0, %r0, 0, 0
522
523#CHECK: error: instruction requires: vector-packed-decimal
524#CHECK: vdp	%v0, %v0, %v0, 0, 0
525
526	vdp	%v0, %v0, %v0, 0, 0
527
528#CHECK: error: invalid operand
529#CHECK: verim	%v0, %v0, %v0, 0, -1
530#CHECK: error: invalid operand
531#CHECK: verim	%v0, %v0, %v0, 0, 16
532#CHECK: error: invalid operand
533#CHECK: verim	%v0, %v0, %v0, -1, 0
534#CHECK: error: invalid operand
535#CHECK: verim	%v0, %v0, %v0, 256, 0
536
537	verim	%v0, %v0, %v0, 0, -1
538	verim	%v0, %v0, %v0, 0, 16
539	verim	%v0, %v0, %v0, -1, 0
540	verim	%v0, %v0, %v0, 256, 0
541
542#CHECK: error: invalid operand
543#CHECK: verimb	%v0, %v0, %v0, -1
544#CHECK: error: invalid operand
545#CHECK: verimb	%v0, %v0, %v0, 256
546
547	verimb	%v0, %v0, %v0, -1
548	verimb	%v0, %v0, %v0, 256
549
550#CHECK: error: invalid operand
551#CHECK: verimf	%v0, %v0, %v0, -1
552#CHECK: error: invalid operand
553#CHECK: verimf	%v0, %v0, %v0, 256
554
555	verimf	%v0, %v0, %v0, -1
556	verimf	%v0, %v0, %v0, 256
557
558#CHECK: error: invalid operand
559#CHECK: verimg	%v0, %v0, %v0, -1
560#CHECK: error: invalid operand
561#CHECK: verimg	%v0, %v0, %v0, 256
562
563	verimg	%v0, %v0, %v0, -1
564	verimg	%v0, %v0, %v0, 256
565
566#CHECK: error: invalid operand
567#CHECK: verimh	%v0, %v0, %v0, -1
568#CHECK: error: invalid operand
569#CHECK: verimh	%v0, %v0, %v0, 256
570
571	verimh	%v0, %v0, %v0, -1
572	verimh	%v0, %v0, %v0, 256
573
574#CHECK: error: invalid operand
575#CHECK: verll	%v0, %v0, 0, -1
576#CHECK: error: invalid operand
577#CHECK: verll	%v0, %v0, 0, 16
578#CHECK: error: invalid operand
579#CHECK: verll	%v0, %v0, -1, 0
580#CHECK: error: invalid operand
581#CHECK: verll	%v0, %v0, 4096, 0
582
583	verll	%v0, %v0, 0, -1
584	verll	%v0, %v0, 0, 16
585	verll	%v0, %v0, -1, 0
586	verll	%v0, %v0, 4096, 0
587
588#CHECK: error: invalid operand
589#CHECK: verllb	%v0, %v0, -1
590#CHECK: error: invalid operand
591#CHECK: verllb	%v0, %v0, 4096
592
593	verllb	%v0, %v0, -1
594	verllb	%v0, %v0, 4096
595
596#CHECK: error: invalid operand
597#CHECK: verllf	%v0, %v0, -1
598#CHECK: error: invalid operand
599#CHECK: verllf	%v0, %v0, 4096
600
601	verllf	%v0, %v0, -1
602	verllf	%v0, %v0, 4096
603
604#CHECK: error: invalid operand
605#CHECK: verllg	%v0, %v0, -1
606#CHECK: error: invalid operand
607#CHECK: verllg	%v0, %v0, 4096
608
609	verllg	%v0, %v0, -1
610	verllg	%v0, %v0, 4096
611
612#CHECK: error: invalid operand
613#CHECK: verllh	%v0, %v0, -1
614#CHECK: error: invalid operand
615#CHECK: verllh	%v0, %v0, 4096
616
617	verllh	%v0, %v0, -1
618	verllh	%v0, %v0, 4096
619
620#CHECK: error: invalid operand
621#CHECK: vesl	%v0, %v0, 0, -1
622#CHECK: error: invalid operand
623#CHECK: vesl	%v0, %v0, 0, 16
624#CHECK: error: invalid operand
625#CHECK: vesl	%v0, %v0, -1, 0
626#CHECK: error: invalid operand
627#CHECK: vesl	%v0, %v0, 4096, 0
628
629	vesl	%v0, %v0, 0, -1
630	vesl	%v0, %v0, 0, 16
631	vesl	%v0, %v0, -1, 0
632	vesl	%v0, %v0, 4096, 0
633
634#CHECK: error: invalid operand
635#CHECK: veslb	%v0, %v0, -1
636#CHECK: error: invalid operand
637#CHECK: veslb	%v0, %v0, 4096
638
639	veslb	%v0, %v0, -1
640	veslb	%v0, %v0, 4096
641
642#CHECK: error: invalid operand
643#CHECK: veslf	%v0, %v0, -1
644#CHECK: error: invalid operand
645#CHECK: veslf	%v0, %v0, 4096
646
647	veslf	%v0, %v0, -1
648	veslf	%v0, %v0, 4096
649
650#CHECK: error: invalid operand
651#CHECK: veslg	%v0, %v0, -1
652#CHECK: error: invalid operand
653#CHECK: veslg	%v0, %v0, 4096
654
655	veslg	%v0, %v0, -1
656	veslg	%v0, %v0, 4096
657
658#CHECK: error: invalid operand
659#CHECK: veslh	%v0, %v0, -1
660#CHECK: error: invalid operand
661#CHECK: veslh	%v0, %v0, 4096
662
663	veslh	%v0, %v0, -1
664	veslh	%v0, %v0, 4096
665
666#CHECK: error: invalid operand
667#CHECK: vesra	%v0, %v0, 0, -1
668#CHECK: error: invalid operand
669#CHECK: vesra	%v0, %v0, 0, 16
670#CHECK: error: invalid operand
671#CHECK: vesra	%v0, %v0, -1, 0
672#CHECK: error: invalid operand
673#CHECK: vesra	%v0, %v0, 4096, 0
674
675	vesra	%v0, %v0, 0, -1
676	vesra	%v0, %v0, 0, 16
677	vesra	%v0, %v0, -1, 0
678	vesra	%v0, %v0, 4096, 0
679
680#CHECK: error: invalid operand
681#CHECK: vesrab	%v0, %v0, -1
682#CHECK: error: invalid operand
683#CHECK: vesrab	%v0, %v0, 4096
684
685	vesrab	%v0, %v0, -1
686	vesrab	%v0, %v0, 4096
687
688#CHECK: error: invalid operand
689#CHECK: vesraf	%v0, %v0, -1
690#CHECK: error: invalid operand
691#CHECK: vesraf	%v0, %v0, 4096
692
693	vesraf	%v0, %v0, -1
694	vesraf	%v0, %v0, 4096
695
696#CHECK: error: invalid operand
697#CHECK: vesrag	%v0, %v0, -1
698#CHECK: error: invalid operand
699#CHECK: vesrag	%v0, %v0, 4096
700
701	vesrag	%v0, %v0, -1
702	vesrag	%v0, %v0, 4096
703
704#CHECK: error: invalid operand
705#CHECK: vesrah	%v0, %v0, -1
706#CHECK: error: invalid operand
707#CHECK: vesrah	%v0, %v0, 4096
708
709	vesrah	%v0, %v0, -1
710	vesrah	%v0, %v0, 4096
711
712#CHECK: error: invalid operand
713#CHECK: vesrl	%v0, %v0, 0, -1
714#CHECK: error: invalid operand
715#CHECK: vesrl	%v0, %v0, 0, 16
716#CHECK: error: invalid operand
717#CHECK: vesrl	%v0, %v0, -1, 0
718#CHECK: error: invalid operand
719#CHECK: vesrl	%v0, %v0, 4096, 0
720
721	vesrl	%v0, %v0, 0, -1
722	vesrl	%v0, %v0, 0, 16
723	vesrl	%v0, %v0, -1, 0
724	vesrl	%v0, %v0, 4096, 0
725
726#CHECK: error: invalid operand
727#CHECK: vesrlb	%v0, %v0, -1
728#CHECK: error: invalid operand
729#CHECK: vesrlb	%v0, %v0, 4096
730
731	vesrlb	%v0, %v0, -1
732	vesrlb	%v0, %v0, 4096
733
734#CHECK: error: invalid operand
735#CHECK: vesrlf	%v0, %v0, -1
736#CHECK: error: invalid operand
737#CHECK: vesrlf	%v0, %v0, 4096
738
739	vesrlf	%v0, %v0, -1
740	vesrlf	%v0, %v0, 4096
741
742#CHECK: error: invalid operand
743#CHECK: vesrlg	%v0, %v0, -1
744#CHECK: error: invalid operand
745#CHECK: vesrlg	%v0, %v0, 4096
746
747	vesrlg	%v0, %v0, -1
748	vesrlg	%v0, %v0, 4096
749
750#CHECK: error: invalid operand
751#CHECK: vesrlh	%v0, %v0, -1
752#CHECK: error: invalid operand
753#CHECK: vesrlh	%v0, %v0, 4096
754
755	vesrlh	%v0, %v0, -1
756	vesrlh	%v0, %v0, 4096
757
758#CHECK: error: invalid operand
759#CHECK: vfae	%v0, %v0, %v0, 0, -1
760#CHECK: error: invalid operand
761#CHECK: vfae	%v0, %v0, %v0, 0, 16
762#CHECK: error: invalid operand
763#CHECK: vfae	%v0, %v0, %v0, -1, 0
764#CHECK: error: invalid operand
765#CHECK: vfae	%v0, %v0, %v0, 16, 0
766#CHECK: error: too few operands
767#CHECK: vfae	%v0, %v0, %v0
768#CHECK: error: invalid operand
769#CHECK: vfae	%v0, %v0, %v0, 0, 0, 0
770
771	vfae	%v0, %v0, %v0, 0, -1
772	vfae	%v0, %v0, %v0, 0, 16
773	vfae	%v0, %v0, %v0, -1, 0
774	vfae	%v0, %v0, %v0, 16, 0
775	vfae	%v0, %v0, %v0
776	vfae	%v0, %v0, %v0, 0, 0, 0
777
778#CHECK: error: invalid operand
779#CHECK: vfaeb	%v0, %v0, %v0, -1
780#CHECK: error: invalid operand
781#CHECK: vfaeb	%v0, %v0, %v0, 16
782#CHECK: error: too few operands
783#CHECK: vfaeb	%v0, %v0
784#CHECK: error: invalid operand
785#CHECK: vfaeb	%v0, %v0, %v0, 0, 0
786
787	vfaeb	%v0, %v0, %v0, -1
788	vfaeb	%v0, %v0, %v0, 16
789	vfaeb	%v0, %v0
790	vfaeb	%v0, %v0, %v0, 0, 0
791
792#CHECK: error: invalid operand
793#CHECK: vfaebs	%v0, %v0, %v0, -1
794#CHECK: error: invalid operand
795#CHECK: vfaebs	%v0, %v0, %v0, 16
796#CHECK: error: too few operands
797#CHECK: vfaebs	%v0, %v0
798#CHECK: error: invalid operand
799#CHECK: vfaebs	%v0, %v0, %v0, 0, 0
800
801	vfaebs	%v0, %v0, %v0, -1
802	vfaebs	%v0, %v0, %v0, 16
803	vfaebs	%v0, %v0
804	vfaebs	%v0, %v0, %v0, 0, 0
805
806#CHECK: error: invalid operand
807#CHECK: vfaef	%v0, %v0, %v0, -1
808#CHECK: error: invalid operand
809#CHECK: vfaef	%v0, %v0, %v0, 16
810#CHECK: error: too few operands
811#CHECK: vfaef	%v0, %v0
812#CHECK: error: invalid operand
813#CHECK: vfaef	%v0, %v0, %v0, 0, 0
814
815	vfaef	%v0, %v0, %v0, -1
816	vfaef	%v0, %v0, %v0, 16
817	vfaef	%v0, %v0
818	vfaef	%v0, %v0, %v0, 0, 0
819
820#CHECK: error: invalid operand
821#CHECK: vfaefs	%v0, %v0, %v0, -1
822#CHECK: error: invalid operand
823#CHECK: vfaefs	%v0, %v0, %v0, 16
824#CHECK: error: too few operands
825#CHECK: vfaefs	%v0, %v0
826#CHECK: error: invalid operand
827#CHECK: vfaefs	%v0, %v0, %v0, 0, 0
828
829	vfaefs	%v0, %v0, %v0, -1
830	vfaefs	%v0, %v0, %v0, 16
831	vfaefs	%v0, %v0
832	vfaefs	%v0, %v0, %v0, 0, 0
833
834#CHECK: error: invalid operand
835#CHECK: vfaeh	%v0, %v0, %v0, -1
836#CHECK: error: invalid operand
837#CHECK: vfaeh	%v0, %v0, %v0, 16
838#CHECK: error: too few operands
839#CHECK: vfaeh	%v0, %v0
840#CHECK: error: invalid operand
841#CHECK: vfaeh	%v0, %v0, %v0, 0, 0
842
843	vfaeh	%v0, %v0, %v0, -1
844	vfaeh	%v0, %v0, %v0, 16
845	vfaeh	%v0, %v0
846	vfaeh	%v0, %v0, %v0, 0, 0
847
848#CHECK: error: invalid operand
849#CHECK: vfaehs	%v0, %v0, %v0, -1
850#CHECK: error: invalid operand
851#CHECK: vfaehs	%v0, %v0, %v0, 16
852#CHECK: error: too few operands
853#CHECK: vfaehs	%v0, %v0
854#CHECK: error: invalid operand
855#CHECK: vfaehs	%v0, %v0, %v0, 0, 0
856
857	vfaehs	%v0, %v0, %v0, -1
858	vfaehs	%v0, %v0, %v0, 16
859	vfaehs	%v0, %v0
860	vfaehs	%v0, %v0, %v0, 0, 0
861
862#CHECK: error: invalid operand
863#CHECK: vfaezb	%v0, %v0, %v0, -1
864#CHECK: error: invalid operand
865#CHECK: vfaezb	%v0, %v0, %v0, 16
866#CHECK: error: too few operands
867#CHECK: vfaezb	%v0, %v0
868#CHECK: error: invalid operand
869#CHECK: vfaezb	%v0, %v0, %v0, 0, 0
870
871	vfaezb	%v0, %v0, %v0, -1
872	vfaezb	%v0, %v0, %v0, 16
873	vfaezb	%v0, %v0
874	vfaezb	%v0, %v0, %v0, 0, 0
875
876#CHECK: error: invalid operand
877#CHECK: vfaezbs	%v0, %v0, %v0, -1
878#CHECK: error: invalid operand
879#CHECK: vfaezbs	%v0, %v0, %v0, 16
880#CHECK: error: too few operands
881#CHECK: vfaezbs	%v0, %v0
882#CHECK: error: invalid operand
883#CHECK: vfaezbs	%v0, %v0, %v0, 0, 0
884
885	vfaezbs	%v0, %v0, %v0, -1
886	vfaezbs	%v0, %v0, %v0, 16
887	vfaezbs	%v0, %v0
888	vfaezbs	%v0, %v0, %v0, 0, 0
889
890#CHECK: error: invalid operand
891#CHECK: vfaezf	%v0, %v0, %v0, -1
892#CHECK: error: invalid operand
893#CHECK: vfaezf	%v0, %v0, %v0, 16
894#CHECK: error: too few operands
895#CHECK: vfaezf	%v0, %v0
896#CHECK: error: invalid operand
897#CHECK: vfaezf	%v0, %v0, %v0, 0, 0
898
899	vfaezf	%v0, %v0, %v0, -1
900	vfaezf	%v0, %v0, %v0, 16
901	vfaezf	%v0, %v0
902	vfaezf	%v0, %v0, %v0, 0, 0
903
904#CHECK: error: invalid operand
905#CHECK: vfaezfs	%v0, %v0, %v0, -1
906#CHECK: error: invalid operand
907#CHECK: vfaezfs	%v0, %v0, %v0, 16
908#CHECK: error: too few operands
909#CHECK: vfaezfs	%v0, %v0
910#CHECK: error: invalid operand
911#CHECK: vfaezfs	%v0, %v0, %v0, 0, 0
912
913	vfaezfs	%v0, %v0, %v0, -1
914	vfaezfs	%v0, %v0, %v0, 16
915	vfaezfs	%v0, %v0
916	vfaezfs	%v0, %v0, %v0, 0, 0
917
918#CHECK: error: invalid operand
919#CHECK: vfaezh	%v0, %v0, %v0, -1
920#CHECK: error: invalid operand
921#CHECK: vfaezh	%v0, %v0, %v0, 16
922#CHECK: error: too few operands
923#CHECK: vfaezh	%v0, %v0
924#CHECK: error: invalid operand
925#CHECK: vfaezh	%v0, %v0, %v0, 0, 0
926
927	vfaezh	%v0, %v0, %v0, -1
928	vfaezh	%v0, %v0, %v0, 16
929	vfaezh	%v0, %v0
930	vfaezh	%v0, %v0, %v0, 0, 0
931
932#CHECK: error: invalid operand
933#CHECK: vfaezhs	%v0, %v0, %v0, -1
934#CHECK: error: invalid operand
935#CHECK: vfaezhs	%v0, %v0, %v0, 16
936#CHECK: error: too few operands
937#CHECK: vfaezhs	%v0, %v0
938#CHECK: error: invalid operand
939#CHECK: vfaezhs	%v0, %v0, %v0, 0, 0
940
941	vfaezhs	%v0, %v0, %v0, -1
942	vfaezhs	%v0, %v0, %v0, 16
943	vfaezhs	%v0, %v0
944	vfaezhs	%v0, %v0, %v0, 0, 0
945
946#CHECK: error: instruction requires: vector-enhancements-1
947#CHECK: vfasb	%v0, %v0, %v0
948
949	vfasb	%v0, %v0, %v0
950
951#CHECK: error: instruction requires: vector-enhancements-1
952#CHECK: vfcesb	%v0, %v0, %v0
953#CHECK: error: instruction requires: vector-enhancements-1
954#CHECK: vfcesbs	%v0, %v0, %v0
955
956	vfcesb	%v0, %v0, %v0
957	vfcesbs	%v0, %v0, %v0
958
959#CHECK: error: instruction requires: vector-enhancements-1
960#CHECK: vfchsb	%v0, %v0, %v0
961#CHECK: error: instruction requires: vector-enhancements-1
962#CHECK: vfchsbs	%v0, %v0, %v0
963
964	vfchsb	%v0, %v0, %v0
965	vfchsbs	%v0, %v0, %v0
966
967#CHECK: error: instruction requires: vector-enhancements-1
968#CHECK: vfchesb	%v0, %v0, %v0
969#CHECK: error: instruction requires: vector-enhancements-1
970#CHECK: vfchesbs %v0, %v0, %v0
971
972	vfchesb	%v0, %v0, %v0
973	vfchesbs %v0, %v0, %v0
974
975#CHECK: error: instruction requires: vector-enhancements-1
976#CHECK: vfdsb	%v0, %v0, %v0
977
978	vfdsb	%v0, %v0, %v0
979
980#CHECK: error: invalid operand
981#CHECK: vfee	%v0, %v0, %v0, 0, -1
982#CHECK: error: invalid operand
983#CHECK: vfee	%v0, %v0, %v0, 0, 16
984#CHECK: error: invalid operand
985#CHECK: vfee	%v0, %v0, %v0, -1, 0
986#CHECK: error: invalid operand
987#CHECK: vfee	%v0, %v0, %v0, 16, 0
988#CHECK: error: too few operands
989#CHECK: vfee	%v0, %v0, %v0
990#CHECK: error: invalid operand
991#CHECK: vfee	%v0, %v0, %v0, 0, 0, 0
992
993	vfee	%v0, %v0, %v0, 0, -1
994	vfee	%v0, %v0, %v0, 0, 16
995	vfee	%v0, %v0, %v0, -1, 0
996	vfee	%v0, %v0, %v0, 16, 0
997	vfee	%v0, %v0, %v0
998	vfee	%v0, %v0, %v0, 0, 0, 0
999
1000#CHECK: error: invalid operand
1001#CHECK: vfeeb	%v0, %v0, %v0, -1
1002#CHECK: error: invalid operand
1003#CHECK: vfeeb	%v0, %v0, %v0, 16
1004#CHECK: error: too few operands
1005#CHECK: vfeeb	%v0, %v0
1006#CHECK: error: invalid operand
1007#CHECK: vfeeb	%v0, %v0, %v0, 0, 0
1008
1009	vfeeb	%v0, %v0, %v0, -1
1010	vfeeb	%v0, %v0, %v0, 16
1011	vfeeb	%v0, %v0
1012	vfeeb	%v0, %v0, %v0, 0, 0
1013
1014#CHECK: error: too few operands
1015#CHECK: vfeebs	%v0, %v0
1016#CHECK: error: invalid operand
1017#CHECK: vfeebs	%v0, %v0, %v0, 0
1018
1019	vfeebs	%v0, %v0
1020	vfeebs	%v0, %v0, %v0, 0
1021
1022#CHECK: error: invalid operand
1023#CHECK: vfeef	%v0, %v0, %v0, -1
1024#CHECK: error: invalid operand
1025#CHECK: vfeef	%v0, %v0, %v0, 16
1026#CHECK: error: too few operands
1027#CHECK: vfeef	%v0, %v0
1028#CHECK: error: invalid operand
1029#CHECK: vfeef	%v0, %v0, %v0, 0, 0
1030
1031	vfeef	%v0, %v0, %v0, -1
1032	vfeef	%v0, %v0, %v0, 16
1033	vfeef	%v0, %v0
1034	vfeef	%v0, %v0, %v0, 0, 0
1035
1036#CHECK: error: too few operands
1037#CHECK: vfeefs	%v0, %v0
1038#CHECK: error: invalid operand
1039#CHECK: vfeefs	%v0, %v0, %v0, 0
1040
1041	vfeefs	%v0, %v0
1042	vfeefs	%v0, %v0, %v0, 0
1043
1044#CHECK: error: invalid operand
1045#CHECK: vfeeh	%v0, %v0, %v0, -1
1046#CHECK: error: invalid operand
1047#CHECK: vfeeh	%v0, %v0, %v0, 16
1048#CHECK: error: too few operands
1049#CHECK: vfeeh	%v0, %v0
1050#CHECK: error: invalid operand
1051#CHECK: vfeeh	%v0, %v0, %v0, 0, 0
1052
1053	vfeeh	%v0, %v0, %v0, -1
1054	vfeeh	%v0, %v0, %v0, 16
1055	vfeeh	%v0, %v0
1056	vfeeh	%v0, %v0, %v0, 0, 0
1057
1058#CHECK: error: too few operands
1059#CHECK: vfeehs	%v0, %v0
1060#CHECK: error: invalid operand
1061#CHECK: vfeehs	%v0, %v0, %v0, 0
1062
1063	vfeehs	%v0, %v0
1064	vfeehs	%v0, %v0, %v0, 0
1065
1066#CHECK: error: too few operands
1067#CHECK: vfeezb	%v0, %v0
1068#CHECK: error: invalid operand
1069#CHECK: vfeezb	%v0, %v0, %v0, 0
1070
1071	vfeezb	%v0, %v0
1072	vfeezb	%v0, %v0, %v0, 0
1073
1074#CHECK: error: too few operands
1075#CHECK: vfeezbs	%v0, %v0
1076#CHECK: error: invalid operand
1077#CHECK: vfeezbs	%v0, %v0, %v0, 0
1078
1079	vfeezbs	%v0, %v0
1080	vfeezbs	%v0, %v0, %v0, 0
1081
1082#CHECK: error: too few operands
1083#CHECK: vfeezf	%v0, %v0
1084#CHECK: error: invalid operand
1085#CHECK: vfeezf	%v0, %v0, %v0, 0
1086
1087	vfeezf	%v0, %v0
1088	vfeezf	%v0, %v0, %v0, 0
1089
1090#CHECK: error: too few operands
1091#CHECK: vfeezfs	%v0, %v0
1092#CHECK: error: invalid operand
1093#CHECK: vfeezfs	%v0, %v0, %v0, 0
1094
1095	vfeezfs	%v0, %v0
1096	vfeezfs	%v0, %v0, %v0, 0
1097
1098#CHECK: error: too few operands
1099#CHECK: vfeezh	%v0, %v0
1100#CHECK: error: invalid operand
1101#CHECK: vfeezh	%v0, %v0, %v0, 0
1102
1103	vfeezh	%v0, %v0
1104	vfeezh	%v0, %v0, %v0, 0
1105
1106#CHECK: error: too few operands
1107#CHECK: vfeezhs	%v0, %v0
1108#CHECK: error: invalid operand
1109#CHECK: vfeezhs	%v0, %v0, %v0, 0
1110
1111	vfeezhs	%v0, %v0
1112	vfeezhs	%v0, %v0, %v0, 0
1113
1114#CHECK: error: invalid operand
1115#CHECK: vfene	%v0, %v0, %v0, 0, -1
1116#CHECK: error: invalid operand
1117#CHECK: vfene	%v0, %v0, %v0, 0, 16
1118#CHECK: error: invalid operand
1119#CHECK: vfene	%v0, %v0, %v0, -1, 0
1120#CHECK: error: invalid operand
1121#CHECK: vfene	%v0, %v0, %v0, 16, 0
1122#CHECK: error: too few operands
1123#CHECK: vfene	%v0, %v0, %v0
1124#CHECK: error: invalid operand
1125#CHECK: vfene	%v0, %v0, %v0, 0, 0, 0
1126
1127	vfene	%v0, %v0, %v0, 0, -1
1128	vfene	%v0, %v0, %v0, 0, 16
1129	vfene	%v0, %v0, %v0, -1, 0
1130	vfene	%v0, %v0, %v0, 16, 0
1131	vfene	%v0, %v0, %v0
1132	vfene	%v0, %v0, %v0, 0, 0, 0
1133
1134#CHECK: error: invalid operand
1135#CHECK: vfeneb	%v0, %v0, %v0, -1
1136#CHECK: error: invalid operand
1137#CHECK: vfeneb	%v0, %v0, %v0, 16
1138#CHECK: error: too few operands
1139#CHECK: vfeneb	%v0, %v0
1140#CHECK: error: invalid operand
1141#CHECK: vfeneb	%v0, %v0, %v0, 0, 0
1142
1143	vfeneb	%v0, %v0, %v0, -1
1144	vfeneb	%v0, %v0, %v0, 16
1145	vfeneb	%v0, %v0
1146	vfeneb	%v0, %v0, %v0, 0, 0
1147
1148#CHECK: error: too few operands
1149#CHECK: vfenebs	%v0, %v0
1150#CHECK: error: invalid operand
1151#CHECK: vfenebs	%v0, %v0, %v0, 0
1152
1153	vfenebs	%v0, %v0
1154	vfenebs	%v0, %v0, %v0, 0
1155
1156#CHECK: error: invalid operand
1157#CHECK: vfenef	%v0, %v0, %v0, -1
1158#CHECK: error: invalid operand
1159#CHECK: vfenef	%v0, %v0, %v0, 16
1160#CHECK: error: too few operands
1161#CHECK: vfenef	%v0, %v0
1162#CHECK: error: invalid operand
1163#CHECK: vfenef	%v0, %v0, %v0, 0, 0
1164
1165	vfenef	%v0, %v0, %v0, -1
1166	vfenef	%v0, %v0, %v0, 16
1167	vfenef	%v0, %v0
1168	vfenef	%v0, %v0, %v0, 0, 0
1169
1170#CHECK: error: too few operands
1171#CHECK: vfenefs	%v0, %v0
1172#CHECK: error: invalid operand
1173#CHECK: vfenefs	%v0, %v0, %v0, 0
1174
1175	vfenefs	%v0, %v0
1176	vfenefs	%v0, %v0, %v0, 0
1177
1178#CHECK: error: invalid operand
1179#CHECK: vfeneh	%v0, %v0, %v0, -1
1180#CHECK: error: invalid operand
1181#CHECK: vfeneh	%v0, %v0, %v0, 16
1182#CHECK: error: too few operands
1183#CHECK: vfeneh	%v0, %v0
1184#CHECK: error: invalid operand
1185#CHECK: vfeneh	%v0, %v0, %v0, 0, 0
1186
1187	vfeneh	%v0, %v0, %v0, -1
1188	vfeneh	%v0, %v0, %v0, 16
1189	vfeneh	%v0, %v0
1190	vfeneh	%v0, %v0, %v0, 0, 0
1191
1192#CHECK: error: too few operands
1193#CHECK: vfenehs	%v0, %v0
1194#CHECK: error: invalid operand
1195#CHECK: vfenehs	%v0, %v0, %v0, 0
1196
1197	vfenehs	%v0, %v0
1198	vfenehs	%v0, %v0, %v0, 0
1199
1200#CHECK: error: too few operands
1201#CHECK: vfenezb	%v0, %v0
1202#CHECK: error: invalid operand
1203#CHECK: vfenezb	%v0, %v0, %v0, 0
1204
1205	vfenezb	%v0, %v0
1206	vfenezb	%v0, %v0, %v0, 0
1207
1208#CHECK: error: too few operands
1209#CHECK: vfenezbs %v0, %v0
1210#CHECK: error: invalid operand
1211#CHECK: vfenezbs %v0, %v0, %v0, 0
1212
1213	vfenezbs %v0, %v0
1214	vfenezbs %v0, %v0, %v0, 0
1215
1216#CHECK: error: too few operands
1217#CHECK: vfenezf	%v0, %v0
1218#CHECK: error: invalid operand
1219#CHECK: vfenezf	%v0, %v0, %v0, 0
1220
1221	vfenezf	%v0, %v0
1222	vfenezf	%v0, %v0, %v0, 0
1223
1224#CHECK: error: too few operands
1225#CHECK: vfenezfs %v0, %v0
1226#CHECK: error: invalid operand
1227#CHECK: vfenezfs %v0, %v0, %v0, 0
1228
1229	vfenezfs %v0, %v0
1230	vfenezfs %v0, %v0, %v0, 0
1231
1232#CHECK: error: too few operands
1233#CHECK: vfenezh	%v0, %v0
1234#CHECK: error: invalid operand
1235#CHECK: vfenezh	%v0, %v0, %v0, 0
1236
1237	vfenezh	%v0, %v0
1238	vfenezh	%v0, %v0, %v0, 0
1239
1240#CHECK: error: too few operands
1241#CHECK: vfenezhs %v0, %v0
1242#CHECK: error: invalid operand
1243#CHECK: vfenezhs %v0, %v0, %v0, 0
1244
1245	vfenezhs %v0, %v0
1246	vfenezhs %v0, %v0, %v0, 0
1247
1248#CHECK: error: invalid operand
1249#CHECK: vfi	%v0, %v0, 0, 0, -1
1250#CHECK: error: invalid operand
1251#CHECK: vfi	%v0, %v0, 0, 0, 16
1252#CHECK: error: invalid operand
1253#CHECK: vfi	%v0, %v0, 0, -1, 0
1254#CHECK: error: invalid operand
1255#CHECK: vfi	%v0, %v0, 0, 16, 0
1256#CHECK: error: invalid operand
1257#CHECK: vfi	%v0, %v0, -1, 0, 0
1258#CHECK: error: invalid operand
1259#CHECK: vfi	%v0, %v0, 16, 0, 0
1260
1261	vfi	%v0, %v0, 0, 0, -1
1262	vfi	%v0, %v0, 0, 0, 16
1263	vfi	%v0, %v0, 0, -1, 0
1264	vfi	%v0, %v0, 0, 16, 0
1265	vfi	%v0, %v0, -1, 0, 0
1266	vfi	%v0, %v0, 16, 0, 0
1267
1268#CHECK: error: invalid operand
1269#CHECK: vfidb	%v0, %v0, 0, -1
1270#CHECK: error: invalid operand
1271#CHECK: vfidb	%v0, %v0, 0, 16
1272#CHECK: error: invalid operand
1273#CHECK: vfidb	%v0, %v0, -1, 0
1274#CHECK: error: invalid operand
1275#CHECK: vfidb	%v0, %v0, 16, 0
1276
1277	vfidb	%v0, %v0, 0, -1
1278	vfidb	%v0, %v0, 0, 16
1279	vfidb	%v0, %v0, -1, 0
1280	vfidb	%v0, %v0, 16, 0
1281
1282#CHECK: error: instruction requires: vector-enhancements-1
1283#CHECK: vfisb	%v0, %v0, 0, 0
1284
1285	vfisb	%v0, %v0, 0, 0
1286
1287#CHECK: error: instruction requires: vector-enhancements-1
1288#CHECK: vfkedb	%v0, %v0, %v0
1289#CHECK: error: instruction requires: vector-enhancements-1
1290#CHECK: vfkedbs	%v0, %v0, %v0
1291#CHECK: error: instruction requires: vector-enhancements-1
1292#CHECK: vfkesb	%v0, %v0, %v0
1293#CHECK: error: instruction requires: vector-enhancements-1
1294#CHECK: vfkesbs	%v0, %v0, %v0
1295
1296	vfkedb	%v0, %v0, %v0
1297	vfkedbs	%v0, %v0, %v0
1298	vfkesb	%v0, %v0, %v0
1299	vfkesbs	%v0, %v0, %v0
1300
1301#CHECK: error: instruction requires: vector-enhancements-1
1302#CHECK: vfkhdb	%v0, %v0, %v0
1303#CHECK: error: instruction requires: vector-enhancements-1
1304#CHECK: vfkhdbs	%v0, %v0, %v0
1305#CHECK: error: instruction requires: vector-enhancements-1
1306#CHECK: vfkhsb	%v0, %v0, %v0
1307#CHECK: error: instruction requires: vector-enhancements-1
1308#CHECK: vfkhsbs	%v0, %v0, %v0
1309
1310	vfkhdb	%v0, %v0, %v0
1311	vfkhdbs	%v0, %v0, %v0
1312	vfkhsb	%v0, %v0, %v0
1313	vfkhsbs	%v0, %v0, %v0
1314
1315#CHECK: error: instruction requires: vector-enhancements-1
1316#CHECK: vfkhedb	%v0, %v0, %v0
1317#CHECK: error: instruction requires: vector-enhancements-1
1318#CHECK: vfkhedbs %v0, %v0, %v0
1319#CHECK: error: instruction requires: vector-enhancements-1
1320#CHECK: vfkhesb	%v0, %v0, %v0
1321#CHECK: error: instruction requires: vector-enhancements-1
1322#CHECK: vfkhesbs %v0, %v0, %v0
1323
1324	vfkhedb	%v0, %v0, %v0
1325	vfkhedbs %v0, %v0, %v0
1326	vfkhesb	%v0, %v0, %v0
1327	vfkhesbs %v0, %v0, %v0
1328
1329#CHECK: error: instruction requires: vector-enhancements-1
1330#CHECK: vfpsosb	%v0, %v0, 0
1331#CHECK: error: instruction requires: vector-enhancements-1
1332#CHECK: vflcsb	%v0, %v0
1333#CHECK: error: instruction requires: vector-enhancements-1
1334#CHECK: vflnsb	%v0, %v0
1335#CHECK: error: instruction requires: vector-enhancements-1
1336#CHECK: vflpsb	%v0, %v0
1337
1338	vfpsosb	%v0, %v0, 0
1339	vflcsb	%v0, %v0
1340	vflnsb	%v0, %v0
1341	vflpsb	%v0, %v0
1342
1343#CHECK: error: instruction requires: vector-enhancements-1
1344#CHECK: vfll	%v0, %v0, 0, 0
1345#CHECK: error: instruction requires: vector-enhancements-1
1346#CHECK: vflls	%v0, %v0
1347
1348	vfll	%v0, %v0, 0, 0
1349	vflls	%v0, %v0
1350
1351#CHECK: error: instruction requires: vector-enhancements-1
1352#CHECK: vflr	%v0, %v0, 0, 0, 0
1353#CHECK: error: instruction requires: vector-enhancements-1
1354#CHECK: vflrd	%v0, %v0, 0, 0
1355
1356	vflr	%v0, %v0, 0, 0, 0
1357	vflrd	%v0, %v0, 0, 0
1358
1359#CHECK: error: instruction requires: vector-enhancements-1
1360#CHECK: vfmax	%v0, %v0, %v0, 0, 0, 0
1361#CHECK: error: instruction requires: vector-enhancements-1
1362#CHECK: vfmaxdb	%v0, %v0, %v0, 0
1363#CHECK: error: instruction requires: vector-enhancements-1
1364#CHECK: vfmaxsb	%v0, %v0, %v0, 0
1365
1366	vfmax	%v0, %v0, %v0, 0, 0, 0
1367	vfmaxdb	%v0, %v0, %v0, 0
1368	vfmaxsb	%v0, %v0, %v0, 0
1369
1370#CHECK: error: instruction requires: vector-enhancements-1
1371#CHECK: vfmin	%v0, %v0, %v0, 0, 0, 0
1372#CHECK: error: instruction requires: vector-enhancements-1
1373#CHECK: vfmindb	%v0, %v0, %v0, 0
1374#CHECK: error: instruction requires: vector-enhancements-1
1375#CHECK: vfminsb	%v0, %v0, %v0, 0
1376
1377	vfmin	%v0, %v0, %v0, 0, 0, 0
1378	vfmindb	%v0, %v0, %v0, 0
1379	vfminsb	%v0, %v0, %v0, 0
1380
1381#CHECK: error: instruction requires: vector-enhancements-1
1382#CHECK: vfmasb	%v0, %v0, %v0, %v0
1383
1384	vfmasb	%v0, %v0, %v0, %v0
1385
1386#CHECK: error: instruction requires: vector-enhancements-1
1387#CHECK: vfmsb	%v0, %v0, %v0
1388
1389	vfmsb	%v0, %v0, %v0
1390
1391#CHECK: error: instruction requires: vector-enhancements-1
1392#CHECK: vfmssb	%v0, %v0, %v0, %v0
1393
1394	vfmssb	%v0, %v0, %v0, %v0
1395
1396#CHECK: error: instruction requires: vector-enhancements-1
1397#CHECK: vfnma	%v0, %v0, %v0, %v0, 0, 0
1398#CHECK: error: instruction requires: vector-enhancements-1
1399#CHECK: vfnmadb	%v0, %v0, %v0, %v0
1400#CHECK: error: instruction requires: vector-enhancements-1
1401#CHECK: vfnmasb	%v0, %v0, %v0, %v0
1402
1403	vfnma	%v0, %v0, %v0, %v0, 0, 0
1404	vfnmadb	%v0, %v0, %v0, %v0
1405	vfnmasb	%v0, %v0, %v0, %v0
1406
1407#CHECK: error: instruction requires: vector-enhancements-1
1408#CHECK: vfnms	%v0, %v0, %v0, %v0, 0, 0
1409#CHECK: error: instruction requires: vector-enhancements-1
1410#CHECK: vfnmsdb	%v0, %v0, %v0, %v0
1411#CHECK: error: instruction requires: vector-enhancements-1
1412#CHECK: vfnmssb	%v0, %v0, %v0, %v0
1413
1414	vfnms	%v0, %v0, %v0, %v0, 0, 0
1415	vfnmsdb	%v0, %v0, %v0, %v0
1416	vfnmssb	%v0, %v0, %v0, %v0
1417
1418#CHECK: error: instruction requires: vector-enhancements-1
1419#CHECK: vfssb	%v0, %v0, %v0
1420
1421	vfssb	%v0, %v0, %v0
1422
1423#CHECK: error: instruction requires: vector-enhancements-1
1424#CHECK: vfsqsb	%v0, %v0
1425
1426	vfsqsb	%v0, %v0
1427
1428#CHECK: error: invalid operand
1429#CHECK: vftci	%v0, %v0, 0, 0, -1
1430#CHECK: error: invalid operand
1431#CHECK: vftci	%v0, %v0, 0, 0, 16
1432#CHECK: error: invalid operand
1433#CHECK: vftci	%v0, %v0, 0, -1, 0
1434#CHECK: error: invalid operand
1435#CHECK: vftci	%v0, %v0, 0, 16, 0
1436#CHECK: error: invalid operand
1437#CHECK: vftci	%v0, %v0, -1, 0, 0
1438#CHECK: error: invalid operand
1439#CHECK: vftci	%v0, %v0, 4096, 0, 0
1440
1441	vftci	%v0, %v0, 0, 0, -1
1442	vftci	%v0, %v0, 0, 0, 16
1443	vftci	%v0, %v0, 0, -1, 0
1444	vftci	%v0, %v0, 0, 16, 0
1445	vftci	%v0, %v0, -1, 0, 0
1446	vftci	%v0, %v0, 4096, 0, 0
1447
1448#CHECK: error: invalid operand
1449#CHECK: vftcidb	%v0, %v0, -1
1450#CHECK: error: invalid operand
1451#CHECK: vftcidb	%v0, %v0, 4096
1452
1453	vftcidb	%v0, %v0, -1
1454	vftcidb	%v0, %v0, 4096
1455
1456#CHECK: error: instruction requires: vector-enhancements-1
1457#CHECK: vftcisb	%v0, %v0, 0
1458
1459	vftcisb	%v0, %v0, 0
1460
1461#CHECK: error: invalid operand
1462#CHECK: vgbm	%v0, -1
1463#CHECK: error: invalid operand
1464#CHECK: vgbm	%v0, 0x10000
1465
1466	vgbm	%v0, -1
1467	vgbm	%v0, 0x10000
1468
1469#CHECK: error: vector index required
1470#CHECK: vgef	%v0, 0(%r1), 0
1471#CHECK: error: vector index required
1472#CHECK: vgef	%v0, 0(%r2,%r1), 0
1473#CHECK: error: invalid operand
1474#CHECK: vgef	%v0, 0(%v0,%r1), -1
1475#CHECK: error: invalid operand
1476#CHECK: vgef	%v0, 0(%v0,%r1), 4
1477#CHECK: error: invalid operand
1478#CHECK: vgef	%v0, -1(%v0,%r1), 0
1479#CHECK: error: invalid operand
1480#CHECK: vgef	%v0, 4096(%v0,%r1), 0
1481
1482	vgef	%v0, 0(%r1), 0
1483	vgef	%v0, 0(%r2,%r1), 0
1484	vgef	%v0, 0(%v0,%r1), -1
1485	vgef	%v0, 0(%v0,%r1), 4
1486	vgef	%v0, -1(%v0,%r1), 0
1487	vgef	%v0, 4096(%v0,%r1), 0
1488
1489#CHECK: error: vector index required
1490#CHECK: vgeg	%v0, 0(%r1), 0
1491#CHECK: error: vector index required
1492#CHECK: vgeg	%v0, 0(%r2,%r1), 0
1493#CHECK: error: invalid operand
1494#CHECK: vgeg	%v0, 0(%v0,%r1), -1
1495#CHECK: error: invalid operand
1496#CHECK: vgeg	%v0, 0(%v0,%r1), 2
1497#CHECK: error: invalid operand
1498#CHECK: vgeg	%v0, -1(%v0,%r1), 0
1499#CHECK: error: invalid operand
1500#CHECK: vgeg	%v0, 4096(%v0,%r1), 0
1501
1502	vgeg	%v0, 0(%r1), 0
1503	vgeg	%v0, 0(%r2,%r1), 0
1504	vgeg	%v0, 0(%v0,%r1), -1
1505	vgeg	%v0, 0(%v0,%r1), 2
1506	vgeg	%v0, -1(%v0,%r1), 0
1507	vgeg	%v0, 4096(%v0,%r1), 0
1508
1509#CHECK: error: invalid operand
1510#CHECK: vgm	%v0, 0, 0, -1
1511#CHECK: error: invalid operand
1512#CHECK: vgm	%v0, 0, 0, 16
1513#CHECK: error: invalid operand
1514#CHECK: vgm	%v0, 0, -1, 0
1515#CHECK: error: invalid operand
1516#CHECK: vgm	%v0, 0, 256, 0
1517#CHECK: error: invalid operand
1518#CHECK: vgm	%v0, -1, 0, 0
1519#CHECK: error: invalid operand
1520#CHECK: vgm	%v0, 256, 0, 0
1521
1522	vgm	%v0, 0, 0, -1
1523	vgm	%v0, 0, 0, 16
1524	vgm	%v0, 0, -1, 0
1525	vgm	%v0, 0, 256, 0
1526	vgm	%v0, -1, 0, 0
1527	vgm	%v0, 256, 0, 0
1528
1529#CHECK: error: invalid operand
1530#CHECK: vgmb	%v0, 0, -1
1531#CHECK: error: invalid operand
1532#CHECK: vgmb	%v0, 0, 256
1533#CHECK: error: invalid operand
1534#CHECK: vgmb	%v0, -1, 0
1535#CHECK: error: invalid operand
1536#CHECK: vgmb	%v0, 256, 0
1537
1538	vgmb	%v0, 0, -1
1539	vgmb	%v0, 0, 256
1540	vgmb	%v0, -1, 0
1541	vgmb	%v0, 256, 0
1542
1543#CHECK: error: invalid operand
1544#CHECK: vgmf	%v0, 0, -1
1545#CHECK: error: invalid operand
1546#CHECK: vgmf	%v0, 0, 256
1547#CHECK: error: invalid operand
1548#CHECK: vgmf	%v0, -1, 0
1549#CHECK: error: invalid operand
1550#CHECK: vgmf	%v0, 256, 0
1551
1552	vgmf	%v0, 0, -1
1553	vgmf	%v0, 0, 256
1554	vgmf	%v0, -1, 0
1555	vgmf	%v0, 256, 0
1556
1557#CHECK: error: invalid operand
1558#CHECK: vgmg	%v0, 0, -1
1559#CHECK: error: invalid operand
1560#CHECK: vgmg	%v0, 0, 256
1561#CHECK: error: invalid operand
1562#CHECK: vgmg	%v0, -1, 0
1563#CHECK: error: invalid operand
1564#CHECK: vgmg	%v0, 256, 0
1565
1566	vgmg	%v0, 0, -1
1567	vgmg	%v0, 0, 256
1568	vgmg	%v0, -1, 0
1569	vgmg	%v0, 256, 0
1570
1571#CHECK: error: invalid operand
1572#CHECK: vgmh	%v0, 0, -1
1573#CHECK: error: invalid operand
1574#CHECK: vgmh	%v0, 0, 256
1575#CHECK: error: invalid operand
1576#CHECK: vgmh	%v0, -1, 0
1577#CHECK: error: invalid operand
1578#CHECK: vgmh	%v0, 256, 0
1579
1580	vgmh	%v0, 0, -1
1581	vgmh	%v0, 0, 256
1582	vgmh	%v0, -1, 0
1583	vgmh	%v0, 256, 0
1584
1585#CHECK: error: invalid operand
1586#CHECK: vistr	%v0, %v0, 0, -1
1587#CHECK: error: invalid operand
1588#CHECK: vistr	%v0, %v0, 0, 16
1589#CHECK: error: invalid operand
1590#CHECK: vistr	%v0, %v0, -1, 0
1591#CHECK: error: invalid operand
1592#CHECK: vistr	%v0, %v0, 16, 0
1593#CHECK: error: too few operands
1594#CHECK: vistr	%v0, %v0
1595#CHECK: error: invalid operand
1596#CHECK: vistr	%v0, %v0, 0, 0, 0
1597
1598	vistr	%v0, %v0, 0, -1
1599	vistr	%v0, %v0, 0, 16
1600	vistr	%v0, %v0, -1, 0
1601	vistr	%v0, %v0, 16, 0
1602	vistr	%v0, %v0
1603	vistr	%v0, %v0, 0, 0, 0
1604
1605#CHECK: error: invalid operand
1606#CHECK: vistrb	%v0, %v0, -1
1607#CHECK: error: invalid operand
1608#CHECK: vistrb	%v0, %v0, 16
1609#CHECK: error: too few operands
1610#CHECK: vistrb	%v0
1611#CHECK: error: invalid operand
1612#CHECK: vistrb	%v0, %v0, 0, 0
1613
1614	vistrb	%v0, %v0, -1
1615	vistrb	%v0, %v0, 16
1616	vistrb	%v0
1617	vistrb	%v0, %v0, 0, 0
1618
1619#CHECK: error: too few operands
1620#CHECK: vistrbs	%v0
1621#CHECK: error: invalid operand
1622#CHECK: vistrbs	%v0, %v0, 0
1623
1624	vistrbs	%v0
1625	vistrbs	%v0, %v0, 0
1626
1627#CHECK: error: invalid operand
1628#CHECK: vistrf	%v0, %v0, -1
1629#CHECK: error: invalid operand
1630#CHECK: vistrf	%v0, %v0, 16
1631#CHECK: error: too few operands
1632#CHECK: vistrf	%v0
1633#CHECK: error: invalid operand
1634#CHECK: vistrf	%v0, %v0, 0, 0
1635
1636	vistrf	%v0, %v0, -1
1637	vistrf	%v0, %v0, 16
1638	vistrf	%v0
1639	vistrf	%v0, %v0, 0, 0
1640
1641#CHECK: error: too few operands
1642#CHECK: vistrfs	%v0
1643#CHECK: error: invalid operand
1644#CHECK: vistrfs	%v0, %v0, 0
1645
1646	vistrfs	%v0
1647	vistrfs	%v0, %v0, 0
1648
1649#CHECK: error: invalid operand
1650#CHECK: vistrh	%v0, %v0, -1
1651#CHECK: error: invalid operand
1652#CHECK: vistrh	%v0, %v0, 16
1653#CHECK: error: too few operands
1654#CHECK: vistrh	%v0
1655#CHECK: error: invalid operand
1656#CHECK: vistrh	%v0, %v0, 0, 0
1657
1658	vistrh	%v0, %v0, -1
1659	vistrh	%v0, %v0, 16
1660	vistrh	%v0
1661	vistrh	%v0, %v0, 0, 0
1662
1663#CHECK: error: too few operands
1664#CHECK: vistrhs	%v0
1665#CHECK: error: invalid operand
1666#CHECK: vistrhs	%v0, %v0, 0
1667
1668	vistrhs	%v0
1669	vistrhs	%v0, %v0, 0
1670
1671#CHECK: error: invalid operand
1672#CHECK: vl	%v0, -1
1673#CHECK: error: invalid operand
1674#CHECK: vl	%v0, 4096
1675#CHECK: error: invalid use of vector addressing
1676#CHECK: vl	%v0, 0(%v1,%r2)
1677#CHECK: error: invalid operand
1678#CHECK: vl	%v0, 0, -1
1679#CHECK: error: invalid operand
1680#CHECK: vl	%v0, 0, 16
1681
1682	vl	%v0, -1
1683	vl	%v0, 4096
1684	vl	%v0, 0(%v1,%r2)
1685	vl	%v0, 0, -1
1686	vl	%v0, 0, 16
1687
1688#CHECK: error: invalid operand
1689#CHECK: vlbb	%v0, 0, -1
1690#CHECK: error: invalid operand
1691#CHECK: vlbb	%v0, 0, 16
1692#CHECK: error: invalid operand
1693#CHECK: vlbb	%v0, -1, 0
1694#CHECK: error: invalid operand
1695#CHECK: vlbb	%v0, 4096, 0
1696#CHECK: error: invalid use of vector addressing
1697#CHECK: vlbb	%v0, 0(%v1,%r2), 0
1698
1699	vlbb	%v0, 0, -1
1700	vlbb	%v0, 0, 16
1701	vlbb	%v0, -1, 0
1702	vlbb	%v0, 4096, 0
1703	vlbb	%v0, 0(%v1,%r2), 0
1704
1705#CHECK: error: invalid operand
1706#CHECK: vleb	%v0, 0, -1
1707#CHECK: error: invalid operand
1708#CHECK: vleb	%v0, 0, 16
1709#CHECK: error: invalid operand
1710#CHECK: vleb	%v0, -1, 0
1711#CHECK: error: invalid operand
1712#CHECK: vleb	%v0, 4096, 0
1713#CHECK: error: invalid use of vector addressing
1714#CHECK: vleb	%v0, 0(%v1,%r2), 0
1715
1716	vleb	%v0, 0, -1
1717	vleb	%v0, 0, 16
1718	vleb	%v0, -1, 0
1719	vleb	%v0, 4096, 0
1720	vleb	%v0, 0(%v1,%r2), 0
1721
1722#CHECK: error: invalid operand
1723#CHECK: vled	%v0, %v0, 0, 0, -1
1724#CHECK: error: invalid operand
1725#CHECK: vled	%v0, %v0, 0, 0, 16
1726#CHECK: error: invalid operand
1727#CHECK: vled	%v0, %v0, 0, -1, 0
1728#CHECK: error: invalid operand
1729#CHECK: vled	%v0, %v0, 0, 16, 0
1730#CHECK: error: invalid operand
1731#CHECK: vled	%v0, %v0, -1, 0, 0
1732#CHECK: error: invalid operand
1733#CHECK: vled	%v0, %v0, 16, 0, 0
1734
1735	vled	%v0, %v0, 0, 0, -1
1736	vled	%v0, %v0, 0, 0, 16
1737	vled	%v0, %v0, 0, -1, 0
1738	vled	%v0, %v0, 0, 16, 0
1739	vled	%v0, %v0, -1, 0, 0
1740	vled	%v0, %v0, 16, 0, 0
1741
1742#CHECK: error: invalid operand
1743#CHECK: vledb	%v0, %v0, 0, -1
1744#CHECK: error: invalid operand
1745#CHECK: vledb	%v0, %v0, 0, 16
1746#CHECK: error: invalid operand
1747#CHECK: vledb	%v0, %v0, -1, 0
1748#CHECK: error: invalid operand
1749#CHECK: vledb	%v0, %v0, 16, 0
1750
1751	vledb	%v0, %v0, 0, -1
1752	vledb	%v0, %v0, 0, 16
1753	vledb	%v0, %v0, -1, 0
1754	vledb	%v0, %v0, 16, 0
1755
1756#CHECK: error: invalid operand
1757#CHECK: vlef	%v0, 0, -1
1758#CHECK: error: invalid operand
1759#CHECK: vlef	%v0, 0, 4
1760#CHECK: error: invalid operand
1761#CHECK: vlef	%v0, -1, 0
1762#CHECK: error: invalid operand
1763#CHECK: vlef	%v0, 4096, 0
1764#CHECK: error: invalid use of vector addressing
1765#CHECK: vlef	%v0, 0(%v1,%r2), 0
1766
1767	vlef	%v0, 0, -1
1768	vlef	%v0, 0, 4
1769	vlef	%v0, -1, 0
1770	vlef	%v0, 4096, 0
1771	vlef	%v0, 0(%v1,%r2), 0
1772
1773#CHECK: error: invalid operand
1774#CHECK: vleg	%v0, 0, -1
1775#CHECK: error: invalid operand
1776#CHECK: vleg	%v0, 0, 2
1777#CHECK: error: invalid operand
1778#CHECK: vleg	%v0, -1, 0
1779#CHECK: error: invalid operand
1780#CHECK: vleg	%v0, 4096, 0
1781#CHECK: error: invalid use of vector addressing
1782#CHECK: vleg	%v0, 0(%v1,%r2), 0
1783
1784	vleg	%v0, 0, -1
1785	vleg	%v0, 0, 2
1786	vleg	%v0, -1, 0
1787	vleg	%v0, 4096, 0
1788	vleg	%v0, 0(%v1,%r2), 0
1789
1790#CHECK: error: invalid operand
1791#CHECK: vleh	%v0, 0, -1
1792#CHECK: error: invalid operand
1793#CHECK: vleh	%v0, 0, 8
1794#CHECK: error: invalid operand
1795#CHECK: vleh	%v0, -1, 0
1796#CHECK: error: invalid operand
1797#CHECK: vleh	%v0, 4096, 0
1798#CHECK: error: invalid use of vector addressing
1799#CHECK: vleh	%v0, 0(%v1,%r2), 0
1800
1801	vleh	%v0, 0, -1
1802	vleh	%v0, 0, 8
1803	vleh	%v0, -1, 0
1804	vleh	%v0, 4096, 0
1805	vleh	%v0, 0(%v1,%r2), 0
1806
1807#CHECK: error: invalid operand
1808#CHECK: vleib	%v0, 0, -1
1809#CHECK: error: invalid operand
1810#CHECK: vleib	%v0, 0, 16
1811#CHECK: error: invalid operand
1812#CHECK: vleib	%v0, -32769, 0
1813#CHECK: error: invalid operand
1814#CHECK: vleib	%v0, 32768, 0
1815
1816	vleib	%v0, 0, -1
1817	vleib	%v0, 0, 16
1818	vleib	%v0, -32769, 0
1819	vleib	%v0, 32768, 0
1820
1821#CHECK: error: invalid operand
1822#CHECK: vleif	%v0, 0, -1
1823#CHECK: error: invalid operand
1824#CHECK: vleif	%v0, 0, 4
1825#CHECK: error: invalid operand
1826#CHECK: vleif	%v0, -32769, 0
1827#CHECK: error: invalid operand
1828#CHECK: vleif	%v0, 32768, 0
1829
1830	vleif	%v0, 0, -1
1831	vleif	%v0, 0, 4
1832	vleif	%v0, -32769, 0
1833	vleif	%v0, 32768, 0
1834
1835#CHECK: error: invalid operand
1836#CHECK: vleig	%v0, 0, -1
1837#CHECK: error: invalid operand
1838#CHECK: vleig	%v0, 0, 2
1839#CHECK: error: invalid operand
1840#CHECK: vleig	%v0, -32769, 0
1841#CHECK: error: invalid operand
1842#CHECK: vleig	%v0, 32768, 0
1843
1844	vleig	%v0, 0, -1
1845	vleig	%v0, 0, 2
1846	vleig	%v0, -32769, 0
1847	vleig	%v0, 32768, 0
1848
1849#CHECK: error: invalid operand
1850#CHECK: vleih	%v0, 0, -1
1851#CHECK: error: invalid operand
1852#CHECK: vleih	%v0, 0, 8
1853#CHECK: error: invalid operand
1854#CHECK: vleih	%v0, -32769, 0
1855#CHECK: error: invalid operand
1856#CHECK: vleih	%v0, 32768, 0
1857
1858	vleih	%v0, 0, -1
1859	vleih	%v0, 0, 8
1860	vleih	%v0, -32769, 0
1861	vleih	%v0, 32768, 0
1862
1863#CHECK: error: invalid operand
1864#CHECK: vlgv	%r0, %v0, 0, -1
1865#CHECK: error: invalid operand
1866#CHECK: vlgv	%r0, %v0, 0, 16
1867#CHECK: error: invalid operand
1868#CHECK: vlgv	%r0, %v0, -1, 0
1869#CHECK: error: invalid operand
1870#CHECK: vlgv	%r0, %v0, 4096, 0
1871
1872	vlgv	%r0, %v0, 0, -1
1873	vlgv	%r0, %v0, 0, 16
1874	vlgv	%r0, %v0, -1, 0
1875	vlgv	%r0, %v0, 4096, 0
1876
1877#CHECK: error: invalid operand
1878#CHECK: vlgvb	%r0, %v0, -1
1879#CHECK: error: invalid operand
1880#CHECK: vlgvb	%r0, %v0, 4096
1881
1882	vlgvb	%r0, %v0, -1
1883	vlgvb	%r0, %v0, 4096
1884
1885#CHECK: error: invalid operand
1886#CHECK: vlgvf	%r0, %v0, -1
1887#CHECK: error: invalid operand
1888#CHECK: vlgvf	%r0, %v0, 4096
1889
1890	vlgvf	%r0, %v0, -1
1891	vlgvf	%r0, %v0, 4096
1892
1893#CHECK: error: invalid operand
1894#CHECK: vlgvg	%r0, %v0, -1
1895#CHECK: error: invalid operand
1896#CHECK: vlgvg	%r0, %v0, 4096
1897
1898	vlgvg	%r0, %v0, -1
1899	vlgvg	%r0, %v0, 4096
1900
1901#CHECK: error: invalid operand
1902#CHECK: vlgvh	%r0, %v0, -1
1903#CHECK: error: invalid operand
1904#CHECK: vlgvh	%r0, %v0, 4096
1905
1906	vlgvh	%r0, %v0, -1
1907	vlgvh	%r0, %v0, 4096
1908
1909#CHECK: error: instruction requires: vector-packed-decimal
1910#CHECK: vlip	%v0, 0, 0
1911
1912	vlip	%v0, 0, 0
1913
1914#CHECK: error: invalid operand
1915#CHECK: vll	%v0, %r0, -1
1916#CHECK: error: invalid operand
1917#CHECK: vll	%v0, %r0, 4096
1918
1919	vll	%v0, %r0, -1
1920	vll	%v0, %r0, 4096
1921
1922#CHECK: error: invalid operand
1923#CHECK: vllez	%v0, 0, -1
1924#CHECK: error: invalid operand
1925#CHECK: vllez	%v0, 0, 16
1926#CHECK: error: invalid operand
1927#CHECK: vllez	%v0, -1, 0
1928#CHECK: error: invalid operand
1929#CHECK: vllez	%v0, 4096, 0
1930#CHECK: error: invalid use of vector addressing
1931#CHECK: vllez	%v0, 0(%v1,%r2), 0
1932
1933	vllez	%v0, 0, -1
1934	vllez	%v0, 0, 16
1935	vllez	%v0, -1, 0
1936	vllez	%v0, 4096, 0
1937	vllez	%v0, 0(%v1,%r2), 0
1938
1939#CHECK: error: invalid operand
1940#CHECK: vllezb	%v0, -1
1941#CHECK: error: invalid operand
1942#CHECK: vllezb	%v0, 4096
1943#CHECK: error: invalid use of vector addressing
1944#CHECK: vllezb	%v0, 0(%v1,%r2)
1945
1946	vllezb	%v0, -1
1947	vllezb	%v0, 4096
1948	vllezb	%v0, 0(%v1,%r2)
1949
1950#CHECK: error: invalid operand
1951#CHECK: vllezf	%v0, -1
1952#CHECK: error: invalid operand
1953#CHECK: vllezf	%v0, 4096
1954#CHECK: error: invalid use of vector addressing
1955#CHECK: vllezf	%v0, 0(%v1,%r2)
1956
1957	vllezf	%v0, -1
1958	vllezf	%v0, 4096
1959	vllezf	%v0, 0(%v1,%r2)
1960
1961#CHECK: error: invalid operand
1962#CHECK: vllezg	%v0, -1
1963#CHECK: error: invalid operand
1964#CHECK: vllezg	%v0, 4096
1965#CHECK: error: invalid use of vector addressing
1966#CHECK: vllezg	%v0, 0(%v1,%r2)
1967
1968	vllezg	%v0, -1
1969	vllezg	%v0, 4096
1970	vllezg	%v0, 0(%v1,%r2)
1971
1972#CHECK: error: invalid operand
1973#CHECK: vllezh	%v0, -1
1974#CHECK: error: invalid operand
1975#CHECK: vllezh	%v0, 4096
1976#CHECK: error: invalid use of vector addressing
1977#CHECK: vllezh	%v0, 0(%v1,%r2)
1978
1979	vllezh	%v0, -1
1980	vllezh	%v0, 4096
1981	vllezh	%v0, 0(%v1,%r2)
1982
1983#CHECK: error: instruction requires: vector-enhancements-1
1984#CHECK: vllezlf	%v0, 0
1985
1986	vllezlf	%v0, 0
1987
1988#CHECK: error: invalid operand
1989#CHECK: vlm	%v0, %v0, -1
1990#CHECK: error: invalid operand
1991#CHECK: vlm	%v0, %v0, 4096
1992#CHECK: error: invalid operand
1993#CHECK: vlm	%v0, %v0, 0, -1
1994#CHECK: error: invalid operand
1995#CHECK: vlm	%v0, %v0, 0, 16
1996
1997	vlm	%v0, %v0, -1
1998	vlm	%v0, %v0, 4096
1999	vlm	%v0, %v0, 0, -1
2000	vlm	%v0, %v0, 0, 16
2001
2002#CHECK: error: invalid operand
2003#CHECK: vlrep	%v0, 0, -1
2004#CHECK: error: invalid operand
2005#CHECK: vlrep	%v0, 0, 16
2006#CHECK: error: invalid operand
2007#CHECK: vlrep	%v0, -1, 0
2008#CHECK: error: invalid operand
2009#CHECK: vlrep	%v0, 4096, 0
2010#CHECK: error: invalid use of vector addressing
2011#CHECK: vlrep	%v0, 0(%v1,%r2), 0
2012
2013	vlrep	%v0, 0, -1
2014	vlrep	%v0, 0, 16
2015	vlrep	%v0, -1, 0
2016	vlrep	%v0, 4096, 0
2017	vlrep	%v0, 0(%v1,%r2), 0
2018
2019#CHECK: error: invalid operand
2020#CHECK: vlrepb	%v0, -1
2021#CHECK: error: invalid operand
2022#CHECK: vlrepb	%v0, 4096
2023#CHECK: error: invalid use of vector addressing
2024#CHECK: vlrepb	%v0, 0(%v1,%r2)
2025
2026	vlrepb	%v0, -1
2027	vlrepb	%v0, 4096
2028	vlrepb	%v0, 0(%v1,%r2)
2029
2030#CHECK: error: invalid operand
2031#CHECK: vlrepf	%v0, -1
2032#CHECK: error: invalid operand
2033#CHECK: vlrepf	%v0, 4096
2034#CHECK: error: invalid use of vector addressing
2035#CHECK: vlrepf	%v0, 0(%v1,%r2)
2036
2037	vlrepf	%v0, -1
2038	vlrepf	%v0, 4096
2039	vlrepf	%v0, 0(%v1,%r2)
2040
2041#CHECK: error: invalid operand
2042#CHECK: vlrepg	%v0, -1
2043#CHECK: error: invalid operand
2044#CHECK: vlrepg	%v0, 4096
2045#CHECK: error: invalid use of vector addressing
2046#CHECK: vlrepg	%v0, 0(%v1,%r2)
2047
2048	vlrepg	%v0, -1
2049	vlrepg	%v0, 4096
2050	vlrepg	%v0, 0(%v1,%r2)
2051
2052#CHECK: error: invalid operand
2053#CHECK: vlreph	%v0, -1
2054#CHECK: error: invalid operand
2055#CHECK: vlreph	%v0, 4096
2056#CHECK: error: invalid use of vector addressing
2057#CHECK: vlreph	%v0, 0(%v1,%r2)
2058
2059	vlreph	%v0, -1
2060	vlreph	%v0, 4096
2061	vlreph	%v0, 0(%v1,%r2)
2062
2063#CHECK: error: instruction requires: vector-packed-decimal
2064#CHECK: vlrl	%v0, 0, 0
2065
2066	vlrl	%v0, 0, 0
2067
2068#CHECK: error: instruction requires: vector-packed-decimal
2069#CHECK: vlrlr	%v0, %r0, 0
2070
2071	vlrlr	%v0, %r0, 0
2072
2073#CHECK: error: invalid operand
2074#CHECK: vlvg	%v0, %r0, 0, -1
2075#CHECK: error: invalid operand
2076#CHECK: vlvg	%v0, %r0, 0, 16
2077#CHECK: error: invalid operand
2078#CHECK: vlvg	%v0, %r0, -1, 0
2079#CHECK: error: invalid operand
2080#CHECK: vlvg	%v0, %r0, 4096, 0
2081
2082	vlvg	%v0, %r0, 0, -1
2083	vlvg	%v0, %r0, 0, 16
2084	vlvg	%v0, %r0, -1, 0
2085	vlvg	%v0, %r0, 4096, 0
2086
2087#CHECK: error: invalid operand
2088#CHECK: vlvgb	%v0, %r0, -1
2089#CHECK: error: invalid operand
2090#CHECK: vlvgb	%v0, %r0, 4096
2091
2092	vlvgb	%v0, %r0, -1
2093	vlvgb	%v0, %r0, 4096
2094
2095#CHECK: error: invalid operand
2096#CHECK: vlvgf	%v0, %r0, -1
2097#CHECK: error: invalid operand
2098#CHECK: vlvgf	%v0, %r0, 4096
2099
2100	vlvgf	%v0, %r0, -1
2101	vlvgf	%v0, %r0, 4096
2102
2103#CHECK: error: invalid operand
2104#CHECK: vlvgg	%v0, %r0, -1
2105#CHECK: error: invalid operand
2106#CHECK: vlvgg	%v0, %r0, 4096
2107
2108	vlvgg	%v0, %r0, -1
2109	vlvgg	%v0, %r0, 4096
2110
2111#CHECK: error: invalid operand
2112#CHECK: vlvgh	%v0, %r0, -1
2113#CHECK: error: invalid operand
2114#CHECK: vlvgh	%v0, %r0, 4096
2115
2116	vlvgh	%v0, %r0, -1
2117	vlvgh	%v0, %r0, 4096
2118
2119#CHECK: error: instruction requires: vector-packed-decimal
2120#CHECK: vmp	%v0, %v0, %v0, 0, 0
2121
2122	vmp	%v0, %v0, %v0, 0, 0
2123
2124#CHECK: error: instruction requires: vector-enhancements-1
2125#CHECK: vmsl	%v0, %v0, %v0, %v0, 0, 0
2126#CHECK: error: instruction requires: vector-enhancements-1
2127#CHECK: vmslg	%v0, %v0, %v0, %v0, 0
2128
2129	vmsl	%v0, %v0, %v0, %v0, 0, 0
2130	vmslg	%v0, %v0, %v0, %v0, 0
2131
2132#CHECK: error: instruction requires: vector-packed-decimal
2133#CHECK: vmsp	%v0, %v0, %v0, 0, 0
2134
2135	vmsp	%v0, %v0, %v0, 0, 0
2136
2137#CHECK: error: instruction requires: vector-enhancements-1
2138#CHECK: vnn	%v0, %v0, %v0
2139
2140	vnn	%v0, %v0, %v0
2141
2142#CHECK: error: instruction requires: vector-enhancements-1
2143#CHECK: vnx	%v0, %v0, %v0
2144
2145	vnx	%v0, %v0, %v0
2146
2147#CHECK: error: instruction requires: vector-enhancements-1
2148#CHECK: voc	%v0, %v0, %v0
2149
2150	voc	%v0, %v0, %v0
2151
2152#CHECK: error: invalid operand
2153#CHECK: vpdi	%v0, %v0, %v0, -1
2154#CHECK: error: invalid operand
2155#CHECK: vpdi	%v0, %v0, %v0, 16
2156
2157	vpdi	%v0, %v0, %v0, -1
2158	vpdi	%v0, %v0, %v0, 16
2159
2160#CHECK: error: instruction requires: vector-packed-decimal
2161#CHECK: vpkz	%v0, 0, 0
2162
2163	vpkz	%v0, 0, 0
2164
2165#CHECK: error: instruction requires: vector-enhancements-1
2166#CHECK: vpopctb	%v0, %v0
2167#CHECK: error: instruction requires: vector-enhancements-1
2168#CHECK: vpopctf	%v0, %v0
2169#CHECK: error: instruction requires: vector-enhancements-1
2170#CHECK: vpopctg	%v0, %v0
2171#CHECK: error: instruction requires: vector-enhancements-1
2172#CHECK: vpopcth	%v0, %v0
2173
2174	vpopctb	%v0, %v0
2175	vpopctf	%v0, %v0
2176	vpopctg	%v0, %v0
2177	vpopcth	%v0, %v0
2178
2179#CHECK: error: instruction requires: vector-packed-decimal
2180#CHECK: vpsop	%v0, %v0, 0, 0, 0
2181
2182	vpsop	%v0, %v0, 0, 0, 0
2183
2184#CHECK: error: invalid operand
2185#CHECK: vrep	%v0, %v0, 0, -1
2186#CHECK: error: invalid operand
2187#CHECK: vrep	%v0, %v0, 0, 16
2188#CHECK: error: invalid operand
2189#CHECK: vrep	%v0, %v0, -1, 0
2190#CHECK: error: invalid operand
2191#CHECK: vrep	%v0, %v0, 65536, 0
2192
2193	vrep	%v0, %v0, 0, -1
2194	vrep	%v0, %v0, 0, 16
2195	vrep	%v0, %v0, -1, 0
2196	vrep	%v0, %v0, 65536, 0
2197
2198#CHECK: error: invalid operand
2199#CHECK: vrepb	%v0, %v0, -1
2200#CHECK: error: invalid operand
2201#CHECK: vrepb	%v0, %v0, 65536
2202
2203	vrepb	%v0, %v0, -1
2204	vrepb	%v0, %v0, 65536
2205
2206#CHECK: error: invalid operand
2207#CHECK: vrepf	%v0, %v0, -1
2208#CHECK: error: invalid operand
2209#CHECK: vrepf	%v0, %v0, 65536
2210
2211	vrepf	%v0, %v0, -1
2212	vrepf	%v0, %v0, 65536
2213
2214#CHECK: error: invalid operand
2215#CHECK: vrepg	%v0, %v0, -1
2216#CHECK: error: invalid operand
2217#CHECK: vrepg	%v0, %v0, 65536
2218
2219	vrepg	%v0, %v0, -1
2220	vrepg	%v0, %v0, 65536
2221
2222#CHECK: error: invalid operand
2223#CHECK: vreph	%v0, %v0, -1
2224#CHECK: error: invalid operand
2225#CHECK: vreph	%v0, %v0, 65536
2226
2227	vreph	%v0, %v0, -1
2228	vreph	%v0, %v0, 65536
2229
2230#CHECK: error: invalid operand
2231#CHECK: vrepi	%v0, 0, -1
2232#CHECK: error: invalid operand
2233#CHECK: vrepi	%v0, 0, 16
2234#CHECK: error: invalid operand
2235#CHECK: vrepi	%v0, -32769, 0
2236#CHECK: error: invalid operand
2237#CHECK: vrepi	%v0, 32768, 0
2238
2239	vrepi	%v0, 0, -1
2240	vrepi	%v0, 0, 16
2241	vrepi	%v0, -32769, 0
2242	vrepi	%v0, 32768, 0
2243
2244#CHECK: error: invalid operand
2245#CHECK: vrepib	%v0, -32769
2246#CHECK: error: invalid operand
2247#CHECK: vrepib	%v0, 32768
2248
2249	vrepib	%v0, -32769
2250	vrepib	%v0, 32768
2251
2252#CHECK: error: invalid operand
2253#CHECK: vrepif	%v0, -32769
2254#CHECK: error: invalid operand
2255#CHECK: vrepif	%v0, 32768
2256
2257	vrepif	%v0, -32769
2258	vrepif	%v0, 32768
2259
2260#CHECK: error: invalid operand
2261#CHECK: vrepig	%v0, -32769
2262#CHECK: error: invalid operand
2263#CHECK: vrepig	%v0, 32768
2264
2265	vrepig	%v0, -32769
2266	vrepig	%v0, 32768
2267
2268#CHECK: error: invalid operand
2269#CHECK: vrepih	%v0, -32769
2270#CHECK: error: invalid operand
2271#CHECK: vrepih	%v0, 32768
2272
2273	vrepih	%v0, -32769
2274	vrepih	%v0, 32768
2275
2276#CHECK: error: instruction requires: vector-packed-decimal
2277#CHECK: vrp	%v0, %v0, %v0, 0, 0
2278
2279	vrp	%v0, %v0, %v0, 0, 0
2280
2281#CHECK: error: vector index required
2282#CHECK: vscef	%v0, 0(%r1), 0
2283#CHECK: error: vector index required
2284#CHECK: vscef	%v0, 0(%r2,%r1), 0
2285#CHECK: error: invalid operand
2286#CHECK: vscef	%v0, 0(%v0,%r1), -1
2287#CHECK: error: invalid operand
2288#CHECK: vscef	%v0, 0(%v0,%r1), 4
2289#CHECK: error: invalid operand
2290#CHECK: vscef	%v0, -1(%v0,%r1), 0
2291#CHECK: error: invalid operand
2292#CHECK: vscef	%v0, 4096(%v0,%r1), 0
2293
2294	vscef	%v0, 0(%r1), 0
2295	vscef	%v0, 0(%r2,%r1), 0
2296	vscef	%v0, 0(%v0,%r1), -1
2297	vscef	%v0, 0(%v0,%r1), 4
2298	vscef	%v0, -1(%v0,%r1), 0
2299	vscef	%v0, 4096(%v0,%r1), 0
2300
2301#CHECK: error: vector index required
2302#CHECK: vsceg	%v0, 0(%r1), 0
2303#CHECK: error: vector index required
2304#CHECK: vsceg	%v0, 0(%r2,%r1), 0
2305#CHECK: error: invalid operand
2306#CHECK: vsceg	%v0, 0(%v0,%r1), -1
2307#CHECK: error: invalid operand
2308#CHECK: vsceg	%v0, 0(%v0,%r1), 2
2309#CHECK: error: invalid operand
2310#CHECK: vsceg	%v0, -1(%v0,%r1), 0
2311#CHECK: error: invalid operand
2312#CHECK: vsceg	%v0, 4096(%v0,%r1), 0
2313
2314	vsceg	%v0, 0(%r1), 0
2315	vsceg	%v0, 0(%r2,%r1), 0
2316	vsceg	%v0, 0(%v0,%r1), -1
2317	vsceg	%v0, 0(%v0,%r1), 2
2318	vsceg	%v0, -1(%v0,%r1), 0
2319	vsceg	%v0, 4096(%v0,%r1), 0
2320
2321#CHECK: error: instruction requires: vector-packed-decimal
2322#CHECK: vsdp	%v0, %v0, %v0, 0, 0
2323
2324	vsdp	%v0, %v0, %v0, 0, 0
2325
2326#CHECK: error: invalid operand
2327#CHECK: vsldb	%v0, %v0, %v0, -1
2328#CHECK: error: invalid operand
2329#CHECK: vsldb	%v0, %v0, %v0, 256
2330
2331	vsldb	%v0, %v0, %v0, -1
2332	vsldb	%v0, %v0, %v0, 256
2333
2334#CHECK: error: instruction requires: vector-packed-decimal
2335#CHECK: vsp	%v0, %v0, %v0, 0, 0
2336
2337	vsp	%v0, %v0, %v0, 0, 0
2338
2339#CHECK: error: instruction requires: vector-packed-decimal
2340#CHECK: vsrp	%v0, %v0, 0, 0, 0
2341
2342	vsrp	%v0, %v0, 0, 0, 0
2343
2344#CHECK: error: invalid operand
2345#CHECK: vst	%v0, -1
2346#CHECK: error: invalid operand
2347#CHECK: vst	%v0, 4096
2348#CHECK: error: invalid use of vector addressing
2349#CHECK: vst	%v0, 0(%v1,%r2)
2350#CHECK: error: invalid operand
2351#CHECK: vst	%v0, 0, -1
2352#CHECK: error: invalid operand
2353#CHECK: vst	%v0, 0, 16
2354
2355	vst	%v0, -1
2356	vst	%v0, 4096
2357	vst	%v0, 0(%v1,%r2)
2358	vst	%v0, 0, -1
2359	vst	%v0, 0, 16
2360
2361#CHECK: error: invalid operand
2362#CHECK: vsteb	%v0, 0, -1
2363#CHECK: error: invalid operand
2364#CHECK: vsteb	%v0, 0, 16
2365#CHECK: error: invalid operand
2366#CHECK: vsteb	%v0, -1, 0
2367#CHECK: error: invalid operand
2368#CHECK: vsteb	%v0, 4096, 0
2369#CHECK: error: invalid use of vector addressing
2370#CHECK: vsteb	%v0, 0(%v1,%r2), 0
2371
2372	vsteb	%v0, 0, -1
2373	vsteb	%v0, 0, 16
2374	vsteb	%v0, -1, 0
2375	vsteb	%v0, 4096, 0
2376	vsteb	%v0, 0(%v1,%r2), 0
2377
2378#CHECK: error: invalid operand
2379#CHECK: vstef	%v0, 0, -1
2380#CHECK: error: invalid operand
2381#CHECK: vstef	%v0, 0, 4
2382#CHECK: error: invalid operand
2383#CHECK: vstef	%v0, -1, 0
2384#CHECK: error: invalid operand
2385#CHECK: vstef	%v0, 4096, 0
2386#CHECK: error: invalid use of vector addressing
2387#CHECK: vstef	%v0, 0(%v1,%r2), 0
2388
2389	vstef	%v0, 0, -1
2390	vstef	%v0, 0, 4
2391	vstef	%v0, -1, 0
2392	vstef	%v0, 4096, 0
2393	vstef	%v0, 0(%v1,%r2), 0
2394
2395#CHECK: error: invalid operand
2396#CHECK: vsteg	%v0, 0, -1
2397#CHECK: error: invalid operand
2398#CHECK: vsteg	%v0, 0, 2
2399#CHECK: error: invalid operand
2400#CHECK: vsteg	%v0, -1, 0
2401#CHECK: error: invalid operand
2402#CHECK: vsteg	%v0, 4096, 0
2403#CHECK: error: invalid use of vector addressing
2404#CHECK: vsteg	%v0, 0(%v1,%r2), 0
2405
2406	vsteg	%v0, 0, -1
2407	vsteg	%v0, 0, 2
2408	vsteg	%v0, -1, 0
2409	vsteg	%v0, 4096, 0
2410	vsteg	%v0, 0(%v1,%r2), 0
2411
2412#CHECK: error: invalid operand
2413#CHECK: vsteh	%v0, 0, -1
2414#CHECK: error: invalid operand
2415#CHECK: vsteh	%v0, 0, 8
2416#CHECK: error: invalid operand
2417#CHECK: vsteh	%v0, -1, 0
2418#CHECK: error: invalid operand
2419#CHECK: vsteh	%v0, 4096, 0
2420#CHECK: error: invalid use of vector addressing
2421#CHECK: vsteh	%v0, 0(%v1,%r2), 0
2422
2423	vsteh	%v0, 0, -1
2424	vsteh	%v0, 0, 8
2425	vsteh	%v0, -1, 0
2426	vsteh	%v0, 4096, 0
2427	vsteh	%v0, 0(%v1,%r2), 0
2428
2429#CHECK: error: invalid operand
2430#CHECK: vstl	%v0, %r0, -1
2431#CHECK: error: invalid operand
2432#CHECK: vstl	%v0, %r0, 4096
2433
2434	vstl	%v0, %r0, -1
2435	vstl	%v0, %r0, 4096
2436
2437#CHECK: error: invalid operand
2438#CHECK: vstm	%v0, %v0, -1
2439#CHECK: error: invalid operand
2440#CHECK: vstm	%v0, %v0, 4096
2441#CHECK: error: invalid operand
2442#CHECK: vstm	%v0, %v0, 0, -1
2443#CHECK: error: invalid operand
2444#CHECK: vstm	%v0, %v0, 0, 16
2445
2446	vstm	%v0, %v0, -1
2447	vstm	%v0, %v0, 4096
2448	vstm	%v0, %v0, 0, -1
2449	vstm	%v0, %v0, 0, 16
2450
2451#CHECK: error: invalid operand
2452#CHECK: vstrc    %v0, %v0, %v0, %v0, 0, -1
2453#CHECK: error: invalid operand
2454#CHECK: vstrc    %v0, %v0, %v0, %v0, 0, 16
2455#CHECK: error: invalid operand
2456#CHECK: vstrc    %v0, %v0, %v0, %v0, -1, 0
2457#CHECK: error: invalid operand
2458#CHECK: vstrc    %v0, %v0, %v0, %v0, 16, 0
2459#CHECK: error: too few operands
2460#CHECK: vstrc    %v0, %v0, %v0, %v0
2461#CHECK: error: invalid operand
2462#CHECK: vstrc    %v0, %v0, %v0, %v0, 0, 0, 0
2463
2464	vstrc    %v0, %v0, %v0, %v0, 0, -1
2465	vstrc    %v0, %v0, %v0, %v0, 0, 16
2466	vstrc    %v0, %v0, %v0, %v0, -1, 0
2467	vstrc    %v0, %v0, %v0, %v0, 16, 0
2468	vstrc    %v0, %v0, %v0, %v0
2469	vstrc    %v0, %v0, %v0, %v0, 0, 0, 0
2470
2471#CHECK: error: invalid operand
2472#CHECK: vstrcb   %v0, %v0, %v0, %v0, -1
2473#CHECK: error: invalid operand
2474#CHECK: vstrcb   %v0, %v0, %v0, %v0, 16
2475#CHECK: error: too few operands
2476#CHECK: vstrcb   %v0, %v0, %v0
2477#CHECK: error: invalid operand
2478#CHECK: vstrcb   %v0, %v0, %v0, %v0, 0, 0
2479
2480	vstrcb   %v0, %v0, %v0, %v0, -1
2481	vstrcb   %v0, %v0, %v0, %v0, 16
2482	vstrcb   %v0, %v0, %v0
2483	vstrcb   %v0, %v0, %v0, %v0, 0, 0
2484
2485#CHECK: error: invalid operand
2486#CHECK: vstrcbs  %v0, %v0, %v0, %v0, -1
2487#CHECK: error: invalid operand
2488#CHECK: vstrcbs  %v0, %v0, %v0, %v0, 16
2489#CHECK: error: too few operands
2490#CHECK: vstrcbs  %v0, %v0, %v0
2491#CHECK: error: invalid operand
2492#CHECK: vstrcbs  %v0, %v0, %v0, %v0, 0, 0
2493
2494	vstrcbs  %v0, %v0, %v0, %v0, -1
2495	vstrcbs  %v0, %v0, %v0, %v0, 16
2496	vstrcbs  %v0, %v0, %v0
2497	vstrcbs  %v0, %v0, %v0, %v0, 0, 0
2498
2499#CHECK: error: invalid operand
2500#CHECK: vstrcf   %v0, %v0, %v0, %v0, -1
2501#CHECK: error: invalid operand
2502#CHECK: vstrcf   %v0, %v0, %v0, %v0, 16
2503#CHECK: error: too few operands
2504#CHECK: vstrcf   %v0, %v0, %v0
2505#CHECK: error: invalid operand
2506#CHECK: vstrcf   %v0, %v0, %v0, %v0, 0, 0
2507
2508	vstrcf   %v0, %v0, %v0, %v0, -1
2509	vstrcf   %v0, %v0, %v0, %v0, 16
2510	vstrcf   %v0, %v0, %v0
2511	vstrcf   %v0, %v0, %v0, %v0, 0, 0
2512
2513#CHECK: error: invalid operand
2514#CHECK: vstrcfs  %v0, %v0, %v0, %v0, -1
2515#CHECK: error: invalid operand
2516#CHECK: vstrcfs  %v0, %v0, %v0, %v0, 16
2517#CHECK: error: too few operands
2518#CHECK: vstrcfs  %v0, %v0, %v0
2519#CHECK: error: invalid operand
2520#CHECK: vstrcfs  %v0, %v0, %v0, %v0, 0, 0
2521
2522	vstrcfs  %v0, %v0, %v0, %v0, -1
2523	vstrcfs  %v0, %v0, %v0, %v0, 16
2524	vstrcfs  %v0, %v0, %v0
2525	vstrcfs  %v0, %v0, %v0, %v0, 0, 0
2526
2527#CHECK: error: invalid operand
2528#CHECK: vstrch   %v0, %v0, %v0, %v0, -1
2529#CHECK: error: invalid operand
2530#CHECK: vstrch   %v0, %v0, %v0, %v0, 16
2531#CHECK: error: too few operands
2532#CHECK: vstrch   %v0, %v0, %v0
2533#CHECK: error: invalid operand
2534#CHECK: vstrch   %v0, %v0, %v0, %v0, 0, 0
2535
2536	vstrch   %v0, %v0, %v0, %v0, -1
2537	vstrch   %v0, %v0, %v0, %v0, 16
2538	vstrch   %v0, %v0, %v0
2539	vstrch   %v0, %v0, %v0, %v0, 0, 0
2540
2541#CHECK: error: invalid operand
2542#CHECK: vstrchs  %v0, %v0, %v0, %v0, -1
2543#CHECK: error: invalid operand
2544#CHECK: vstrchs  %v0, %v0, %v0, %v0, 16
2545#CHECK: error: too few operands
2546#CHECK: vstrchs  %v0, %v0, %v0
2547#CHECK: error: invalid operand
2548#CHECK: vstrchs  %v0, %v0, %v0, %v0, 0, 0
2549
2550	vstrchs  %v0, %v0, %v0, %v0, -1
2551	vstrchs  %v0, %v0, %v0, %v0, 16
2552	vstrchs  %v0, %v0, %v0
2553	vstrchs  %v0, %v0, %v0, %v0, 0, 0
2554
2555#CHECK: error: invalid operand
2556#CHECK: vstrczb  %v0, %v0, %v0, %v0, -1
2557#CHECK: error: invalid operand
2558#CHECK: vstrczb  %v0, %v0, %v0, %v0, 16
2559#CHECK: error: too few operands
2560#CHECK: vstrczb  %v0, %v0, %v0
2561#CHECK: error: invalid operand
2562#CHECK: vstrczb  %v0, %v0, %v0, %v0, 0, 0
2563
2564	vstrczb  %v0, %v0, %v0, %v0, -1
2565	vstrczb  %v0, %v0, %v0, %v0, 16
2566	vstrczb  %v0, %v0, %v0
2567	vstrczb  %v0, %v0, %v0, %v0, 0, 0
2568
2569#CHECK: error: invalid operand
2570#CHECK: vstrczbs %v0, %v0, %v0, %v0, -1
2571#CHECK: error: invalid operand
2572#CHECK: vstrczbs %v0, %v0, %v0, %v0, 16
2573#CHECK: error: too few operands
2574#CHECK: vstrczbs %v0, %v0, %v0
2575#CHECK: error: invalid operand
2576#CHECK: vstrczbs %v0, %v0, %v0, %v0, 0, 0
2577
2578	vstrczbs %v0, %v0, %v0, %v0, -1
2579	vstrczbs %v0, %v0, %v0, %v0, 16
2580	vstrczbs %v0, %v0, %v0
2581	vstrczbs %v0, %v0, %v0, %v0, 0, 0
2582
2583#CHECK: error: invalid operand
2584#CHECK: vstrczf  %v0, %v0, %v0, %v0, -1
2585#CHECK: error: invalid operand
2586#CHECK: vstrczf  %v0, %v0, %v0, %v0, 16
2587#CHECK: error: too few operands
2588#CHECK: vstrczf  %v0, %v0, %v0
2589#CHECK: error: invalid operand
2590#CHECK: vstrczf  %v0, %v0, %v0, %v0, 0, 0
2591
2592	vstrczf  %v0, %v0, %v0, %v0, -1
2593	vstrczf  %v0, %v0, %v0, %v0, 16
2594	vstrczf  %v0, %v0, %v0
2595	vstrczf  %v0, %v0, %v0, %v0, 0, 0
2596
2597#CHECK: error: invalid operand
2598#CHECK: vstrczfs %v0, %v0, %v0, %v0, -1
2599#CHECK: error: invalid operand
2600#CHECK: vstrczfs %v0, %v0, %v0, %v0, 16
2601#CHECK: error: too few operands
2602#CHECK: vstrczfs %v0, %v0, %v0
2603#CHECK: error: invalid operand
2604#CHECK: vstrczfs %v0, %v0, %v0, %v0, 0, 0
2605
2606	vstrczfs %v0, %v0, %v0, %v0, -1
2607	vstrczfs %v0, %v0, %v0, %v0, 16
2608	vstrczfs %v0, %v0, %v0
2609	vstrczfs %v0, %v0, %v0, %v0, 0, 0
2610
2611#CHECK: error: invalid operand
2612#CHECK: vstrczh  %v0, %v0, %v0, %v0, -1
2613#CHECK: error: invalid operand
2614#CHECK: vstrczh  %v0, %v0, %v0, %v0, 16
2615#CHECK: error: too few operands
2616#CHECK: vstrczh  %v0, %v0, %v0
2617#CHECK: error: invalid operand
2618#CHECK: vstrczh  %v0, %v0, %v0, %v0, 0, 0
2619
2620	vstrczh  %v0, %v0, %v0, %v0, -1
2621	vstrczh  %v0, %v0, %v0, %v0, 16
2622	vstrczh  %v0, %v0, %v0
2623	vstrczh  %v0, %v0, %v0, %v0, 0, 0
2624
2625#CHECK: error: invalid operand
2626#CHECK: vstrczhs %v0, %v0, %v0, %v0, -1
2627#CHECK: error: invalid operand
2628#CHECK: vstrczhs %v0, %v0, %v0, %v0, 16
2629#CHECK: error: too few operands
2630#CHECK: vstrczhs %v0, %v0, %v0
2631#CHECK: error: invalid operand
2632#CHECK: vstrczhs %v0, %v0, %v0, %v0, 0, 0
2633
2634	vstrczhs %v0, %v0, %v0, %v0, -1
2635	vstrczhs %v0, %v0, %v0, %v0, 16
2636	vstrczhs %v0, %v0, %v0
2637	vstrczhs %v0, %v0, %v0, %v0, 0, 0
2638
2639#CHECK: error: instruction requires: vector-packed-decimal
2640#CHECK: vstrl	%v0, 0, 0
2641
2642	vstrl	%v0, 0, 0
2643
2644#CHECK: error: instruction requires: vector-packed-decimal
2645#CHECK: vstrlr	%v0, %r0, 0
2646
2647	vstrlr	%v0, %r0, 0
2648
2649#CHECK: error: instruction requires: vector-packed-decimal
2650#CHECK: vtp	%v0
2651
2652	vtp	%v0
2653
2654#CHECK: error: instruction requires: vector-packed-decimal
2655#CHECK: vupkz	%v0, 0, 0
2656
2657	vupkz	%v0, 0, 0
2658
2659#CHECK: error: invalid operand
2660#CHECK: wcdgb	%v0, %v0, 0, -1
2661#CHECK: error: invalid operand
2662#CHECK: wcdgb	%v0, %v0, 0, 16
2663#CHECK: error: invalid operand
2664#CHECK: wcdgb	%v0, %v0, -1, 0
2665#CHECK: error: invalid operand
2666#CHECK: wcdgb	%v0, %v0, 16, 0
2667
2668	wcdgb	%v0, %v0, 0, -1
2669	wcdgb	%v0, %v0, 0, 16
2670	wcdgb	%v0, %v0, -1, 0
2671	wcdgb	%v0, %v0, 16, 0
2672
2673#CHECK: error: invalid operand
2674#CHECK: wcdlgb	%v0, %v0, 0, -1
2675#CHECK: error: invalid operand
2676#CHECK: wcdlgb	%v0, %v0, 0, 16
2677#CHECK: error: invalid operand
2678#CHECK: wcdlgb	%v0, %v0, -1, 0
2679#CHECK: error: invalid operand
2680#CHECK: wcdlgb	%v0, %v0, 16, 0
2681
2682	wcdlgb	%v0, %v0, 0, -1
2683	wcdlgb	%v0, %v0, 0, 16
2684	wcdlgb	%v0, %v0, -1, 0
2685	wcdlgb	%v0, %v0, 16, 0
2686
2687#CHECK: error: invalid operand
2688#CHECK: wcgdb	%v0, %v0, 0, -1
2689#CHECK: error: invalid operand
2690#CHECK: wcgdb	%v0, %v0, 0, 16
2691#CHECK: error: invalid operand
2692#CHECK: wcgdb	%v0, %v0, -1, 0
2693#CHECK: error: invalid operand
2694#CHECK: wcgdb	%v0, %v0, 16, 0
2695
2696	wcgdb	%v0, %v0, 0, -1
2697	wcgdb	%v0, %v0, 0, 16
2698	wcgdb	%v0, %v0, -1, 0
2699	wcgdb	%v0, %v0, 16, 0
2700
2701#CHECK: error: invalid operand
2702#CHECK: wclgdb	%v0, %v0, 0, -1
2703#CHECK: error: invalid operand
2704#CHECK: wclgdb	%v0, %v0, 0, 16
2705#CHECK: error: invalid operand
2706#CHECK: wclgdb	%v0, %v0, -1, 0
2707#CHECK: error: invalid operand
2708#CHECK: wclgdb	%v0, %v0, 16, 0
2709
2710	wclgdb	%v0, %v0, 0, -1
2711	wclgdb	%v0, %v0, 0, 16
2712	wclgdb	%v0, %v0, -1, 0
2713	wclgdb	%v0, %v0, 16, 0
2714
2715#CHECK: error: instruction requires: vector-enhancements-1
2716#CHECK: wfasb	%v0, %v0, %v0
2717#CHECK: error: instruction requires: vector-enhancements-1
2718#CHECK: wfaxb	%v0, %v0, %v0
2719
2720	wfasb	%v0, %v0, %v0
2721	wfaxb	%v0, %v0, %v0
2722
2723#CHECK: error: instruction requires: vector-enhancements-1
2724#CHECK: wfcsb	%v0, %v0
2725#CHECK: error: instruction requires: vector-enhancements-1
2726#CHECK: wfcxb	%v0, %v0
2727
2728	wfcsb	%v0, %v0
2729	wfcxb	%v0, %v0
2730
2731#CHECK: error: instruction requires: vector-enhancements-1
2732#CHECK: wfcesb	%v0, %v0, %v0
2733#CHECK: error: instruction requires: vector-enhancements-1
2734#CHECK: wfcesbs	%v0, %v0, %v0
2735#CHECK: error: instruction requires: vector-enhancements-1
2736#CHECK: wfcexb	%v0, %v0, %v0
2737#CHECK: error: instruction requires: vector-enhancements-1
2738#CHECK: wfcexbs	%v0, %v0, %v0
2739
2740	wfcesb	%v0, %v0, %v0
2741	wfcesbs	%v0, %v0, %v0
2742	wfcexb	%v0, %v0, %v0
2743	wfcexbs	%v0, %v0, %v0
2744
2745#CHECK: error: instruction requires: vector-enhancements-1
2746#CHECK: wfchsb	%v0, %v0, %v0
2747#CHECK: error: instruction requires: vector-enhancements-1
2748#CHECK: wfchsbs	%v0, %v0, %v0
2749#CHECK: error: instruction requires: vector-enhancements-1
2750#CHECK: wfchxb	%v0, %v0, %v0
2751#CHECK: error: instruction requires: vector-enhancements-1
2752#CHECK: wfchxbs	%v0, %v0, %v0
2753
2754	wfchsb	%v0, %v0, %v0
2755	wfchsbs	%v0, %v0, %v0
2756	wfchxb	%v0, %v0, %v0
2757	wfchxbs	%v0, %v0, %v0
2758
2759#CHECK: error: instruction requires: vector-enhancements-1
2760#CHECK: wfchesb	%v0, %v0, %v0
2761#CHECK: error: instruction requires: vector-enhancements-1
2762#CHECK: wfchesbs %v0, %v0, %v0
2763#CHECK: error: instruction requires: vector-enhancements-1
2764#CHECK: wfchexb	%v0, %v0, %v0
2765#CHECK: error: instruction requires: vector-enhancements-1
2766#CHECK: wfchexbs %v0, %v0, %v0
2767
2768	wfchesb	%v0, %v0, %v0
2769	wfchesbs %v0, %v0, %v0
2770	wfchexb	%v0, %v0, %v0
2771	wfchexbs %v0, %v0, %v0
2772
2773#CHECK: error: instruction requires: vector-enhancements-1
2774#CHECK: wfdsb	%v0, %v0, %v0
2775#CHECK: error: instruction requires: vector-enhancements-1
2776#CHECK: wfdxb	%v0, %v0, %v0
2777
2778	wfdsb	%v0, %v0, %v0
2779	wfdxb	%v0, %v0, %v0
2780
2781#CHECK: error: invalid operand
2782#CHECK: wfidb	%v0, %v0, 0, -1
2783#CHECK: error: invalid operand
2784#CHECK: wfidb	%v0, %v0, 0, 16
2785#CHECK: error: invalid operand
2786#CHECK: wfidb	%v0, %v0, -1, 0
2787#CHECK: error: invalid operand
2788#CHECK: wfidb	%v0, %v0, 16, 0
2789
2790	wfidb	%v0, %v0, 0, -1
2791	wfidb	%v0, %v0, 0, 16
2792	wfidb	%v0, %v0, -1, 0
2793	wfidb	%v0, %v0, 16, 0
2794
2795#CHECK: error: instruction requires: vector-enhancements-1
2796#CHECK: wfisb	%v0, %v0, 0, 0
2797#CHECK: error: instruction requires: vector-enhancements-1
2798#CHECK: wfixb	%v0, %v0, 0, 0
2799
2800	wfisb	%v0, %v0, 0, 0
2801	wfixb	%v0, %v0, 0, 0
2802
2803#CHECK: error: instruction requires: vector-enhancements-1
2804#CHECK: wfksb	%v0, %v0
2805#CHECK: error: instruction requires: vector-enhancements-1
2806#CHECK: wfkxb	%v0, %v0
2807
2808	wfksb	%v0, %v0
2809	wfkxb	%v0, %v0
2810
2811#CHECK: error: instruction requires: vector-enhancements-1
2812#CHECK: wfkedb	%v0, %v0, %v0
2813#CHECK: error: instruction requires: vector-enhancements-1
2814#CHECK: wfkedbs	%v0, %v0, %v0
2815#CHECK: error: instruction requires: vector-enhancements-1
2816#CHECK: wfkesb	%v0, %v0, %v0
2817#CHECK: error: instruction requires: vector-enhancements-1
2818#CHECK: wfkesbs	%v0, %v0, %v0
2819#CHECK: error: instruction requires: vector-enhancements-1
2820#CHECK: wfkexb	%v0, %v0, %v0
2821#CHECK: error: instruction requires: vector-enhancements-1
2822#CHECK: wfkexbs	%v0, %v0, %v0
2823
2824	wfkedb	%v0, %v0, %v0
2825	wfkedbs	%v0, %v0, %v0
2826	wfkesb	%v0, %v0, %v0
2827	wfkesbs	%v0, %v0, %v0
2828	wfkexb	%v0, %v0, %v0
2829	wfkexbs	%v0, %v0, %v0
2830
2831#CHECK: error: instruction requires: vector-enhancements-1
2832#CHECK: wfkhdb	%v0, %v0, %v0
2833#CHECK: error: instruction requires: vector-enhancements-1
2834#CHECK: wfkhdbs	%v0, %v0, %v0
2835#CHECK: error: instruction requires: vector-enhancements-1
2836#CHECK: wfkhsb	%v0, %v0, %v0
2837#CHECK: error: instruction requires: vector-enhancements-1
2838#CHECK: wfkhsbs	%v0, %v0, %v0
2839#CHECK: error: instruction requires: vector-enhancements-1
2840#CHECK: wfkhxb	%v0, %v0, %v0
2841#CHECK: error: instruction requires: vector-enhancements-1
2842#CHECK: wfkhxbs	%v0, %v0, %v0
2843
2844	wfkhdb	%v0, %v0, %v0
2845	wfkhdbs	%v0, %v0, %v0
2846	wfkhsb	%v0, %v0, %v0
2847	wfkhsbs	%v0, %v0, %v0
2848	wfkhxb	%v0, %v0, %v0
2849	wfkhxbs	%v0, %v0, %v0
2850
2851#CHECK: error: instruction requires: vector-enhancements-1
2852#CHECK: wfkhedb	%v0, %v0, %v0
2853#CHECK: error: instruction requires: vector-enhancements-1
2854#CHECK: wfkhedbs %v0, %v0, %v0
2855#CHECK: error: instruction requires: vector-enhancements-1
2856#CHECK: wfkhesb	%v0, %v0, %v0
2857#CHECK: error: instruction requires: vector-enhancements-1
2858#CHECK: wfkhesbs %v0, %v0, %v0
2859#CHECK: error: instruction requires: vector-enhancements-1
2860#CHECK: wfkhexb	%v0, %v0, %v0
2861#CHECK: error: instruction requires: vector-enhancements-1
2862#CHECK: wfkhexbs %v0, %v0, %v0
2863
2864	wfkhedb	%v0, %v0, %v0
2865	wfkhedbs %v0, %v0, %v0
2866	wfkhesb	%v0, %v0, %v0
2867	wfkhesbs %v0, %v0, %v0
2868	wfkhexb	%v0, %v0, %v0
2869	wfkhexbs %v0, %v0, %v0
2870
2871#CHECK: error: instruction requires: vector-enhancements-1
2872#CHECK: wfpsosb	%v0, %v0, 0
2873#CHECK: error: instruction requires: vector-enhancements-1
2874#CHECK: wfpsoxb	%v0, %v0, 0
2875#CHECK: error: instruction requires: vector-enhancements-1
2876#CHECK: wflcsb	%v0, %v0
2877#CHECK: error: instruction requires: vector-enhancements-1
2878#CHECK: wflcxb	%v0, %v0
2879#CHECK: error: instruction requires: vector-enhancements-1
2880#CHECK: wflnsb	%v0, %v0
2881#CHECK: error: instruction requires: vector-enhancements-1
2882#CHECK: wflnxb	%v0, %v0
2883#CHECK: error: instruction requires: vector-enhancements-1
2884#CHECK: wflpsb	%v0, %v0
2885#CHECK: error: instruction requires: vector-enhancements-1
2886#CHECK: wflpxb	%v0, %v0
2887
2888	wfpsosb	%v0, %v0, 0
2889	wfpsoxb	%v0, %v0, 0
2890	wflcsb	%v0, %v0
2891	wflcxb	%v0, %v0
2892	wflnsb	%v0, %v0
2893	wflnxb	%v0, %v0
2894	wflpsb	%v0, %v0
2895	wflpxb	%v0, %v0
2896
2897#CHECK: error: instruction requires: vector-enhancements-1
2898#CHECK: wflls	%v0, %v0
2899#CHECK: error: instruction requires: vector-enhancements-1
2900#CHECK: wflld	%v0, %v0
2901
2902	wflls	%v0, %v0
2903	wflld	%v0, %v0
2904
2905#CHECK: error: instruction requires: vector-enhancements-1
2906#CHECK: wflrd	%v0, %v0, 0, 0
2907#CHECK: error: instruction requires: vector-enhancements-1
2908#CHECK: wflrx	%v0, %v0, 0, 0
2909
2910	wflrd	%v0, %v0, 0, 0
2911	wflrx	%v0, %v0, 0, 0
2912
2913#CHECK: error: instruction requires: vector-enhancements-1
2914#CHECK: wfmaxdb	%v0, %v0, %v0, 0
2915#CHECK: error: instruction requires: vector-enhancements-1
2916#CHECK: wfmaxsb	%v0, %v0, %v0, 0
2917#CHECK: error: instruction requires: vector-enhancements-1
2918#CHECK: wfmaxxb	%v0, %v0, %v0, 0
2919
2920	wfmaxdb	%v0, %v0, %v0, 0
2921	wfmaxsb	%v0, %v0, %v0, 0
2922	wfmaxxb	%v0, %v0, %v0, 0
2923
2924#CHECK: error: instruction requires: vector-enhancements-1
2925#CHECK: wfmindb	%v0, %v0, %v0, 0
2926#CHECK: error: instruction requires: vector-enhancements-1
2927#CHECK: wfminsb	%v0, %v0, %v0, 0
2928#CHECK: error: instruction requires: vector-enhancements-1
2929#CHECK: wfminxb	%v0, %v0, %v0, 0
2930
2931	wfmindb	%v0, %v0, %v0, 0
2932	wfminsb	%v0, %v0, %v0, 0
2933	wfminxb	%v0, %v0, %v0, 0
2934
2935#CHECK: error: instruction requires: vector-enhancements-1
2936#CHECK: wfmasb	%v0, %v0, %v0, %v0
2937#CHECK: error: instruction requires: vector-enhancements-1
2938#CHECK: wfmaxb	%v0, %v0, %v0, %v0
2939
2940	wfmasb	%v0, %v0, %v0, %v0
2941	wfmaxb	%v0, %v0, %v0, %v0
2942
2943#CHECK: error: instruction requires: vector-enhancements-1
2944#CHECK: wfmsb	%v0, %v0, %v0
2945#CHECK: error: instruction requires: vector-enhancements-1
2946#CHECK: wfmxb	%v0, %v0, %v0
2947
2948	wfmsb	%v0, %v0, %v0
2949	wfmxb	%v0, %v0, %v0
2950
2951#CHECK: error: instruction requires: vector-enhancements-1
2952#CHECK: wfmssb	%v0, %v0, %v0, %v0
2953#CHECK: error: instruction requires: vector-enhancements-1
2954#CHECK: wfmsxb	%v0, %v0, %v0, %v0
2955
2956	wfmssb	%v0, %v0, %v0, %v0
2957	wfmsxb	%v0, %v0, %v0, %v0
2958
2959#CHECK: error: instruction requires: vector-enhancements-1
2960#CHECK: wfnmadb	%v0, %v0, %v0, %v0
2961#CHECK: error: instruction requires: vector-enhancements-1
2962#CHECK: wfnmasb	%v0, %v0, %v0, %v0
2963#CHECK: error: instruction requires: vector-enhancements-1
2964#CHECK: wfnmaxb	%v0, %v0, %v0, %v0
2965
2966	wfnmadb	%v0, %v0, %v0, %v0
2967	wfnmasb	%v0, %v0, %v0, %v0
2968	wfnmaxb	%v0, %v0, %v0, %v0
2969
2970#CHECK: error: instruction requires: vector-enhancements-1
2971#CHECK: wfnmsdb	%v0, %v0, %v0, %v0
2972#CHECK: error: instruction requires: vector-enhancements-1
2973#CHECK: wfnmssb	%v0, %v0, %v0, %v0
2974#CHECK: error: instruction requires: vector-enhancements-1
2975#CHECK: wfnmsxb	%v0, %v0, %v0, %v0
2976
2977	wfnmsdb	%v0, %v0, %v0, %v0
2978	wfnmssb	%v0, %v0, %v0, %v0
2979	wfnmsxb	%v0, %v0, %v0, %v0
2980
2981#CHECK: error: instruction requires: vector-enhancements-1
2982#CHECK: wfssb	%v0, %v0, %v0
2983#CHECK: error: instruction requires: vector-enhancements-1
2984#CHECK: wfsxb	%v0, %v0, %v0
2985
2986	wfssb	%v0, %v0, %v0
2987	wfsxb	%v0, %v0, %v0
2988
2989#CHECK: error: instruction requires: vector-enhancements-1
2990#CHECK: wfsqsb	%v0, %v0
2991#CHECK: error: instruction requires: vector-enhancements-1
2992#CHECK: wfsqxb	%v0, %v0
2993
2994	wfsqsb	%v0, %v0
2995	wfsqxb	%v0, %v0
2996
2997#CHECK: error: invalid operand
2998#CHECK: wftcidb	%v0, %v0, -1
2999#CHECK: error: invalid operand
3000#CHECK: wftcidb	%v0, %v0, 4096
3001
3002	wftcidb	%v0, %v0, -1
3003	wftcidb	%v0, %v0, 4096
3004
3005#CHECK: error: instruction requires: vector-enhancements-1
3006#CHECK: wftcisb	%v0, %v0, 0
3007#CHECK: error: instruction requires: vector-enhancements-1
3008#CHECK: wftcixb	%v0, %v0, 0
3009
3010	wftcisb	%v0, %v0, 0
3011	wftcixb	%v0, %v0, 0
3012
3013#CHECK: error: invalid operand
3014#CHECK: wledb	%v0, %v0, 0, -1
3015#CHECK: error: invalid operand
3016#CHECK: wledb	%v0, %v0, 0, 16
3017#CHECK: error: invalid operand
3018#CHECK: wledb	%v0, %v0, -1, 0
3019#CHECK: error: invalid operand
3020#CHECK: wledb	%v0, %v0, 16, 0
3021
3022	wledb	%v0, %v0, 0, -1
3023	wledb	%v0, %v0, 0, 16
3024	wledb	%v0, %v0, -1, 0
3025	wledb	%v0, %v0, 16, 0
3026
3027