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