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#CHECK: error: invalid operand
1690#CHECK: vl	%v0, 0, -1
1691#CHECK: error: invalid operand
1692#CHECK: vl	%v0, 0, 16
1693
1694	vl	%v0, -1
1695	vl	%v0, 4096
1696	vl	%v0, 0(%v1,%r2)
1697	vl	%v0, 0, -1
1698	vl	%v0, 0, 16
1699
1700#CHECK: error: invalid operand
1701#CHECK: vlbb	%v0, 0, -1
1702#CHECK: error: invalid operand
1703#CHECK: vlbb	%v0, 0, 16
1704#CHECK: error: invalid operand
1705#CHECK: vlbb	%v0, -1, 0
1706#CHECK: error: invalid operand
1707#CHECK: vlbb	%v0, 4096, 0
1708#CHECK: error: invalid use of vector addressing
1709#CHECK: vlbb	%v0, 0(%v1,%r2), 0
1710
1711	vlbb	%v0, 0, -1
1712	vlbb	%v0, 0, 16
1713	vlbb	%v0, -1, 0
1714	vlbb	%v0, 4096, 0
1715	vlbb	%v0, 0(%v1,%r2), 0
1716
1717#CHECK: error: invalid operand
1718#CHECK: vleb	%v0, 0, -1
1719#CHECK: error: invalid operand
1720#CHECK: vleb	%v0, 0, 16
1721#CHECK: error: invalid operand
1722#CHECK: vleb	%v0, -1, 0
1723#CHECK: error: invalid operand
1724#CHECK: vleb	%v0, 4096, 0
1725#CHECK: error: invalid use of vector addressing
1726#CHECK: vleb	%v0, 0(%v1,%r2), 0
1727
1728	vleb	%v0, 0, -1
1729	vleb	%v0, 0, 16
1730	vleb	%v0, -1, 0
1731	vleb	%v0, 4096, 0
1732	vleb	%v0, 0(%v1,%r2), 0
1733
1734#CHECK: error: invalid operand
1735#CHECK: vled	%v0, %v0, 0, 0, -1
1736#CHECK: error: invalid operand
1737#CHECK: vled	%v0, %v0, 0, 0, 16
1738#CHECK: error: invalid operand
1739#CHECK: vled	%v0, %v0, 0, -1, 0
1740#CHECK: error: invalid operand
1741#CHECK: vled	%v0, %v0, 0, 16, 0
1742#CHECK: error: invalid operand
1743#CHECK: vled	%v0, %v0, -1, 0, 0
1744#CHECK: error: invalid operand
1745#CHECK: vled	%v0, %v0, 16, 0, 0
1746
1747	vled	%v0, %v0, 0, 0, -1
1748	vled	%v0, %v0, 0, 0, 16
1749	vled	%v0, %v0, 0, -1, 0
1750	vled	%v0, %v0, 0, 16, 0
1751	vled	%v0, %v0, -1, 0, 0
1752	vled	%v0, %v0, 16, 0, 0
1753
1754#CHECK: error: invalid operand
1755#CHECK: vledb	%v0, %v0, 0, -1
1756#CHECK: error: invalid operand
1757#CHECK: vledb	%v0, %v0, 0, 16
1758#CHECK: error: invalid operand
1759#CHECK: vledb	%v0, %v0, -1, 0
1760#CHECK: error: invalid operand
1761#CHECK: vledb	%v0, %v0, 16, 0
1762
1763	vledb	%v0, %v0, 0, -1
1764	vledb	%v0, %v0, 0, 16
1765	vledb	%v0, %v0, -1, 0
1766	vledb	%v0, %v0, 16, 0
1767
1768#CHECK: error: invalid operand
1769#CHECK: vlef	%v0, 0, -1
1770#CHECK: error: invalid operand
1771#CHECK: vlef	%v0, 0, 4
1772#CHECK: error: invalid operand
1773#CHECK: vlef	%v0, -1, 0
1774#CHECK: error: invalid operand
1775#CHECK: vlef	%v0, 4096, 0
1776#CHECK: error: invalid use of vector addressing
1777#CHECK: vlef	%v0, 0(%v1,%r2), 0
1778
1779	vlef	%v0, 0, -1
1780	vlef	%v0, 0, 4
1781	vlef	%v0, -1, 0
1782	vlef	%v0, 4096, 0
1783	vlef	%v0, 0(%v1,%r2), 0
1784
1785#CHECK: error: invalid operand
1786#CHECK: vleg	%v0, 0, -1
1787#CHECK: error: invalid operand
1788#CHECK: vleg	%v0, 0, 2
1789#CHECK: error: invalid operand
1790#CHECK: vleg	%v0, -1, 0
1791#CHECK: error: invalid operand
1792#CHECK: vleg	%v0, 4096, 0
1793#CHECK: error: invalid use of vector addressing
1794#CHECK: vleg	%v0, 0(%v1,%r2), 0
1795
1796	vleg	%v0, 0, -1
1797	vleg	%v0, 0, 2
1798	vleg	%v0, -1, 0
1799	vleg	%v0, 4096, 0
1800	vleg	%v0, 0(%v1,%r2), 0
1801
1802#CHECK: error: invalid operand
1803#CHECK: vleh	%v0, 0, -1
1804#CHECK: error: invalid operand
1805#CHECK: vleh	%v0, 0, 8
1806#CHECK: error: invalid operand
1807#CHECK: vleh	%v0, -1, 0
1808#CHECK: error: invalid operand
1809#CHECK: vleh	%v0, 4096, 0
1810#CHECK: error: invalid use of vector addressing
1811#CHECK: vleh	%v0, 0(%v1,%r2), 0
1812
1813	vleh	%v0, 0, -1
1814	vleh	%v0, 0, 8
1815	vleh	%v0, -1, 0
1816	vleh	%v0, 4096, 0
1817	vleh	%v0, 0(%v1,%r2), 0
1818
1819#CHECK: error: invalid operand
1820#CHECK: vleib	%v0, 0, -1
1821#CHECK: error: invalid operand
1822#CHECK: vleib	%v0, 0, 16
1823#CHECK: error: invalid operand
1824#CHECK: vleib	%v0, -32769, 0
1825#CHECK: error: invalid operand
1826#CHECK: vleib	%v0, 32768, 0
1827
1828	vleib	%v0, 0, -1
1829	vleib	%v0, 0, 16
1830	vleib	%v0, -32769, 0
1831	vleib	%v0, 32768, 0
1832
1833#CHECK: error: invalid operand
1834#CHECK: vleif	%v0, 0, -1
1835#CHECK: error: invalid operand
1836#CHECK: vleif	%v0, 0, 4
1837#CHECK: error: invalid operand
1838#CHECK: vleif	%v0, -32769, 0
1839#CHECK: error: invalid operand
1840#CHECK: vleif	%v0, 32768, 0
1841
1842	vleif	%v0, 0, -1
1843	vleif	%v0, 0, 4
1844	vleif	%v0, -32769, 0
1845	vleif	%v0, 32768, 0
1846
1847#CHECK: error: invalid operand
1848#CHECK: vleig	%v0, 0, -1
1849#CHECK: error: invalid operand
1850#CHECK: vleig	%v0, 0, 2
1851#CHECK: error: invalid operand
1852#CHECK: vleig	%v0, -32769, 0
1853#CHECK: error: invalid operand
1854#CHECK: vleig	%v0, 32768, 0
1855
1856	vleig	%v0, 0, -1
1857	vleig	%v0, 0, 2
1858	vleig	%v0, -32769, 0
1859	vleig	%v0, 32768, 0
1860
1861#CHECK: error: invalid operand
1862#CHECK: vleih	%v0, 0, -1
1863#CHECK: error: invalid operand
1864#CHECK: vleih	%v0, 0, 8
1865#CHECK: error: invalid operand
1866#CHECK: vleih	%v0, -32769, 0
1867#CHECK: error: invalid operand
1868#CHECK: vleih	%v0, 32768, 0
1869
1870	vleih	%v0, 0, -1
1871	vleih	%v0, 0, 8
1872	vleih	%v0, -32769, 0
1873	vleih	%v0, 32768, 0
1874
1875#CHECK: error: invalid operand
1876#CHECK: vlgv	%r0, %v0, 0, -1
1877#CHECK: error: invalid operand
1878#CHECK: vlgv	%r0, %v0, 0, 16
1879#CHECK: error: invalid operand
1880#CHECK: vlgv	%r0, %v0, -1, 0
1881#CHECK: error: invalid operand
1882#CHECK: vlgv	%r0, %v0, 4096, 0
1883#CHECK: error: %r0 used in an address
1884#CHECK: vlgv	%r0, %v0, 0(%r0), 0
1885
1886	vlgv	%r0, %v0, 0, -1
1887	vlgv	%r0, %v0, 0, 16
1888	vlgv	%r0, %v0, -1, 0
1889	vlgv	%r0, %v0, 4096, 0
1890	vlgv	%r0, %v0, 0(%r0), 0
1891
1892#CHECK: error: invalid operand
1893#CHECK: vlgvb	%r0, %v0, -1
1894#CHECK: error: invalid operand
1895#CHECK: vlgvb	%r0, %v0, 4096
1896#CHECK: error: %r0 used in an address
1897#CHECK: vlgvb	%r0, %v0, 0(%r0)
1898
1899	vlgvb	%r0, %v0, -1
1900	vlgvb	%r0, %v0, 4096
1901	vlgvb	%r0, %v0, 0(%r0)
1902
1903#CHECK: error: invalid operand
1904#CHECK: vlgvf	%r0, %v0, -1
1905#CHECK: error: invalid operand
1906#CHECK: vlgvf	%r0, %v0, 4096
1907#CHECK: error: %r0 used in an address
1908#CHECK: vlgvf	%r0, %v0, 0(%r0)
1909
1910	vlgvf	%r0, %v0, -1
1911	vlgvf	%r0, %v0, 4096
1912	vlgvf	%r0, %v0, 0(%r0)
1913
1914#CHECK: error: invalid operand
1915#CHECK: vlgvg	%r0, %v0, -1
1916#CHECK: error: invalid operand
1917#CHECK: vlgvg	%r0, %v0, 4096
1918#CHECK: error: %r0 used in an address
1919#CHECK: vlgvg	%r0, %v0, 0(%r0)
1920
1921	vlgvg	%r0, %v0, -1
1922	vlgvg	%r0, %v0, 4096
1923	vlgvg	%r0, %v0, 0(%r0)
1924
1925#CHECK: error: invalid operand
1926#CHECK: vlgvh	%r0, %v0, -1
1927#CHECK: error: invalid operand
1928#CHECK: vlgvh	%r0, %v0, 4096
1929#CHECK: error: %r0 used in an address
1930#CHECK: vlgvh	%r0, %v0, 0(%r0)
1931
1932	vlgvh	%r0, %v0, -1
1933	vlgvh	%r0, %v0, 4096
1934	vlgvh	%r0, %v0, 0(%r0)
1935
1936#CHECK: error: instruction requires: vector-packed-decimal
1937#CHECK: vlip	%v0, 0, 0
1938
1939	vlip	%v0, 0, 0
1940
1941#CHECK: error: invalid operand
1942#CHECK: vll	%v0, %r0, -1
1943#CHECK: error: invalid operand
1944#CHECK: vll	%v0, %r0, 4096
1945#CHECK: error: %r0 used in an address
1946#CHECK: vll	%v0, %r0, 0(%r0)
1947
1948	vll	%v0, %r0, -1
1949	vll	%v0, %r0, 4096
1950	vll	%v0, %r0, 0(%r0)
1951
1952#CHECK: error: invalid operand
1953#CHECK: vllez	%v0, 0, -1
1954#CHECK: error: invalid operand
1955#CHECK: vllez	%v0, 0, 16
1956#CHECK: error: invalid operand
1957#CHECK: vllez	%v0, -1, 0
1958#CHECK: error: invalid operand
1959#CHECK: vllez	%v0, 4096, 0
1960#CHECK: error: invalid use of vector addressing
1961#CHECK: vllez	%v0, 0(%v1,%r2), 0
1962
1963	vllez	%v0, 0, -1
1964	vllez	%v0, 0, 16
1965	vllez	%v0, -1, 0
1966	vllez	%v0, 4096, 0
1967	vllez	%v0, 0(%v1,%r2), 0
1968
1969#CHECK: error: invalid operand
1970#CHECK: vllezb	%v0, -1
1971#CHECK: error: invalid operand
1972#CHECK: vllezb	%v0, 4096
1973#CHECK: error: invalid use of vector addressing
1974#CHECK: vllezb	%v0, 0(%v1,%r2)
1975
1976	vllezb	%v0, -1
1977	vllezb	%v0, 4096
1978	vllezb	%v0, 0(%v1,%r2)
1979
1980#CHECK: error: invalid operand
1981#CHECK: vllezf	%v0, -1
1982#CHECK: error: invalid operand
1983#CHECK: vllezf	%v0, 4096
1984#CHECK: error: invalid use of vector addressing
1985#CHECK: vllezf	%v0, 0(%v1,%r2)
1986
1987	vllezf	%v0, -1
1988	vllezf	%v0, 4096
1989	vllezf	%v0, 0(%v1,%r2)
1990
1991#CHECK: error: invalid operand
1992#CHECK: vllezg	%v0, -1
1993#CHECK: error: invalid operand
1994#CHECK: vllezg	%v0, 4096
1995#CHECK: error: invalid use of vector addressing
1996#CHECK: vllezg	%v0, 0(%v1,%r2)
1997
1998	vllezg	%v0, -1
1999	vllezg	%v0, 4096
2000	vllezg	%v0, 0(%v1,%r2)
2001
2002#CHECK: error: invalid operand
2003#CHECK: vllezh	%v0, -1
2004#CHECK: error: invalid operand
2005#CHECK: vllezh	%v0, 4096
2006#CHECK: error: invalid use of vector addressing
2007#CHECK: vllezh	%v0, 0(%v1,%r2)
2008
2009	vllezh	%v0, -1
2010	vllezh	%v0, 4096
2011	vllezh	%v0, 0(%v1,%r2)
2012
2013#CHECK: error: instruction requires: vector-enhancements-1
2014#CHECK: vllezlf	%v0, 0
2015
2016	vllezlf	%v0, 0
2017
2018#CHECK: error: invalid operand
2019#CHECK: vlm	%v0, %v0, -1
2020#CHECK: error: invalid operand
2021#CHECK: vlm	%v0, %v0, 4096
2022#CHECK: error: invalid operand
2023#CHECK: vlm	%v0, %v0, 0, -1
2024#CHECK: error: invalid operand
2025#CHECK: vlm	%v0, %v0, 0, 16
2026
2027	vlm	%v0, %v0, -1
2028	vlm	%v0, %v0, 4096
2029	vlm	%v0, %v0, 0, -1
2030	vlm	%v0, %v0, 0, 16
2031
2032#CHECK: error: invalid operand
2033#CHECK: vlrep	%v0, 0, -1
2034#CHECK: error: invalid operand
2035#CHECK: vlrep	%v0, 0, 16
2036#CHECK: error: invalid operand
2037#CHECK: vlrep	%v0, -1, 0
2038#CHECK: error: invalid operand
2039#CHECK: vlrep	%v0, 4096, 0
2040#CHECK: error: invalid use of vector addressing
2041#CHECK: vlrep	%v0, 0(%v1,%r2), 0
2042
2043	vlrep	%v0, 0, -1
2044	vlrep	%v0, 0, 16
2045	vlrep	%v0, -1, 0
2046	vlrep	%v0, 4096, 0
2047	vlrep	%v0, 0(%v1,%r2), 0
2048
2049#CHECK: error: invalid operand
2050#CHECK: vlrepb	%v0, -1
2051#CHECK: error: invalid operand
2052#CHECK: vlrepb	%v0, 4096
2053#CHECK: error: invalid use of vector addressing
2054#CHECK: vlrepb	%v0, 0(%v1,%r2)
2055
2056	vlrepb	%v0, -1
2057	vlrepb	%v0, 4096
2058	vlrepb	%v0, 0(%v1,%r2)
2059
2060#CHECK: error: invalid operand
2061#CHECK: vlrepf	%v0, -1
2062#CHECK: error: invalid operand
2063#CHECK: vlrepf	%v0, 4096
2064#CHECK: error: invalid use of vector addressing
2065#CHECK: vlrepf	%v0, 0(%v1,%r2)
2066
2067	vlrepf	%v0, -1
2068	vlrepf	%v0, 4096
2069	vlrepf	%v0, 0(%v1,%r2)
2070
2071#CHECK: error: invalid operand
2072#CHECK: vlrepg	%v0, -1
2073#CHECK: error: invalid operand
2074#CHECK: vlrepg	%v0, 4096
2075#CHECK: error: invalid use of vector addressing
2076#CHECK: vlrepg	%v0, 0(%v1,%r2)
2077
2078	vlrepg	%v0, -1
2079	vlrepg	%v0, 4096
2080	vlrepg	%v0, 0(%v1,%r2)
2081
2082#CHECK: error: invalid operand
2083#CHECK: vlreph	%v0, -1
2084#CHECK: error: invalid operand
2085#CHECK: vlreph	%v0, 4096
2086#CHECK: error: invalid use of vector addressing
2087#CHECK: vlreph	%v0, 0(%v1,%r2)
2088
2089	vlreph	%v0, -1
2090	vlreph	%v0, 4096
2091	vlreph	%v0, 0(%v1,%r2)
2092
2093#CHECK: error: instruction requires: vector-packed-decimal
2094#CHECK: vlrl	%v0, 0, 0
2095
2096	vlrl	%v0, 0, 0
2097
2098#CHECK: error: instruction requires: vector-packed-decimal
2099#CHECK: vlrlr	%v0, %r0, 0
2100
2101	vlrlr	%v0, %r0, 0
2102
2103#CHECK: error: invalid operand
2104#CHECK: vlvg	%v0, %r0, 0, -1
2105#CHECK: error: invalid operand
2106#CHECK: vlvg	%v0, %r0, 0, 16
2107#CHECK: error: invalid operand
2108#CHECK: vlvg	%v0, %r0, -1, 0
2109#CHECK: error: invalid operand
2110#CHECK: vlvg	%v0, %r0, 4096, 0
2111#CHECK: error: %r0 used in an address
2112#CHECK: vlvg	%v0, %r0, 0(%r0), 0
2113
2114	vlvg	%v0, %r0, 0, -1
2115	vlvg	%v0, %r0, 0, 16
2116	vlvg	%v0, %r0, -1, 0
2117	vlvg	%v0, %r0, 4096, 0
2118	vlvg	%v0, %r0, 0(%r0), 0
2119
2120#CHECK: error: invalid operand
2121#CHECK: vlvgb	%v0, %r0, -1
2122#CHECK: error: invalid operand
2123#CHECK: vlvgb	%v0, %r0, 4096
2124#CHECK: error: %r0 used in an address
2125#CHECK: vlvgb	%v0, %r0, 0(%r0)
2126
2127	vlvgb	%v0, %r0, -1
2128	vlvgb	%v0, %r0, 4096
2129	vlvgb	%v0, %r0, 0(%r0)
2130
2131#CHECK: error: invalid operand
2132#CHECK: vlvgf	%v0, %r0, -1
2133#CHECK: error: invalid operand
2134#CHECK: vlvgf	%v0, %r0, 4096
2135#CHECK: error: %r0 used in an address
2136#CHECK: vlvgf	%v0, %r0, 0(%r0)
2137
2138	vlvgf	%v0, %r0, -1
2139	vlvgf	%v0, %r0, 4096
2140	vlvgf	%v0, %r0, 0(%r0)
2141
2142#CHECK: error: invalid operand
2143#CHECK: vlvgg	%v0, %r0, -1
2144#CHECK: error: invalid operand
2145#CHECK: vlvgg	%v0, %r0, 4096
2146#CHECK: error: %r0 used in an address
2147#CHECK: vlvgg	%v0, %r0, 0(%r0)
2148
2149	vlvgg	%v0, %r0, -1
2150	vlvgg	%v0, %r0, 4096
2151	vlvgg	%v0, %r0, 0(%r0)
2152
2153#CHECK: error: invalid operand
2154#CHECK: vlvgh	%v0, %r0, -1
2155#CHECK: error: invalid operand
2156#CHECK: vlvgh	%v0, %r0, 4096
2157#CHECK: error: %r0 used in an address
2158#CHECK: vlvgh	%v0, %r0, 0(%r0)
2159
2160	vlvgh	%v0, %r0, -1
2161	vlvgh	%v0, %r0, 4096
2162	vlvgh	%v0, %r0, 0(%r0)
2163
2164#CHECK: error: instruction requires: vector-packed-decimal
2165#CHECK: vmp	%v0, %v0, %v0, 0, 0
2166
2167	vmp	%v0, %v0, %v0, 0, 0
2168
2169#CHECK: error: instruction requires: vector-enhancements-1
2170#CHECK: vmsl	%v0, %v0, %v0, %v0, 0, 0
2171#CHECK: error: instruction requires: vector-enhancements-1
2172#CHECK: vmslg	%v0, %v0, %v0, %v0, 0
2173
2174	vmsl	%v0, %v0, %v0, %v0, 0, 0
2175	vmslg	%v0, %v0, %v0, %v0, 0
2176
2177#CHECK: error: instruction requires: vector-packed-decimal
2178#CHECK: vmsp	%v0, %v0, %v0, 0, 0
2179
2180	vmsp	%v0, %v0, %v0, 0, 0
2181
2182#CHECK: error: instruction requires: vector-enhancements-1
2183#CHECK: vnn	%v0, %v0, %v0
2184
2185	vnn	%v0, %v0, %v0
2186
2187#CHECK: error: instruction requires: vector-enhancements-1
2188#CHECK: vnx	%v0, %v0, %v0
2189
2190	vnx	%v0, %v0, %v0
2191
2192#CHECK: error: instruction requires: vector-enhancements-1
2193#CHECK: voc	%v0, %v0, %v0
2194
2195	voc	%v0, %v0, %v0
2196
2197#CHECK: error: invalid operand
2198#CHECK: vpdi	%v0, %v0, %v0, -1
2199#CHECK: error: invalid operand
2200#CHECK: vpdi	%v0, %v0, %v0, 16
2201
2202	vpdi	%v0, %v0, %v0, -1
2203	vpdi	%v0, %v0, %v0, 16
2204
2205#CHECK: error: instruction requires: vector-packed-decimal
2206#CHECK: vpkz	%v0, 0, 0
2207
2208	vpkz	%v0, 0, 0
2209
2210#CHECK: error: instruction requires: vector-enhancements-1
2211#CHECK: vpopctb	%v0, %v0
2212#CHECK: error: instruction requires: vector-enhancements-1
2213#CHECK: vpopctf	%v0, %v0
2214#CHECK: error: instruction requires: vector-enhancements-1
2215#CHECK: vpopctg	%v0, %v0
2216#CHECK: error: instruction requires: vector-enhancements-1
2217#CHECK: vpopcth	%v0, %v0
2218
2219	vpopctb	%v0, %v0
2220	vpopctf	%v0, %v0
2221	vpopctg	%v0, %v0
2222	vpopcth	%v0, %v0
2223
2224#CHECK: error: instruction requires: vector-packed-decimal
2225#CHECK: vpsop	%v0, %v0, 0, 0, 0
2226
2227	vpsop	%v0, %v0, 0, 0, 0
2228
2229#CHECK: error: invalid operand
2230#CHECK: vrep	%v0, %v0, 0, -1
2231#CHECK: error: invalid operand
2232#CHECK: vrep	%v0, %v0, 0, 16
2233#CHECK: error: invalid operand
2234#CHECK: vrep	%v0, %v0, -1, 0
2235#CHECK: error: invalid operand
2236#CHECK: vrep	%v0, %v0, 65536, 0
2237
2238	vrep	%v0, %v0, 0, -1
2239	vrep	%v0, %v0, 0, 16
2240	vrep	%v0, %v0, -1, 0
2241	vrep	%v0, %v0, 65536, 0
2242
2243#CHECK: error: invalid operand
2244#CHECK: vrepb	%v0, %v0, -1
2245#CHECK: error: invalid operand
2246#CHECK: vrepb	%v0, %v0, 65536
2247
2248	vrepb	%v0, %v0, -1
2249	vrepb	%v0, %v0, 65536
2250
2251#CHECK: error: invalid operand
2252#CHECK: vrepf	%v0, %v0, -1
2253#CHECK: error: invalid operand
2254#CHECK: vrepf	%v0, %v0, 65536
2255
2256	vrepf	%v0, %v0, -1
2257	vrepf	%v0, %v0, 65536
2258
2259#CHECK: error: invalid operand
2260#CHECK: vrepg	%v0, %v0, -1
2261#CHECK: error: invalid operand
2262#CHECK: vrepg	%v0, %v0, 65536
2263
2264	vrepg	%v0, %v0, -1
2265	vrepg	%v0, %v0, 65536
2266
2267#CHECK: error: invalid operand
2268#CHECK: vreph	%v0, %v0, -1
2269#CHECK: error: invalid operand
2270#CHECK: vreph	%v0, %v0, 65536
2271
2272	vreph	%v0, %v0, -1
2273	vreph	%v0, %v0, 65536
2274
2275#CHECK: error: invalid operand
2276#CHECK: vrepi	%v0, 0, -1
2277#CHECK: error: invalid operand
2278#CHECK: vrepi	%v0, 0, 16
2279#CHECK: error: invalid operand
2280#CHECK: vrepi	%v0, -32769, 0
2281#CHECK: error: invalid operand
2282#CHECK: vrepi	%v0, 32768, 0
2283
2284	vrepi	%v0, 0, -1
2285	vrepi	%v0, 0, 16
2286	vrepi	%v0, -32769, 0
2287	vrepi	%v0, 32768, 0
2288
2289#CHECK: error: invalid operand
2290#CHECK: vrepib	%v0, -32769
2291#CHECK: error: invalid operand
2292#CHECK: vrepib	%v0, 32768
2293
2294	vrepib	%v0, -32769
2295	vrepib	%v0, 32768
2296
2297#CHECK: error: invalid operand
2298#CHECK: vrepif	%v0, -32769
2299#CHECK: error: invalid operand
2300#CHECK: vrepif	%v0, 32768
2301
2302	vrepif	%v0, -32769
2303	vrepif	%v0, 32768
2304
2305#CHECK: error: invalid operand
2306#CHECK: vrepig	%v0, -32769
2307#CHECK: error: invalid operand
2308#CHECK: vrepig	%v0, 32768
2309
2310	vrepig	%v0, -32769
2311	vrepig	%v0, 32768
2312
2313#CHECK: error: invalid operand
2314#CHECK: vrepih	%v0, -32769
2315#CHECK: error: invalid operand
2316#CHECK: vrepih	%v0, 32768
2317
2318	vrepih	%v0, -32769
2319	vrepih	%v0, 32768
2320
2321#CHECK: error: instruction requires: vector-packed-decimal
2322#CHECK: vrp	%v0, %v0, %v0, 0, 0
2323
2324	vrp	%v0, %v0, %v0, 0, 0
2325
2326#CHECK: error: vector index required
2327#CHECK: vscef	%v0, 0(%r1), 0
2328#CHECK: error: vector index required
2329#CHECK: vscef	%v0, 0(%r2,%r1), 0
2330#CHECK: error: invalid operand
2331#CHECK: vscef	%v0, 0(%v0,%r1), -1
2332#CHECK: error: invalid operand
2333#CHECK: vscef	%v0, 0(%v0,%r1), 4
2334#CHECK: error: invalid operand
2335#CHECK: vscef	%v0, -1(%v0,%r1), 0
2336#CHECK: error: invalid operand
2337#CHECK: vscef	%v0, 4096(%v0,%r1), 0
2338
2339	vscef	%v0, 0(%r1), 0
2340	vscef	%v0, 0(%r2,%r1), 0
2341	vscef	%v0, 0(%v0,%r1), -1
2342	vscef	%v0, 0(%v0,%r1), 4
2343	vscef	%v0, -1(%v0,%r1), 0
2344	vscef	%v0, 4096(%v0,%r1), 0
2345
2346#CHECK: error: vector index required
2347#CHECK: vsceg	%v0, 0(%r1), 0
2348#CHECK: error: vector index required
2349#CHECK: vsceg	%v0, 0(%r2,%r1), 0
2350#CHECK: error: invalid operand
2351#CHECK: vsceg	%v0, 0(%v0,%r1), -1
2352#CHECK: error: invalid operand
2353#CHECK: vsceg	%v0, 0(%v0,%r1), 2
2354#CHECK: error: invalid operand
2355#CHECK: vsceg	%v0, -1(%v0,%r1), 0
2356#CHECK: error: invalid operand
2357#CHECK: vsceg	%v0, 4096(%v0,%r1), 0
2358
2359	vsceg	%v0, 0(%r1), 0
2360	vsceg	%v0, 0(%r2,%r1), 0
2361	vsceg	%v0, 0(%v0,%r1), -1
2362	vsceg	%v0, 0(%v0,%r1), 2
2363	vsceg	%v0, -1(%v0,%r1), 0
2364	vsceg	%v0, 4096(%v0,%r1), 0
2365
2366#CHECK: error: instruction requires: vector-packed-decimal
2367#CHECK: vsdp	%v0, %v0, %v0, 0, 0
2368
2369	vsdp	%v0, %v0, %v0, 0, 0
2370
2371#CHECK: error: invalid operand
2372#CHECK: vsldb	%v0, %v0, %v0, -1
2373#CHECK: error: invalid operand
2374#CHECK: vsldb	%v0, %v0, %v0, 256
2375
2376	vsldb	%v0, %v0, %v0, -1
2377	vsldb	%v0, %v0, %v0, 256
2378
2379#CHECK: error: instruction requires: vector-packed-decimal
2380#CHECK: vsp	%v0, %v0, %v0, 0, 0
2381
2382	vsp	%v0, %v0, %v0, 0, 0
2383
2384#CHECK: error: instruction requires: vector-packed-decimal
2385#CHECK: vsrp	%v0, %v0, 0, 0, 0
2386
2387	vsrp	%v0, %v0, 0, 0, 0
2388
2389#CHECK: error: invalid operand
2390#CHECK: vst	%v0, -1
2391#CHECK: error: invalid operand
2392#CHECK: vst	%v0, 4096
2393#CHECK: error: invalid use of vector addressing
2394#CHECK: vst	%v0, 0(%v1,%r2)
2395#CHECK: error: invalid operand
2396#CHECK: vst	%v0, 0, -1
2397#CHECK: error: invalid operand
2398#CHECK: vst	%v0, 0, 16
2399
2400	vst	%v0, -1
2401	vst	%v0, 4096
2402	vst	%v0, 0(%v1,%r2)
2403	vst	%v0, 0, -1
2404	vst	%v0, 0, 16
2405
2406#CHECK: error: invalid operand
2407#CHECK: vsteb	%v0, 0, -1
2408#CHECK: error: invalid operand
2409#CHECK: vsteb	%v0, 0, 16
2410#CHECK: error: invalid operand
2411#CHECK: vsteb	%v0, -1, 0
2412#CHECK: error: invalid operand
2413#CHECK: vsteb	%v0, 4096, 0
2414#CHECK: error: invalid use of vector addressing
2415#CHECK: vsteb	%v0, 0(%v1,%r2), 0
2416
2417	vsteb	%v0, 0, -1
2418	vsteb	%v0, 0, 16
2419	vsteb	%v0, -1, 0
2420	vsteb	%v0, 4096, 0
2421	vsteb	%v0, 0(%v1,%r2), 0
2422
2423#CHECK: error: invalid operand
2424#CHECK: vstef	%v0, 0, -1
2425#CHECK: error: invalid operand
2426#CHECK: vstef	%v0, 0, 4
2427#CHECK: error: invalid operand
2428#CHECK: vstef	%v0, -1, 0
2429#CHECK: error: invalid operand
2430#CHECK: vstef	%v0, 4096, 0
2431#CHECK: error: invalid use of vector addressing
2432#CHECK: vstef	%v0, 0(%v1,%r2), 0
2433
2434	vstef	%v0, 0, -1
2435	vstef	%v0, 0, 4
2436	vstef	%v0, -1, 0
2437	vstef	%v0, 4096, 0
2438	vstef	%v0, 0(%v1,%r2), 0
2439
2440#CHECK: error: invalid operand
2441#CHECK: vsteg	%v0, 0, -1
2442#CHECK: error: invalid operand
2443#CHECK: vsteg	%v0, 0, 2
2444#CHECK: error: invalid operand
2445#CHECK: vsteg	%v0, -1, 0
2446#CHECK: error: invalid operand
2447#CHECK: vsteg	%v0, 4096, 0
2448#CHECK: error: invalid use of vector addressing
2449#CHECK: vsteg	%v0, 0(%v1,%r2), 0
2450
2451	vsteg	%v0, 0, -1
2452	vsteg	%v0, 0, 2
2453	vsteg	%v0, -1, 0
2454	vsteg	%v0, 4096, 0
2455	vsteg	%v0, 0(%v1,%r2), 0
2456
2457#CHECK: error: invalid operand
2458#CHECK: vsteh	%v0, 0, -1
2459#CHECK: error: invalid operand
2460#CHECK: vsteh	%v0, 0, 8
2461#CHECK: error: invalid operand
2462#CHECK: vsteh	%v0, -1, 0
2463#CHECK: error: invalid operand
2464#CHECK: vsteh	%v0, 4096, 0
2465#CHECK: error: invalid use of vector addressing
2466#CHECK: vsteh	%v0, 0(%v1,%r2), 0
2467
2468	vsteh	%v0, 0, -1
2469	vsteh	%v0, 0, 8
2470	vsteh	%v0, -1, 0
2471	vsteh	%v0, 4096, 0
2472	vsteh	%v0, 0(%v1,%r2), 0
2473
2474#CHECK: error: invalid operand
2475#CHECK: vstl	%v0, %r0, -1
2476#CHECK: error: invalid operand
2477#CHECK: vstl	%v0, %r0, 4096
2478#CHECK: error: %r0 used in an address
2479#CHECK: vstl	%v0, %r0, 0(%r0)
2480
2481	vstl	%v0, %r0, -1
2482	vstl	%v0, %r0, 4096
2483	vstl	%v0, %r0, 0(%r0)
2484
2485#CHECK: error: invalid operand
2486#CHECK: vstm	%v0, %v0, -1
2487#CHECK: error: invalid operand
2488#CHECK: vstm	%v0, %v0, 4096
2489#CHECK: error: invalid operand
2490#CHECK: vstm	%v0, %v0, 0, -1
2491#CHECK: error: invalid operand
2492#CHECK: vstm	%v0, %v0, 0, 16
2493
2494	vstm	%v0, %v0, -1
2495	vstm	%v0, %v0, 4096
2496	vstm	%v0, %v0, 0, -1
2497	vstm	%v0, %v0, 0, 16
2498
2499#CHECK: error: invalid operand
2500#CHECK: vstrc    %v0, %v0, %v0, %v0, 0, -1
2501#CHECK: error: invalid operand
2502#CHECK: vstrc    %v0, %v0, %v0, %v0, 0, 16
2503#CHECK: error: invalid operand
2504#CHECK: vstrc    %v0, %v0, %v0, %v0, -1, 0
2505#CHECK: error: invalid operand
2506#CHECK: vstrc    %v0, %v0, %v0, %v0, 16, 0
2507#CHECK: error: too few operands
2508#CHECK: vstrc    %v0, %v0, %v0, %v0
2509#CHECK: error: invalid operand
2510#CHECK: vstrc    %v0, %v0, %v0, %v0, 0, 0, 0
2511
2512	vstrc    %v0, %v0, %v0, %v0, 0, -1
2513	vstrc    %v0, %v0, %v0, %v0, 0, 16
2514	vstrc    %v0, %v0, %v0, %v0, -1, 0
2515	vstrc    %v0, %v0, %v0, %v0, 16, 0
2516	vstrc    %v0, %v0, %v0, %v0
2517	vstrc    %v0, %v0, %v0, %v0, 0, 0, 0
2518
2519#CHECK: error: invalid operand
2520#CHECK: vstrcb   %v0, %v0, %v0, %v0, -1
2521#CHECK: error: invalid operand
2522#CHECK: vstrcb   %v0, %v0, %v0, %v0, 16
2523#CHECK: error: too few operands
2524#CHECK: vstrcb   %v0, %v0, %v0
2525#CHECK: error: invalid operand
2526#CHECK: vstrcb   %v0, %v0, %v0, %v0, 0, 0
2527
2528	vstrcb   %v0, %v0, %v0, %v0, -1
2529	vstrcb   %v0, %v0, %v0, %v0, 16
2530	vstrcb   %v0, %v0, %v0
2531	vstrcb   %v0, %v0, %v0, %v0, 0, 0
2532
2533#CHECK: error: invalid operand
2534#CHECK: vstrcbs  %v0, %v0, %v0, %v0, -1
2535#CHECK: error: invalid operand
2536#CHECK: vstrcbs  %v0, %v0, %v0, %v0, 16
2537#CHECK: error: too few operands
2538#CHECK: vstrcbs  %v0, %v0, %v0
2539#CHECK: error: invalid operand
2540#CHECK: vstrcbs  %v0, %v0, %v0, %v0, 0, 0
2541
2542	vstrcbs  %v0, %v0, %v0, %v0, -1
2543	vstrcbs  %v0, %v0, %v0, %v0, 16
2544	vstrcbs  %v0, %v0, %v0
2545	vstrcbs  %v0, %v0, %v0, %v0, 0, 0
2546
2547#CHECK: error: invalid operand
2548#CHECK: vstrcf   %v0, %v0, %v0, %v0, -1
2549#CHECK: error: invalid operand
2550#CHECK: vstrcf   %v0, %v0, %v0, %v0, 16
2551#CHECK: error: too few operands
2552#CHECK: vstrcf   %v0, %v0, %v0
2553#CHECK: error: invalid operand
2554#CHECK: vstrcf   %v0, %v0, %v0, %v0, 0, 0
2555
2556	vstrcf   %v0, %v0, %v0, %v0, -1
2557	vstrcf   %v0, %v0, %v0, %v0, 16
2558	vstrcf   %v0, %v0, %v0
2559	vstrcf   %v0, %v0, %v0, %v0, 0, 0
2560
2561#CHECK: error: invalid operand
2562#CHECK: vstrcfs  %v0, %v0, %v0, %v0, -1
2563#CHECK: error: invalid operand
2564#CHECK: vstrcfs  %v0, %v0, %v0, %v0, 16
2565#CHECK: error: too few operands
2566#CHECK: vstrcfs  %v0, %v0, %v0
2567#CHECK: error: invalid operand
2568#CHECK: vstrcfs  %v0, %v0, %v0, %v0, 0, 0
2569
2570	vstrcfs  %v0, %v0, %v0, %v0, -1
2571	vstrcfs  %v0, %v0, %v0, %v0, 16
2572	vstrcfs  %v0, %v0, %v0
2573	vstrcfs  %v0, %v0, %v0, %v0, 0, 0
2574
2575#CHECK: error: invalid operand
2576#CHECK: vstrch   %v0, %v0, %v0, %v0, -1
2577#CHECK: error: invalid operand
2578#CHECK: vstrch   %v0, %v0, %v0, %v0, 16
2579#CHECK: error: too few operands
2580#CHECK: vstrch   %v0, %v0, %v0
2581#CHECK: error: invalid operand
2582#CHECK: vstrch   %v0, %v0, %v0, %v0, 0, 0
2583
2584	vstrch   %v0, %v0, %v0, %v0, -1
2585	vstrch   %v0, %v0, %v0, %v0, 16
2586	vstrch   %v0, %v0, %v0
2587	vstrch   %v0, %v0, %v0, %v0, 0, 0
2588
2589#CHECK: error: invalid operand
2590#CHECK: vstrchs  %v0, %v0, %v0, %v0, -1
2591#CHECK: error: invalid operand
2592#CHECK: vstrchs  %v0, %v0, %v0, %v0, 16
2593#CHECK: error: too few operands
2594#CHECK: vstrchs  %v0, %v0, %v0
2595#CHECK: error: invalid operand
2596#CHECK: vstrchs  %v0, %v0, %v0, %v0, 0, 0
2597
2598	vstrchs  %v0, %v0, %v0, %v0, -1
2599	vstrchs  %v0, %v0, %v0, %v0, 16
2600	vstrchs  %v0, %v0, %v0
2601	vstrchs  %v0, %v0, %v0, %v0, 0, 0
2602
2603#CHECK: error: invalid operand
2604#CHECK: vstrczb  %v0, %v0, %v0, %v0, -1
2605#CHECK: error: invalid operand
2606#CHECK: vstrczb  %v0, %v0, %v0, %v0, 16
2607#CHECK: error: too few operands
2608#CHECK: vstrczb  %v0, %v0, %v0
2609#CHECK: error: invalid operand
2610#CHECK: vstrczb  %v0, %v0, %v0, %v0, 0, 0
2611
2612	vstrczb  %v0, %v0, %v0, %v0, -1
2613	vstrczb  %v0, %v0, %v0, %v0, 16
2614	vstrczb  %v0, %v0, %v0
2615	vstrczb  %v0, %v0, %v0, %v0, 0, 0
2616
2617#CHECK: error: invalid operand
2618#CHECK: vstrczbs %v0, %v0, %v0, %v0, -1
2619#CHECK: error: invalid operand
2620#CHECK: vstrczbs %v0, %v0, %v0, %v0, 16
2621#CHECK: error: too few operands
2622#CHECK: vstrczbs %v0, %v0, %v0
2623#CHECK: error: invalid operand
2624#CHECK: vstrczbs %v0, %v0, %v0, %v0, 0, 0
2625
2626	vstrczbs %v0, %v0, %v0, %v0, -1
2627	vstrczbs %v0, %v0, %v0, %v0, 16
2628	vstrczbs %v0, %v0, %v0
2629	vstrczbs %v0, %v0, %v0, %v0, 0, 0
2630
2631#CHECK: error: invalid operand
2632#CHECK: vstrczf  %v0, %v0, %v0, %v0, -1
2633#CHECK: error: invalid operand
2634#CHECK: vstrczf  %v0, %v0, %v0, %v0, 16
2635#CHECK: error: too few operands
2636#CHECK: vstrczf  %v0, %v0, %v0
2637#CHECK: error: invalid operand
2638#CHECK: vstrczf  %v0, %v0, %v0, %v0, 0, 0
2639
2640	vstrczf  %v0, %v0, %v0, %v0, -1
2641	vstrczf  %v0, %v0, %v0, %v0, 16
2642	vstrczf  %v0, %v0, %v0
2643	vstrczf  %v0, %v0, %v0, %v0, 0, 0
2644
2645#CHECK: error: invalid operand
2646#CHECK: vstrczfs %v0, %v0, %v0, %v0, -1
2647#CHECK: error: invalid operand
2648#CHECK: vstrczfs %v0, %v0, %v0, %v0, 16
2649#CHECK: error: too few operands
2650#CHECK: vstrczfs %v0, %v0, %v0
2651#CHECK: error: invalid operand
2652#CHECK: vstrczfs %v0, %v0, %v0, %v0, 0, 0
2653
2654	vstrczfs %v0, %v0, %v0, %v0, -1
2655	vstrczfs %v0, %v0, %v0, %v0, 16
2656	vstrczfs %v0, %v0, %v0
2657	vstrczfs %v0, %v0, %v0, %v0, 0, 0
2658
2659#CHECK: error: invalid operand
2660#CHECK: vstrczh  %v0, %v0, %v0, %v0, -1
2661#CHECK: error: invalid operand
2662#CHECK: vstrczh  %v0, %v0, %v0, %v0, 16
2663#CHECK: error: too few operands
2664#CHECK: vstrczh  %v0, %v0, %v0
2665#CHECK: error: invalid operand
2666#CHECK: vstrczh  %v0, %v0, %v0, %v0, 0, 0
2667
2668	vstrczh  %v0, %v0, %v0, %v0, -1
2669	vstrczh  %v0, %v0, %v0, %v0, 16
2670	vstrczh  %v0, %v0, %v0
2671	vstrczh  %v0, %v0, %v0, %v0, 0, 0
2672
2673#CHECK: error: invalid operand
2674#CHECK: vstrczhs %v0, %v0, %v0, %v0, -1
2675#CHECK: error: invalid operand
2676#CHECK: vstrczhs %v0, %v0, %v0, %v0, 16
2677#CHECK: error: too few operands
2678#CHECK: vstrczhs %v0, %v0, %v0
2679#CHECK: error: invalid operand
2680#CHECK: vstrczhs %v0, %v0, %v0, %v0, 0, 0
2681
2682	vstrczhs %v0, %v0, %v0, %v0, -1
2683	vstrczhs %v0, %v0, %v0, %v0, 16
2684	vstrczhs %v0, %v0, %v0
2685	vstrczhs %v0, %v0, %v0, %v0, 0, 0
2686
2687#CHECK: error: instruction requires: vector-packed-decimal
2688#CHECK: vstrl	%v0, 0, 0
2689
2690	vstrl	%v0, 0, 0
2691
2692#CHECK: error: instruction requires: vector-packed-decimal
2693#CHECK: vstrlr	%v0, %r0, 0
2694
2695	vstrlr	%v0, %r0, 0
2696
2697#CHECK: error: instruction requires: vector-packed-decimal
2698#CHECK: vtp	%v0
2699
2700	vtp	%v0
2701
2702#CHECK: error: instruction requires: vector-packed-decimal
2703#CHECK: vupkz	%v0, 0, 0
2704
2705	vupkz	%v0, 0, 0
2706
2707#CHECK: error: invalid operand
2708#CHECK: wcdgb	%v0, %v0, 0, -1
2709#CHECK: error: invalid operand
2710#CHECK: wcdgb	%v0, %v0, 0, 16
2711#CHECK: error: invalid operand
2712#CHECK: wcdgb	%v0, %v0, -1, 0
2713#CHECK: error: invalid operand
2714#CHECK: wcdgb	%v0, %v0, 16, 0
2715
2716	wcdgb	%v0, %v0, 0, -1
2717	wcdgb	%v0, %v0, 0, 16
2718	wcdgb	%v0, %v0, -1, 0
2719	wcdgb	%v0, %v0, 16, 0
2720
2721#CHECK: error: invalid operand
2722#CHECK: wcdlgb	%v0, %v0, 0, -1
2723#CHECK: error: invalid operand
2724#CHECK: wcdlgb	%v0, %v0, 0, 16
2725#CHECK: error: invalid operand
2726#CHECK: wcdlgb	%v0, %v0, -1, 0
2727#CHECK: error: invalid operand
2728#CHECK: wcdlgb	%v0, %v0, 16, 0
2729
2730	wcdlgb	%v0, %v0, 0, -1
2731	wcdlgb	%v0, %v0, 0, 16
2732	wcdlgb	%v0, %v0, -1, 0
2733	wcdlgb	%v0, %v0, 16, 0
2734
2735#CHECK: error: invalid operand
2736#CHECK: wcgdb	%v0, %v0, 0, -1
2737#CHECK: error: invalid operand
2738#CHECK: wcgdb	%v0, %v0, 0, 16
2739#CHECK: error: invalid operand
2740#CHECK: wcgdb	%v0, %v0, -1, 0
2741#CHECK: error: invalid operand
2742#CHECK: wcgdb	%v0, %v0, 16, 0
2743
2744	wcgdb	%v0, %v0, 0, -1
2745	wcgdb	%v0, %v0, 0, 16
2746	wcgdb	%v0, %v0, -1, 0
2747	wcgdb	%v0, %v0, 16, 0
2748
2749#CHECK: error: invalid operand
2750#CHECK: wclgdb	%v0, %v0, 0, -1
2751#CHECK: error: invalid operand
2752#CHECK: wclgdb	%v0, %v0, 0, 16
2753#CHECK: error: invalid operand
2754#CHECK: wclgdb	%v0, %v0, -1, 0
2755#CHECK: error: invalid operand
2756#CHECK: wclgdb	%v0, %v0, 16, 0
2757
2758	wclgdb	%v0, %v0, 0, -1
2759	wclgdb	%v0, %v0, 0, 16
2760	wclgdb	%v0, %v0, -1, 0
2761	wclgdb	%v0, %v0, 16, 0
2762
2763#CHECK: error: instruction requires: vector-enhancements-1
2764#CHECK: wfasb	%v0, %v0, %v0
2765#CHECK: error: instruction requires: vector-enhancements-1
2766#CHECK: wfaxb	%v0, %v0, %v0
2767
2768	wfasb	%v0, %v0, %v0
2769	wfaxb	%v0, %v0, %v0
2770
2771#CHECK: error: instruction requires: vector-enhancements-1
2772#CHECK: wfcsb	%v0, %v0
2773#CHECK: error: instruction requires: vector-enhancements-1
2774#CHECK: wfcxb	%v0, %v0
2775
2776	wfcsb	%v0, %v0
2777	wfcxb	%v0, %v0
2778
2779#CHECK: error: instruction requires: vector-enhancements-1
2780#CHECK: wfcesb	%v0, %v0, %v0
2781#CHECK: error: instruction requires: vector-enhancements-1
2782#CHECK: wfcesbs	%v0, %v0, %v0
2783#CHECK: error: instruction requires: vector-enhancements-1
2784#CHECK: wfcexb	%v0, %v0, %v0
2785#CHECK: error: instruction requires: vector-enhancements-1
2786#CHECK: wfcexbs	%v0, %v0, %v0
2787
2788	wfcesb	%v0, %v0, %v0
2789	wfcesbs	%v0, %v0, %v0
2790	wfcexb	%v0, %v0, %v0
2791	wfcexbs	%v0, %v0, %v0
2792
2793#CHECK: error: instruction requires: vector-enhancements-1
2794#CHECK: wfchsb	%v0, %v0, %v0
2795#CHECK: error: instruction requires: vector-enhancements-1
2796#CHECK: wfchsbs	%v0, %v0, %v0
2797#CHECK: error: instruction requires: vector-enhancements-1
2798#CHECK: wfchxb	%v0, %v0, %v0
2799#CHECK: error: instruction requires: vector-enhancements-1
2800#CHECK: wfchxbs	%v0, %v0, %v0
2801
2802	wfchsb	%v0, %v0, %v0
2803	wfchsbs	%v0, %v0, %v0
2804	wfchxb	%v0, %v0, %v0
2805	wfchxbs	%v0, %v0, %v0
2806
2807#CHECK: error: instruction requires: vector-enhancements-1
2808#CHECK: wfchesb	%v0, %v0, %v0
2809#CHECK: error: instruction requires: vector-enhancements-1
2810#CHECK: wfchesbs %v0, %v0, %v0
2811#CHECK: error: instruction requires: vector-enhancements-1
2812#CHECK: wfchexb	%v0, %v0, %v0
2813#CHECK: error: instruction requires: vector-enhancements-1
2814#CHECK: wfchexbs %v0, %v0, %v0
2815
2816	wfchesb	%v0, %v0, %v0
2817	wfchesbs %v0, %v0, %v0
2818	wfchexb	%v0, %v0, %v0
2819	wfchexbs %v0, %v0, %v0
2820
2821#CHECK: error: instruction requires: vector-enhancements-1
2822#CHECK: wfdsb	%v0, %v0, %v0
2823#CHECK: error: instruction requires: vector-enhancements-1
2824#CHECK: wfdxb	%v0, %v0, %v0
2825
2826	wfdsb	%v0, %v0, %v0
2827	wfdxb	%v0, %v0, %v0
2828
2829#CHECK: error: invalid operand
2830#CHECK: wfidb	%v0, %v0, 0, -1
2831#CHECK: error: invalid operand
2832#CHECK: wfidb	%v0, %v0, 0, 16
2833#CHECK: error: invalid operand
2834#CHECK: wfidb	%v0, %v0, -1, 0
2835#CHECK: error: invalid operand
2836#CHECK: wfidb	%v0, %v0, 16, 0
2837
2838	wfidb	%v0, %v0, 0, -1
2839	wfidb	%v0, %v0, 0, 16
2840	wfidb	%v0, %v0, -1, 0
2841	wfidb	%v0, %v0, 16, 0
2842
2843#CHECK: error: instruction requires: vector-enhancements-1
2844#CHECK: wfisb	%v0, %v0, 0, 0
2845#CHECK: error: instruction requires: vector-enhancements-1
2846#CHECK: wfixb	%v0, %v0, 0, 0
2847
2848	wfisb	%v0, %v0, 0, 0
2849	wfixb	%v0, %v0, 0, 0
2850
2851#CHECK: error: instruction requires: vector-enhancements-1
2852#CHECK: wfksb	%v0, %v0
2853#CHECK: error: instruction requires: vector-enhancements-1
2854#CHECK: wfkxb	%v0, %v0
2855
2856	wfksb	%v0, %v0
2857	wfkxb	%v0, %v0
2858
2859#CHECK: error: instruction requires: vector-enhancements-1
2860#CHECK: wfkedb	%v0, %v0, %v0
2861#CHECK: error: instruction requires: vector-enhancements-1
2862#CHECK: wfkedbs	%v0, %v0, %v0
2863#CHECK: error: instruction requires: vector-enhancements-1
2864#CHECK: wfkesb	%v0, %v0, %v0
2865#CHECK: error: instruction requires: vector-enhancements-1
2866#CHECK: wfkesbs	%v0, %v0, %v0
2867#CHECK: error: instruction requires: vector-enhancements-1
2868#CHECK: wfkexb	%v0, %v0, %v0
2869#CHECK: error: instruction requires: vector-enhancements-1
2870#CHECK: wfkexbs	%v0, %v0, %v0
2871
2872	wfkedb	%v0, %v0, %v0
2873	wfkedbs	%v0, %v0, %v0
2874	wfkesb	%v0, %v0, %v0
2875	wfkesbs	%v0, %v0, %v0
2876	wfkexb	%v0, %v0, %v0
2877	wfkexbs	%v0, %v0, %v0
2878
2879#CHECK: error: instruction requires: vector-enhancements-1
2880#CHECK: wfkhdb	%v0, %v0, %v0
2881#CHECK: error: instruction requires: vector-enhancements-1
2882#CHECK: wfkhdbs	%v0, %v0, %v0
2883#CHECK: error: instruction requires: vector-enhancements-1
2884#CHECK: wfkhsb	%v0, %v0, %v0
2885#CHECK: error: instruction requires: vector-enhancements-1
2886#CHECK: wfkhsbs	%v0, %v0, %v0
2887#CHECK: error: instruction requires: vector-enhancements-1
2888#CHECK: wfkhxb	%v0, %v0, %v0
2889#CHECK: error: instruction requires: vector-enhancements-1
2890#CHECK: wfkhxbs	%v0, %v0, %v0
2891
2892	wfkhdb	%v0, %v0, %v0
2893	wfkhdbs	%v0, %v0, %v0
2894	wfkhsb	%v0, %v0, %v0
2895	wfkhsbs	%v0, %v0, %v0
2896	wfkhxb	%v0, %v0, %v0
2897	wfkhxbs	%v0, %v0, %v0
2898
2899#CHECK: error: instruction requires: vector-enhancements-1
2900#CHECK: wfkhedb	%v0, %v0, %v0
2901#CHECK: error: instruction requires: vector-enhancements-1
2902#CHECK: wfkhedbs %v0, %v0, %v0
2903#CHECK: error: instruction requires: vector-enhancements-1
2904#CHECK: wfkhesb	%v0, %v0, %v0
2905#CHECK: error: instruction requires: vector-enhancements-1
2906#CHECK: wfkhesbs %v0, %v0, %v0
2907#CHECK: error: instruction requires: vector-enhancements-1
2908#CHECK: wfkhexb	%v0, %v0, %v0
2909#CHECK: error: instruction requires: vector-enhancements-1
2910#CHECK: wfkhexbs %v0, %v0, %v0
2911
2912	wfkhedb	%v0, %v0, %v0
2913	wfkhedbs %v0, %v0, %v0
2914	wfkhesb	%v0, %v0, %v0
2915	wfkhesbs %v0, %v0, %v0
2916	wfkhexb	%v0, %v0, %v0
2917	wfkhexbs %v0, %v0, %v0
2918
2919#CHECK: error: instruction requires: vector-enhancements-1
2920#CHECK: wfpsosb	%v0, %v0, 0
2921#CHECK: error: instruction requires: vector-enhancements-1
2922#CHECK: wfpsoxb	%v0, %v0, 0
2923#CHECK: error: instruction requires: vector-enhancements-1
2924#CHECK: wflcsb	%v0, %v0
2925#CHECK: error: instruction requires: vector-enhancements-1
2926#CHECK: wflcxb	%v0, %v0
2927#CHECK: error: instruction requires: vector-enhancements-1
2928#CHECK: wflnsb	%v0, %v0
2929#CHECK: error: instruction requires: vector-enhancements-1
2930#CHECK: wflnxb	%v0, %v0
2931#CHECK: error: instruction requires: vector-enhancements-1
2932#CHECK: wflpsb	%v0, %v0
2933#CHECK: error: instruction requires: vector-enhancements-1
2934#CHECK: wflpxb	%v0, %v0
2935
2936	wfpsosb	%v0, %v0, 0
2937	wfpsoxb	%v0, %v0, 0
2938	wflcsb	%v0, %v0
2939	wflcxb	%v0, %v0
2940	wflnsb	%v0, %v0
2941	wflnxb	%v0, %v0
2942	wflpsb	%v0, %v0
2943	wflpxb	%v0, %v0
2944
2945#CHECK: error: instruction requires: vector-enhancements-1
2946#CHECK: wflls	%v0, %v0
2947#CHECK: error: instruction requires: vector-enhancements-1
2948#CHECK: wflld	%v0, %v0
2949
2950	wflls	%v0, %v0
2951	wflld	%v0, %v0
2952
2953#CHECK: error: instruction requires: vector-enhancements-1
2954#CHECK: wflrd	%v0, %v0, 0, 0
2955#CHECK: error: instruction requires: vector-enhancements-1
2956#CHECK: wflrx	%v0, %v0, 0, 0
2957
2958	wflrd	%v0, %v0, 0, 0
2959	wflrx	%v0, %v0, 0, 0
2960
2961#CHECK: error: instruction requires: vector-enhancements-1
2962#CHECK: wfmaxdb	%v0, %v0, %v0, 0
2963#CHECK: error: instruction requires: vector-enhancements-1
2964#CHECK: wfmaxsb	%v0, %v0, %v0, 0
2965#CHECK: error: instruction requires: vector-enhancements-1
2966#CHECK: wfmaxxb	%v0, %v0, %v0, 0
2967
2968	wfmaxdb	%v0, %v0, %v0, 0
2969	wfmaxsb	%v0, %v0, %v0, 0
2970	wfmaxxb	%v0, %v0, %v0, 0
2971
2972#CHECK: error: instruction requires: vector-enhancements-1
2973#CHECK: wfmindb	%v0, %v0, %v0, 0
2974#CHECK: error: instruction requires: vector-enhancements-1
2975#CHECK: wfminsb	%v0, %v0, %v0, 0
2976#CHECK: error: instruction requires: vector-enhancements-1
2977#CHECK: wfminxb	%v0, %v0, %v0, 0
2978
2979	wfmindb	%v0, %v0, %v0, 0
2980	wfminsb	%v0, %v0, %v0, 0
2981	wfminxb	%v0, %v0, %v0, 0
2982
2983#CHECK: error: instruction requires: vector-enhancements-1
2984#CHECK: wfmasb	%v0, %v0, %v0, %v0
2985#CHECK: error: instruction requires: vector-enhancements-1
2986#CHECK: wfmaxb	%v0, %v0, %v0, %v0
2987
2988	wfmasb	%v0, %v0, %v0, %v0
2989	wfmaxb	%v0, %v0, %v0, %v0
2990
2991#CHECK: error: instruction requires: vector-enhancements-1
2992#CHECK: wfmsb	%v0, %v0, %v0
2993#CHECK: error: instruction requires: vector-enhancements-1
2994#CHECK: wfmxb	%v0, %v0, %v0
2995
2996	wfmsb	%v0, %v0, %v0
2997	wfmxb	%v0, %v0, %v0
2998
2999#CHECK: error: instruction requires: vector-enhancements-1
3000#CHECK: wfmssb	%v0, %v0, %v0, %v0
3001#CHECK: error: instruction requires: vector-enhancements-1
3002#CHECK: wfmsxb	%v0, %v0, %v0, %v0
3003
3004	wfmssb	%v0, %v0, %v0, %v0
3005	wfmsxb	%v0, %v0, %v0, %v0
3006
3007#CHECK: error: instruction requires: vector-enhancements-1
3008#CHECK: wfnmadb	%v0, %v0, %v0, %v0
3009#CHECK: error: instruction requires: vector-enhancements-1
3010#CHECK: wfnmasb	%v0, %v0, %v0, %v0
3011#CHECK: error: instruction requires: vector-enhancements-1
3012#CHECK: wfnmaxb	%v0, %v0, %v0, %v0
3013
3014	wfnmadb	%v0, %v0, %v0, %v0
3015	wfnmasb	%v0, %v0, %v0, %v0
3016	wfnmaxb	%v0, %v0, %v0, %v0
3017
3018#CHECK: error: instruction requires: vector-enhancements-1
3019#CHECK: wfnmsdb	%v0, %v0, %v0, %v0
3020#CHECK: error: instruction requires: vector-enhancements-1
3021#CHECK: wfnmssb	%v0, %v0, %v0, %v0
3022#CHECK: error: instruction requires: vector-enhancements-1
3023#CHECK: wfnmsxb	%v0, %v0, %v0, %v0
3024
3025	wfnmsdb	%v0, %v0, %v0, %v0
3026	wfnmssb	%v0, %v0, %v0, %v0
3027	wfnmsxb	%v0, %v0, %v0, %v0
3028
3029#CHECK: error: instruction requires: vector-enhancements-1
3030#CHECK: wfssb	%v0, %v0, %v0
3031#CHECK: error: instruction requires: vector-enhancements-1
3032#CHECK: wfsxb	%v0, %v0, %v0
3033
3034	wfssb	%v0, %v0, %v0
3035	wfsxb	%v0, %v0, %v0
3036
3037#CHECK: error: instruction requires: vector-enhancements-1
3038#CHECK: wfsqsb	%v0, %v0
3039#CHECK: error: instruction requires: vector-enhancements-1
3040#CHECK: wfsqxb	%v0, %v0
3041
3042	wfsqsb	%v0, %v0
3043	wfsqxb	%v0, %v0
3044
3045#CHECK: error: invalid operand
3046#CHECK: wftcidb	%v0, %v0, -1
3047#CHECK: error: invalid operand
3048#CHECK: wftcidb	%v0, %v0, 4096
3049
3050	wftcidb	%v0, %v0, -1
3051	wftcidb	%v0, %v0, 4096
3052
3053#CHECK: error: instruction requires: vector-enhancements-1
3054#CHECK: wftcisb	%v0, %v0, 0
3055#CHECK: error: instruction requires: vector-enhancements-1
3056#CHECK: wftcixb	%v0, %v0, 0
3057
3058	wftcisb	%v0, %v0, 0
3059	wftcixb	%v0, %v0, 0
3060
3061#CHECK: error: invalid operand
3062#CHECK: wledb	%v0, %v0, 0, -1
3063#CHECK: error: invalid operand
3064#CHECK: wledb	%v0, %v0, 0, 16
3065#CHECK: error: invalid operand
3066#CHECK: wledb	%v0, %v0, -1, 0
3067#CHECK: error: invalid operand
3068#CHECK: wledb	%v0, %v0, 16, 0
3069
3070	wledb	%v0, %v0, 0, -1
3071	wledb	%v0, %v0, 0, 16
3072	wledb	%v0, %v0, -1, 0
3073	wledb	%v0, %v0, 16, 0
3074
3075