2 # RUN: not llvm-mc -triple s390x-linux-gnu -mcpu=z13 < %s 2> %t
3 # RUN: FileCheck < %t %s
5 #CHECK: error: invalid operand
6 #CHECK: lcbb %r0, 0, -1
7 #CHECK: error: invalid operand
8 #CHECK: lcbb %r0, 0, 16
9 #CHECK: error: invalid operand
10 #CHECK: lcbb %r0, -1, 0
11 #CHECK: error: invalid operand
12 #CHECK: lcbb %r0, 4096, 0
13 #CHECK: error: invalid use of vector addressing
14 #CHECK: lcbb %r0, 0(%v1,%r2), 0
20 lcbb %r0, 0(%v1,%r2), 0
22 #CHECK: error: invalid operand
23 #CHECK: vcdgb %v0, %v0, 0, -1
24 #CHECK: error: invalid operand
25 #CHECK: vcdgb %v0, %v0, 0, 16
26 #CHECK: error: invalid operand
27 #CHECK: vcdgb %v0, %v0, -1, 0
28 #CHECK: error: invalid operand
29 #CHECK: vcdgb %v0, %v0, 16, 0
36 #CHECK: error: invalid operand
37 #CHECK: vcdlgb %v0, %v0, 0, -1
38 #CHECK: error: invalid operand
39 #CHECK: vcdlgb %v0, %v0, 0, 16
40 #CHECK: error: invalid operand
41 #CHECK: vcdlgb %v0, %v0, -1, 0
42 #CHECK: error: invalid operand
43 #CHECK: vcdlgb %v0, %v0, 16, 0
45 vcdlgb %v0, %v0, 0, -1
46 vcdlgb %v0, %v0, 0, 16
47 vcdlgb %v0, %v0, -1, 0
48 vcdlgb %v0, %v0, 16, 0
50 #CHECK: error: invalid operand
51 #CHECK: vcgdb %v0, %v0, 0, -1
52 #CHECK: error: invalid operand
53 #CHECK: vcgdb %v0, %v0, 0, 16
54 #CHECK: error: invalid operand
55 #CHECK: vcgdb %v0, %v0, -1, 0
56 #CHECK: error: invalid operand
57 #CHECK: vcgdb %v0, %v0, 16, 0
64 #CHECK: error: invalid operand
65 #CHECK: vclgdb %v0, %v0, 0, -1
66 #CHECK: error: invalid operand
67 #CHECK: vclgdb %v0, %v0, 0, 16
68 #CHECK: error: invalid operand
69 #CHECK: vclgdb %v0, %v0, -1, 0
70 #CHECK: error: invalid operand
71 #CHECK: vclgdb %v0, %v0, 16, 0
73 vclgdb %v0, %v0, 0, -1
74 vclgdb %v0, %v0, 0, 16
75 vclgdb %v0, %v0, -1, 0
76 vclgdb %v0, %v0, 16, 0
78 #CHECK: error: invalid operand
79 #CHECK: verimb %v0, %v0, %v0, -1
80 #CHECK: error: invalid operand
81 #CHECK: verimb %v0, %v0, %v0, 256
83 verimb %v0, %v0, %v0, -1
84 verimb %v0, %v0, %v0, 256
86 #CHECK: error: invalid operand
87 #CHECK: verimf %v0, %v0, %v0, -1
88 #CHECK: error: invalid operand
89 #CHECK: verimf %v0, %v0, %v0, 256
91 verimf %v0, %v0, %v0, -1
92 verimf %v0, %v0, %v0, 256
94 #CHECK: error: invalid operand
95 #CHECK: verimg %v0, %v0, %v0, -1
96 #CHECK: error: invalid operand
97 #CHECK: verimg %v0, %v0, %v0, 256
99 verimg %v0, %v0, %v0, -1
100 verimg %v0, %v0, %v0, 256
102 #CHECK: error: invalid operand
103 #CHECK: verimh %v0, %v0, %v0, -1
104 #CHECK: error: invalid operand
105 #CHECK: verimh %v0, %v0, %v0, 256
107 verimh %v0, %v0, %v0, -1
108 verimh %v0, %v0, %v0, 256
110 #CHECK: error: invalid operand
111 #CHECK: verllb %v0, %v0, -1
112 #CHECK: error: invalid operand
113 #CHECK: verllb %v0, %v0, 4096
116 verllb %v0, %v0, 4096
118 #CHECK: error: invalid operand
119 #CHECK: verllf %v0, %v0, -1
120 #CHECK: error: invalid operand
121 #CHECK: verllf %v0, %v0, 4096
124 verllf %v0, %v0, 4096
126 #CHECK: error: invalid operand
127 #CHECK: verllg %v0, %v0, -1
128 #CHECK: error: invalid operand
129 #CHECK: verllg %v0, %v0, 4096
132 verllg %v0, %v0, 4096
134 #CHECK: error: invalid operand
135 #CHECK: verllh %v0, %v0, -1
136 #CHECK: error: invalid operand
137 #CHECK: verllh %v0, %v0, 4096
140 verllh %v0, %v0, 4096
142 #CHECK: error: invalid operand
143 #CHECK: veslb %v0, %v0, -1
144 #CHECK: error: invalid operand
145 #CHECK: veslb %v0, %v0, 4096
150 #CHECK: error: invalid operand
151 #CHECK: veslf %v0, %v0, -1
152 #CHECK: error: invalid operand
153 #CHECK: veslf %v0, %v0, 4096
158 #CHECK: error: invalid operand
159 #CHECK: veslg %v0, %v0, -1
160 #CHECK: error: invalid operand
161 #CHECK: veslg %v0, %v0, 4096
166 #CHECK: error: invalid operand
167 #CHECK: veslh %v0, %v0, -1
168 #CHECK: error: invalid operand
169 #CHECK: veslh %v0, %v0, 4096
174 #CHECK: error: invalid operand
175 #CHECK: vesrab %v0, %v0, -1
176 #CHECK: error: invalid operand
177 #CHECK: vesrab %v0, %v0, 4096
180 vesrab %v0, %v0, 4096
182 #CHECK: error: invalid operand
183 #CHECK: vesraf %v0, %v0, -1
184 #CHECK: error: invalid operand
185 #CHECK: vesraf %v0, %v0, 4096
188 vesraf %v0, %v0, 4096
190 #CHECK: error: invalid operand
191 #CHECK: vesrag %v0, %v0, -1
192 #CHECK: error: invalid operand
193 #CHECK: vesrag %v0, %v0, 4096
196 vesrag %v0, %v0, 4096
198 #CHECK: error: invalid operand
199 #CHECK: vesrah %v0, %v0, -1
200 #CHECK: error: invalid operand
201 #CHECK: vesrah %v0, %v0, 4096
204 vesrah %v0, %v0, 4096
206 #CHECK: error: invalid operand
207 #CHECK: vesrlb %v0, %v0, -1
208 #CHECK: error: invalid operand
209 #CHECK: vesrlb %v0, %v0, 4096
212 vesrlb %v0, %v0, 4096
214 #CHECK: error: invalid operand
215 #CHECK: vesrlf %v0, %v0, -1
216 #CHECK: error: invalid operand
217 #CHECK: vesrlf %v0, %v0, 4096
220 vesrlf %v0, %v0, 4096
222 #CHECK: error: invalid operand
223 #CHECK: vesrlg %v0, %v0, -1
224 #CHECK: error: invalid operand
225 #CHECK: vesrlg %v0, %v0, 4096
228 vesrlg %v0, %v0, 4096
230 #CHECK: error: invalid operand
231 #CHECK: vesrlh %v0, %v0, -1
232 #CHECK: error: invalid operand
233 #CHECK: vesrlh %v0, %v0, 4096
236 vesrlh %v0, %v0, 4096
238 #CHECK: error: invalid operand
239 #CHECK: vfaeb %v0, %v0, %v0, -1
240 #CHECK: error: invalid operand
241 #CHECK: vfaeb %v0, %v0, %v0, 16
242 #CHECK: error: too few operands
243 #CHECK: vfaeb %v0, %v0
244 #CHECK: error: invalid operand
245 #CHECK: vfaeb %v0, %v0, %v0, 0, 0
247 vfaeb %v0, %v0, %v0, -1
248 vfaeb %v0, %v0, %v0, 16
250 vfaeb %v0, %v0, %v0, 0, 0
252 #CHECK: error: invalid operand
253 #CHECK: vfaebs %v0, %v0, %v0, -1
254 #CHECK: error: invalid operand
255 #CHECK: vfaebs %v0, %v0, %v0, 16
256 #CHECK: error: too few operands
257 #CHECK: vfaebs %v0, %v0
258 #CHECK: error: invalid operand
259 #CHECK: vfaebs %v0, %v0, %v0, 0, 0
261 vfaebs %v0, %v0, %v0, -1
262 vfaebs %v0, %v0, %v0, 16
264 vfaebs %v0, %v0, %v0, 0, 0
266 #CHECK: error: invalid operand
267 #CHECK: vfaef %v0, %v0, %v0, -1
268 #CHECK: error: invalid operand
269 #CHECK: vfaef %v0, %v0, %v0, 16
270 #CHECK: error: too few operands
271 #CHECK: vfaef %v0, %v0
272 #CHECK: error: invalid operand
273 #CHECK: vfaef %v0, %v0, %v0, 0, 0
275 vfaef %v0, %v0, %v0, -1
276 vfaef %v0, %v0, %v0, 16
278 vfaef %v0, %v0, %v0, 0, 0
280 #CHECK: error: invalid operand
281 #CHECK: vfaeh %v0, %v0, %v0, -1
282 #CHECK: error: invalid operand
283 #CHECK: vfaeh %v0, %v0, %v0, 16
284 #CHECK: error: too few operands
285 #CHECK: vfaeh %v0, %v0
286 #CHECK: error: invalid operand
287 #CHECK: vfaeh %v0, %v0, %v0, 0, 0
289 vfaeh %v0, %v0, %v0, -1
290 vfaeh %v0, %v0, %v0, 16
292 vfaeh %v0, %v0, %v0, 0, 0
294 #CHECK: error: invalid operand
295 #CHECK: vfaezh %v0, %v0, %v0, -1
296 #CHECK: error: invalid operand
297 #CHECK: vfaezh %v0, %v0, %v0, 16
298 #CHECK: error: too few operands
299 #CHECK: vfaezh %v0, %v0
300 #CHECK: error: invalid operand
301 #CHECK: vfaezh %v0, %v0, %v0, 0, 0
303 vfaezh %v0, %v0, %v0, -1
304 vfaezh %v0, %v0, %v0, 16
306 vfaezh %v0, %v0, %v0, 0, 0
308 #CHECK: error: invalid operand
309 #CHECK: vfaezfs %v0, %v0, %v0, -1
310 #CHECK: error: invalid operand
311 #CHECK: vfaezfs %v0, %v0, %v0, 16
312 #CHECK: error: too few operands
313 #CHECK: vfaezfs %v0, %v0
314 #CHECK: error: invalid operand
315 #CHECK: vfaezfs %v0, %v0, %v0, 0, 0
317 vfaezfs %v0, %v0, %v0, -1
318 vfaezfs %v0, %v0, %v0, 16
320 vfaezfs %v0, %v0, %v0, 0, 0
322 #CHECK: error: invalid operand
323 #CHECK: vfidb %v0, %v0, 0, -1
324 #CHECK: error: invalid operand
325 #CHECK: vfidb %v0, %v0, 0, 16
326 #CHECK: error: invalid operand
327 #CHECK: vfidb %v0, %v0, -1, 0
328 #CHECK: error: invalid operand
329 #CHECK: vfidb %v0, %v0, 16, 0
331 vfidb %v0, %v0, 0, -1
332 vfidb %v0, %v0, 0, 16
333 vfidb %v0, %v0, -1, 0
334 vfidb %v0, %v0, 16, 0
336 #CHECK: error: invalid operand
337 #CHECK: vftcidb %v0, %v0, -1
338 #CHECK: error: invalid operand
339 #CHECK: vftcidb %v0, %v0, 4096
342 vftcidb %v0, %v0, 4096
344 #CHECK: error: invalid operand
346 #CHECK: error: invalid operand
347 #CHECK: vgbm %v0, 0x10000
352 #CHECK: error: vector index required
353 #CHECK: vgef %v0, 0(%r1), 0
354 #CHECK: error: vector index required
355 #CHECK: vgef %v0, 0(%r2,%r1), 0
356 #CHECK: error: invalid operand
357 #CHECK: vgef %v0, 0(%v0,%r1), -1
358 #CHECK: error: invalid operand
359 #CHECK: vgef %v0, 0(%v0,%r1), 4
360 #CHECK: error: invalid operand
361 #CHECK: vgef %v0, -1(%v0,%r1), 0
362 #CHECK: error: invalid operand
363 #CHECK: vgef %v0, 4096(%v0,%r1), 0
366 vgef %v0, 0(%r2,%r1), 0
367 vgef %v0, 0(%v0,%r1), -1
368 vgef %v0, 0(%v0,%r1), 4
369 vgef %v0, -1(%v0,%r1), 0
370 vgef %v0, 4096(%v0,%r1), 0
372 #CHECK: error: vector index required
373 #CHECK: vgeg %v0, 0(%r1), 0
374 #CHECK: error: vector index required
375 #CHECK: vgeg %v0, 0(%r2,%r1), 0
376 #CHECK: error: invalid operand
377 #CHECK: vgeg %v0, 0(%v0,%r1), -1
378 #CHECK: error: invalid operand
379 #CHECK: vgeg %v0, 0(%v0,%r1), 2
380 #CHECK: error: invalid operand
381 #CHECK: vgeg %v0, -1(%v0,%r1), 0
382 #CHECK: error: invalid operand
383 #CHECK: vgeg %v0, 4096(%v0,%r1), 0
386 vgeg %v0, 0(%r2,%r1), 0
387 vgeg %v0, 0(%v0,%r1), -1
388 vgeg %v0, 0(%v0,%r1), 2
389 vgeg %v0, -1(%v0,%r1), 0
390 vgeg %v0, 4096(%v0,%r1), 0
392 #CHECK: error: invalid operand
393 #CHECK: vgmb %v0, 0, -1
394 #CHECK: error: invalid operand
395 #CHECK: vgmb %v0, 0, -1
396 #CHECK: error: invalid operand
397 #CHECK: vgmb %v0, -1, 0
398 #CHECK: error: invalid operand
399 #CHECK: vgmb %v0, 256, 0
406 #CHECK: error: invalid operand
407 #CHECK: vgmf %v0, 0, -1
408 #CHECK: error: invalid operand
409 #CHECK: vgmf %v0, 0, -1
410 #CHECK: error: invalid operand
411 #CHECK: vgmf %v0, -1, 0
412 #CHECK: error: invalid operand
413 #CHECK: vgmf %v0, 256, 0
420 #CHECK: error: invalid operand
421 #CHECK: vgmg %v0, 0, -1
422 #CHECK: error: invalid operand
423 #CHECK: vgmg %v0, 0, -1
424 #CHECK: error: invalid operand
425 #CHECK: vgmg %v0, -1, 0
426 #CHECK: error: invalid operand
427 #CHECK: vgmg %v0, 256, 0
434 #CHECK: error: invalid operand
435 #CHECK: vgmh %v0, 0, -1
436 #CHECK: error: invalid operand
437 #CHECK: vgmh %v0, 0, -1
438 #CHECK: error: invalid operand
439 #CHECK: vgmh %v0, -1, 0
440 #CHECK: error: invalid operand
441 #CHECK: vgmh %v0, 256, 0
448 #CHECK: error: invalid operand
450 #CHECK: error: invalid operand
452 #CHECK: error: invalid use of vector addressing
453 #CHECK: vl %v0, 0(%v1,%r2)
459 #CHECK: error: invalid operand
460 #CHECK: vlbb %v0, 0, -1
461 #CHECK: error: invalid operand
462 #CHECK: vlbb %v0, 0, 16
463 #CHECK: error: invalid operand
464 #CHECK: vlbb %v0, -1, 0
465 #CHECK: error: invalid operand
466 #CHECK: vlbb %v0, 4096, 0
467 #CHECK: error: invalid use of vector addressing
468 #CHECK: vlbb %v0, 0(%v1,%r2), 0
474 vlbb %v0, 0(%v1,%r2), 0
476 #CHECK: error: invalid operand
477 #CHECK: vleb %v0, 0, -1
478 #CHECK: error: invalid operand
479 #CHECK: vleb %v0, 0, 16
480 #CHECK: error: invalid operand
481 #CHECK: vleb %v0, -1, 0
482 #CHECK: error: invalid operand
483 #CHECK: vleb %v0, 4096, 0
484 #CHECK: error: invalid use of vector addressing
485 #CHECK: vleb %v0, 0(%v1,%r2), 0
491 vleb %v0, 0(%v1,%r2), 0
493 #CHECK: error: invalid operand
494 #CHECK: vledb %v0, %v0, 0, -1
495 #CHECK: error: invalid operand
496 #CHECK: vledb %v0, %v0, 0, 16
497 #CHECK: error: invalid operand
498 #CHECK: vledb %v0, %v0, -1, 0
499 #CHECK: error: invalid operand
500 #CHECK: vledb %v0, %v0, 16, 0
502 vledb %v0, %v0, 0, -1
503 vledb %v0, %v0, 0, 16
504 vledb %v0, %v0, -1, 0
505 vledb %v0, %v0, 16, 0
507 #CHECK: error: invalid operand
508 #CHECK: vlef %v0, 0, -1
509 #CHECK: error: invalid operand
510 #CHECK: vlef %v0, 0, 4
511 #CHECK: error: invalid operand
512 #CHECK: vlef %v0, -1, 0
513 #CHECK: error: invalid operand
514 #CHECK: vlef %v0, 4096, 0
515 #CHECK: error: invalid use of vector addressing
516 #CHECK: vlef %v0, 0(%v1,%r2), 0
522 vlef %v0, 0(%v1,%r2), 0
524 #CHECK: error: invalid operand
525 #CHECK: vleg %v0, 0, -1
526 #CHECK: error: invalid operand
527 #CHECK: vleg %v0, 0, 2
528 #CHECK: error: invalid operand
529 #CHECK: vleg %v0, -1, 0
530 #CHECK: error: invalid operand
531 #CHECK: vleg %v0, 4096, 0
532 #CHECK: error: invalid use of vector addressing
533 #CHECK: vleg %v0, 0(%v1,%r2), 0
539 vleg %v0, 0(%v1,%r2), 0
541 #CHECK: error: invalid operand
542 #CHECK: vleh %v0, 0, -1
543 #CHECK: error: invalid operand
544 #CHECK: vleh %v0, 0, 8
545 #CHECK: error: invalid operand
546 #CHECK: vleh %v0, -1, 0
547 #CHECK: error: invalid operand
548 #CHECK: vleh %v0, 4096, 0
549 #CHECK: error: invalid use of vector addressing
550 #CHECK: vleh %v0, 0(%v1,%r2), 0
556 vleh %v0, 0(%v1,%r2), 0
558 #CHECK: error: invalid operand
559 #CHECK: vleib %v0, 0, -1
560 #CHECK: error: invalid operand
561 #CHECK: vleib %v0, 0, 16
562 #CHECK: error: invalid operand
563 #CHECK: vleib %v0, -32769, 0
564 #CHECK: error: invalid operand
565 #CHECK: vleib %v0, 32768, 0
572 #CHECK: error: invalid operand
573 #CHECK: vleif %v0, 0, -1
574 #CHECK: error: invalid operand
575 #CHECK: vleif %v0, 0, 4
576 #CHECK: error: invalid operand
577 #CHECK: vleif %v0, -32769, 0
578 #CHECK: error: invalid operand
579 #CHECK: vleif %v0, 32768, 0
586 #CHECK: error: invalid operand
587 #CHECK: vleig %v0, 0, -1
588 #CHECK: error: invalid operand
589 #CHECK: vleig %v0, 0, 2
590 #CHECK: error: invalid operand
591 #CHECK: vleig %v0, -32769, 0
592 #CHECK: error: invalid operand
593 #CHECK: vleig %v0, 32768, 0
600 #CHECK: error: invalid operand
601 #CHECK: vleih %v0, 0, -1
602 #CHECK: error: invalid operand
603 #CHECK: vleih %v0, 0, 8
604 #CHECK: error: invalid operand
605 #CHECK: vleih %v0, -32769, 0
606 #CHECK: error: invalid operand
607 #CHECK: vleih %v0, 32768, 0
614 #CHECK: error: invalid operand
615 #CHECK: vlgvb %r0, %v0, -1
616 #CHECK: error: invalid operand
617 #CHECK: vlgvb %r0, %v0, 4096
618 #CHECK: error: %r0 used in an address
619 #CHECK: vlgvb %r0, %v0, 0(%r0)
623 vlgvb %r0, %v0, 0(%r0)
625 #CHECK: error: invalid operand
626 #CHECK: vlgvf %r0, %v0, -1
627 #CHECK: error: invalid operand
628 #CHECK: vlgvf %r0, %v0, 4096
629 #CHECK: error: %r0 used in an address
630 #CHECK: vlgvf %r0, %v0, 0(%r0)
634 vlgvf %r0, %v0, 0(%r0)
636 #CHECK: error: invalid operand
637 #CHECK: vlgvg %r0, %v0, -1
638 #CHECK: error: invalid operand
639 #CHECK: vlgvg %r0, %v0, 4096
640 #CHECK: error: %r0 used in an address
641 #CHECK: vlgvg %r0, %v0, 0(%r0)
645 vlgvg %r0, %v0, 0(%r0)
647 #CHECK: error: invalid operand
648 #CHECK: vlgvh %r0, %v0, -1
649 #CHECK: error: invalid operand
650 #CHECK: vlgvh %r0, %v0, 4096
651 #CHECK: error: %r0 used in an address
652 #CHECK: vlgvh %r0, %v0, 0(%r0)
656 vlgvh %r0, %v0, 0(%r0)
658 #CHECK: error: invalid operand
659 #CHECK: vll %v0, %r0, -1
660 #CHECK: error: invalid operand
661 #CHECK: vll %v0, %r0, 4096
662 #CHECK: error: %r0 used in an address
663 #CHECK: vll %v0, %r0, 0(%r0)
669 #CHECK: error: invalid operand
670 #CHECK: vllezb %v0, -1
671 #CHECK: error: invalid operand
672 #CHECK: vllezb %v0, 4096
673 #CHECK: error: invalid use of vector addressing
674 #CHECK: vllezb %v0, 0(%v1,%r2)
678 vllezb %v0, 0(%v1,%r2)
680 #CHECK: error: invalid operand
681 #CHECK: vllezf %v0, -1
682 #CHECK: error: invalid operand
683 #CHECK: vllezf %v0, 4096
684 #CHECK: error: invalid use of vector addressing
685 #CHECK: vllezf %v0, 0(%v1,%r2)
689 vllezf %v0, 0(%v1,%r2)
691 #CHECK: error: invalid operand
692 #CHECK: vllezg %v0, -1
693 #CHECK: error: invalid operand
694 #CHECK: vllezg %v0, 4096
695 #CHECK: error: invalid use of vector addressing
696 #CHECK: vllezg %v0, 0(%v1,%r2)
700 vllezg %v0, 0(%v1,%r2)
702 #CHECK: error: invalid operand
703 #CHECK: vllezh %v0, -1
704 #CHECK: error: invalid operand
705 #CHECK: vllezh %v0, 4096
706 #CHECK: error: invalid use of vector addressing
707 #CHECK: vllezh %v0, 0(%v1,%r2)
711 vllezh %v0, 0(%v1,%r2)
713 #CHECK: error: invalid operand
714 #CHECK: vlm %v0, %v0, -1
715 #CHECK: error: invalid operand
716 #CHECK: vlm %v0, %v0, 4096
721 #CHECK: error: invalid operand
722 #CHECK: vlrepb %v0, -1
723 #CHECK: error: invalid operand
724 #CHECK: vlrepb %v0, 4096
725 #CHECK: error: invalid use of vector addressing
726 #CHECK: vlrepb %v0, 0(%v1,%r2)
730 vlrepb %v0, 0(%v1,%r2)
732 #CHECK: error: invalid operand
733 #CHECK: vlrepf %v0, -1
734 #CHECK: error: invalid operand
735 #CHECK: vlrepf %v0, 4096
736 #CHECK: error: invalid use of vector addressing
737 #CHECK: vlrepf %v0, 0(%v1,%r2)
741 vlrepf %v0, 0(%v1,%r2)
743 #CHECK: error: invalid operand
744 #CHECK: vlrepg %v0, -1
745 #CHECK: error: invalid operand
746 #CHECK: vlrepg %v0, 4096
747 #CHECK: error: invalid use of vector addressing
748 #CHECK: vlrepg %v0, 0(%v1,%r2)
752 vlrepg %v0, 0(%v1,%r2)
754 #CHECK: error: invalid operand
755 #CHECK: vlreph %v0, -1
756 #CHECK: error: invalid operand
757 #CHECK: vlreph %v0, 4096
758 #CHECK: error: invalid use of vector addressing
759 #CHECK: vlreph %v0, 0(%v1,%r2)
763 vlreph %v0, 0(%v1,%r2)
765 #CHECK: error: invalid operand
766 #CHECK: vlvgb %v0, %r0, -1
767 #CHECK: error: invalid operand
768 #CHECK: vlvgb %v0, %r0, 4096
769 #CHECK: error: %r0 used in an address
770 #CHECK: vlvgb %v0, %r0, 0(%r0)
774 vlvgb %v0, %r0, 0(%r0)
776 #CHECK: error: invalid operand
777 #CHECK: vlvgf %v0, %r0, -1
778 #CHECK: error: invalid operand
779 #CHECK: vlvgf %v0, %r0, 4096
780 #CHECK: error: %r0 used in an address
781 #CHECK: vlvgf %v0, %r0, 0(%r0)
785 vlvgf %v0, %r0, 0(%r0)
787 #CHECK: error: invalid operand
788 #CHECK: vlvgg %v0, %r0, -1
789 #CHECK: error: invalid operand
790 #CHECK: vlvgg %v0, %r0, 4096
791 #CHECK: error: %r0 used in an address
792 #CHECK: vlvgg %v0, %r0, 0(%r0)
796 vlvgg %v0, %r0, 0(%r0)
798 #CHECK: error: invalid operand
799 #CHECK: vlvgh %v0, %r0, -1
800 #CHECK: error: invalid operand
801 #CHECK: vlvgh %v0, %r0, 4096
802 #CHECK: error: %r0 used in an address
803 #CHECK: vlvgh %v0, %r0, 0(%r0)
807 vlvgh %v0, %r0, 0(%r0)
809 #CHECK: error: invalid operand
810 #CHECK: vpdi %v0, %v0, %v0, -1
811 #CHECK: error: invalid operand
812 #CHECK: vpdi %v0, %v0, %v0, 16
814 vpdi %v0, %v0, %v0, -1
815 vpdi %v0, %v0, %v0, 16
817 #CHECK: error: invalid operand
818 #CHECK: vrepb %v0, %v0, -1
819 #CHECK: error: invalid operand
820 #CHECK: vrepb %v0, %v0, 65536
823 vrepb %v0, %v0, 65536
825 #CHECK: error: invalid operand
826 #CHECK: vrepf %v0, %v0, -1
827 #CHECK: error: invalid operand
828 #CHECK: vrepf %v0, %v0, 65536
831 vrepf %v0, %v0, 65536
833 #CHECK: error: invalid operand
834 #CHECK: vrepg %v0, %v0, -1
835 #CHECK: error: invalid operand
836 #CHECK: vrepg %v0, %v0, 65536
839 vrepg %v0, %v0, 65536
841 #CHECK: error: invalid operand
842 #CHECK: vreph %v0, %v0, -1
843 #CHECK: error: invalid operand
844 #CHECK: vreph %v0, %v0, 65536
847 vreph %v0, %v0, 65536
849 #CHECK: error: invalid operand
850 #CHECK: vrepib %v0, -32769
851 #CHECK: error: invalid operand
852 #CHECK: vrepib %v0, 32768
857 #CHECK: error: invalid operand
858 #CHECK: vrepif %v0, -32769
859 #CHECK: error: invalid operand
860 #CHECK: vrepif %v0, 32768
865 #CHECK: error: invalid operand
866 #CHECK: vrepig %v0, -32769
867 #CHECK: error: invalid operand
868 #CHECK: vrepig %v0, 32768
873 #CHECK: error: invalid operand
874 #CHECK: vrepih %v0, -32769
875 #CHECK: error: invalid operand
876 #CHECK: vrepih %v0, 32768
881 #CHECK: error: vector index required
882 #CHECK: vscef %v0, 0(%r1), 0
883 #CHECK: error: vector index required
884 #CHECK: vscef %v0, 0(%r2,%r1), 0
885 #CHECK: error: invalid operand
886 #CHECK: vscef %v0, 0(%v0,%r1), -1
887 #CHECK: error: invalid operand
888 #CHECK: vscef %v0, 0(%v0,%r1), 4
889 #CHECK: error: invalid operand
890 #CHECK: vscef %v0, -1(%v0,%r1), 0
891 #CHECK: error: invalid operand
892 #CHECK: vscef %v0, 4096(%v0,%r1), 0
895 vscef %v0, 0(%r2,%r1), 0
896 vscef %v0, 0(%v0,%r1), -1
897 vscef %v0, 0(%v0,%r1), 4
898 vscef %v0, -1(%v0,%r1), 0
899 vscef %v0, 4096(%v0,%r1), 0
901 #CHECK: error: vector index required
902 #CHECK: vsceg %v0, 0(%r1), 0
903 #CHECK: error: vector index required
904 #CHECK: vsceg %v0, 0(%r2,%r1), 0
905 #CHECK: error: invalid operand
906 #CHECK: vsceg %v0, 0(%v0,%r1), -1
907 #CHECK: error: invalid operand
908 #CHECK: vsceg %v0, 0(%v0,%r1), 2
909 #CHECK: error: invalid operand
910 #CHECK: vsceg %v0, -1(%v0,%r1), 0
911 #CHECK: error: invalid operand
912 #CHECK: vsceg %v0, 4096(%v0,%r1), 0
915 vsceg %v0, 0(%r2,%r1), 0
916 vsceg %v0, 0(%v0,%r1), -1
917 vsceg %v0, 0(%v0,%r1), 2
918 vsceg %v0, -1(%v0,%r1), 0
919 vsceg %v0, 4096(%v0,%r1), 0
921 #CHECK: error: invalid operand
922 #CHECK: vsldb %v0, %v0, %v0, -1
923 #CHECK: error: invalid operand
924 #CHECK: vsldb %v0, %v0, %v0, 256
926 vsldb %v0, %v0, %v0, -1
927 vsldb %v0, %v0, %v0, 256
929 #CHECK: error: invalid operand
931 #CHECK: error: invalid operand
932 #CHECK: vst %v0, 4096
933 #CHECK: error: invalid use of vector addressing
934 #CHECK: vst %v0, 0(%v1,%r2)
940 #CHECK: error: invalid operand
941 #CHECK: vsteb %v0, 0, -1
942 #CHECK: error: invalid operand
943 #CHECK: vsteb %v0, 0, 16
944 #CHECK: error: invalid operand
945 #CHECK: vsteb %v0, -1, 0
946 #CHECK: error: invalid operand
947 #CHECK: vsteb %v0, 4096, 0
948 #CHECK: error: invalid use of vector addressing
949 #CHECK: vsteb %v0, 0(%v1,%r2), 0
955 vsteb %v0, 0(%v1,%r2), 0
957 #CHECK: error: invalid operand
958 #CHECK: vstef %v0, 0, -1
959 #CHECK: error: invalid operand
960 #CHECK: vstef %v0, 0, 4
961 #CHECK: error: invalid operand
962 #CHECK: vstef %v0, -1, 0
963 #CHECK: error: invalid operand
964 #CHECK: vstef %v0, 4096, 0
965 #CHECK: error: invalid use of vector addressing
966 #CHECK: vstef %v0, 0(%v1,%r2), 0
972 vstef %v0, 0(%v1,%r2), 0
974 #CHECK: error: invalid operand
975 #CHECK: vsteg %v0, 0, -1
976 #CHECK: error: invalid operand
977 #CHECK: vsteg %v0, 0, 2
978 #CHECK: error: invalid operand
979 #CHECK: vsteg %v0, -1, 0
980 #CHECK: error: invalid operand
981 #CHECK: vsteg %v0, 4096, 0
982 #CHECK: error: invalid use of vector addressing
983 #CHECK: vsteg %v0, 0(%v1,%r2), 0
989 vsteg %v0, 0(%v1,%r2), 0
991 #CHECK: error: invalid operand
992 #CHECK: vsteh %v0, 0, -1
993 #CHECK: error: invalid operand
994 #CHECK: vsteh %v0, 0, 8
995 #CHECK: error: invalid operand
996 #CHECK: vsteh %v0, -1, 0
997 #CHECK: error: invalid operand
998 #CHECK: vsteh %v0, 4096, 0
999 #CHECK: error: invalid use of vector addressing
1000 #CHECK: vsteh %v0, 0(%v1,%r2), 0
1006 vsteh %v0, 0(%v1,%r2), 0
1008 #CHECK: error: invalid operand
1009 #CHECK: vstl %v0, %r0, -1
1010 #CHECK: error: invalid operand
1011 #CHECK: vstl %v0, %r0, 4096
1012 #CHECK: error: %r0 used in an address
1013 #CHECK: vstl %v0, %r0, 0(%r0)
1017 vstl %v0, %r0, 0(%r0)
1019 #CHECK: error: invalid operand
1020 #CHECK: vstm %v0, %v0, -1
1021 #CHECK: error: invalid operand
1022 #CHECK: vstm %v0, %v0, 4096
1027 #CHECK: error: invalid operand
1028 #CHECK: vstrcb %v0, %v0, %v0, %v0, -1
1029 #CHECK: error: invalid operand
1030 #CHECK: vstrcb %v0, %v0, %v0, %v0, 16
1031 #CHECK: error: too few operands
1032 #CHECK: vstrcb %v0, %v0, %v0
1033 #CHECK: error: invalid operand
1034 #CHECK: vstrcb %v0, %v0, %v0, %v0, 0, 0
1036 vstrcb %v0, %v0, %v0, %v0, -1
1037 vstrcb %v0, %v0, %v0, %v0, 16
1038 vstrcb %v0, %v0, %v0
1039 vstrcb %v0, %v0, %v0, %v0, 0, 0
1041 #CHECK: error: invalid operand
1042 #CHECK: vstrcbs %v0, %v0, %v0, %v0, -1
1043 #CHECK: error: invalid operand
1044 #CHECK: vstrcbs %v0, %v0, %v0, %v0, 16
1045 #CHECK: error: too few operands
1046 #CHECK: vstrcbs %v0, %v0, %v0
1047 #CHECK: error: invalid operand
1048 #CHECK: vstrcbs %v0, %v0, %v0, %v0, 0, 0
1050 vstrcbs %v0, %v0, %v0, %v0, -1
1051 vstrcbs %v0, %v0, %v0, %v0, 16
1052 vstrcbs %v0, %v0, %v0
1053 vstrcbs %v0, %v0, %v0, %v0, 0, 0
1055 #CHECK: error: invalid operand
1056 #CHECK: vstrcf %v0, %v0, %v0, %v0, -1
1057 #CHECK: error: invalid operand
1058 #CHECK: vstrcf %v0, %v0, %v0, %v0, 16
1059 #CHECK: error: too few operands
1060 #CHECK: vstrcf %v0, %v0, %v0
1061 #CHECK: error: invalid operand
1062 #CHECK: vstrcf %v0, %v0, %v0, %v0, 0, 0
1064 vstrcf %v0, %v0, %v0, %v0, -1
1065 vstrcf %v0, %v0, %v0, %v0, 16
1066 vstrcf %v0, %v0, %v0
1067 vstrcf %v0, %v0, %v0, %v0, 0, 0
1069 #CHECK: error: invalid operand
1070 #CHECK: vstrch %v0, %v0, %v0, %v0, -1
1071 #CHECK: error: invalid operand
1072 #CHECK: vstrch %v0, %v0, %v0, %v0, 16
1073 #CHECK: error: too few operands
1074 #CHECK: vstrch %v0, %v0, %v0
1075 #CHECK: error: invalid operand
1076 #CHECK: vstrch %v0, %v0, %v0, %v0, 0, 0
1078 vstrch %v0, %v0, %v0, %v0, -1
1079 vstrch %v0, %v0, %v0, %v0, 16
1080 vstrch %v0, %v0, %v0
1081 vstrch %v0, %v0, %v0, %v0, 0, 0
1083 #CHECK: error: invalid operand
1084 #CHECK: vstrczh %v0, %v0, %v0, %v0, -1
1085 #CHECK: error: invalid operand
1086 #CHECK: vstrczh %v0, %v0, %v0, %v0, 16
1087 #CHECK: error: too few operands
1088 #CHECK: vstrczh %v0, %v0, %v0
1089 #CHECK: error: invalid operand
1090 #CHECK: vstrczh %v0, %v0, %v0, %v0, 0, 0
1092 vstrczh %v0, %v0, %v0, %v0, -1
1093 vstrczh %v0, %v0, %v0, %v0, 16
1094 vstrczh %v0, %v0, %v0
1095 vstrczh %v0, %v0, %v0, %v0, 0, 0
1097 #CHECK: error: invalid operand
1098 #CHECK: vstrczfs %v0, %v0, %v0, %v0, -1
1099 #CHECK: error: invalid operand
1100 #CHECK: vstrczfs %v0, %v0, %v0, %v0, 16
1101 #CHECK: error: too few operands
1102 #CHECK: vstrczfs %v0, %v0, %v0
1103 #CHECK: error: invalid operand
1104 #CHECK: vstrczfs %v0, %v0, %v0, %v0, 0, 0
1106 vstrczfs %v0, %v0, %v0, %v0, -1
1107 vstrczfs %v0, %v0, %v0, %v0, 16
1108 vstrczfs %v0, %v0, %v0
1109 vstrczfs %v0, %v0, %v0, %v0, 0, 0
1111 #CHECK: error: invalid operand
1112 #CHECK: wcdgb %v0, %v0, 0, -1
1113 #CHECK: error: invalid operand
1114 #CHECK: wcdgb %v0, %v0, 0, 16
1115 #CHECK: error: invalid operand
1116 #CHECK: wcdgb %v0, %v0, -1, 0
1117 #CHECK: error: invalid operand
1118 #CHECK: wcdgb %v0, %v0, 16, 0
1120 wcdgb %v0, %v0, 0, -1
1121 wcdgb %v0, %v0, 0, 16
1122 wcdgb %v0, %v0, -1, 0
1123 wcdgb %v0, %v0, 16, 0
1125 #CHECK: error: invalid operand
1126 #CHECK: wcdlgb %v0, %v0, 0, -1
1127 #CHECK: error: invalid operand
1128 #CHECK: wcdlgb %v0, %v0, 0, 16
1129 #CHECK: error: invalid operand
1130 #CHECK: wcdlgb %v0, %v0, -1, 0
1131 #CHECK: error: invalid operand
1132 #CHECK: wcdlgb %v0, %v0, 16, 0
1134 wcdlgb %v0, %v0, 0, -1
1135 wcdlgb %v0, %v0, 0, 16
1136 wcdlgb %v0, %v0, -1, 0
1137 wcdlgb %v0, %v0, 16, 0
1139 #CHECK: error: invalid operand
1140 #CHECK: wcgdb %v0, %v0, 0, -1
1141 #CHECK: error: invalid operand
1142 #CHECK: wcgdb %v0, %v0, 0, 16
1143 #CHECK: error: invalid operand
1144 #CHECK: wcgdb %v0, %v0, -1, 0
1145 #CHECK: error: invalid operand
1146 #CHECK: wcgdb %v0, %v0, 16, 0
1148 wcgdb %v0, %v0, 0, -1
1149 wcgdb %v0, %v0, 0, 16
1150 wcgdb %v0, %v0, -1, 0
1151 wcgdb %v0, %v0, 16, 0
1153 #CHECK: error: invalid operand
1154 #CHECK: wclgdb %v0, %v0, 0, -1
1155 #CHECK: error: invalid operand
1156 #CHECK: wclgdb %v0, %v0, 0, 16
1157 #CHECK: error: invalid operand
1158 #CHECK: wclgdb %v0, %v0, -1, 0
1159 #CHECK: error: invalid operand
1160 #CHECK: wclgdb %v0, %v0, 16, 0
1162 wclgdb %v0, %v0, 0, -1
1163 wclgdb %v0, %v0, 0, 16
1164 wclgdb %v0, %v0, -1, 0
1165 wclgdb %v0, %v0, 16, 0
1167 #CHECK: error: invalid operand
1168 #CHECK: wfidb %v0, %v0, 0, -1
1169 #CHECK: error: invalid operand
1170 #CHECK: wfidb %v0, %v0, 0, 16
1171 #CHECK: error: invalid operand
1172 #CHECK: wfidb %v0, %v0, -1, 0
1173 #CHECK: error: invalid operand
1174 #CHECK: wfidb %v0, %v0, 16, 0
1176 wfidb %v0, %v0, 0, -1
1177 wfidb %v0, %v0, 0, 16
1178 wfidb %v0, %v0, -1, 0
1179 wfidb %v0, %v0, 16, 0
1181 #CHECK: error: invalid operand
1182 #CHECK: wftcidb %v0, %v0, -1
1183 #CHECK: error: invalid operand
1184 #CHECK: wftcidb %v0, %v0, 4096
1186 wftcidb %v0, %v0, -1
1187 wftcidb %v0, %v0, 4096
1189 #CHECK: error: invalid operand
1190 #CHECK: wledb %v0, %v0, 0, -1
1191 #CHECK: error: invalid operand
1192 #CHECK: wledb %v0, %v0, 0, 16
1193 #CHECK: error: invalid operand
1194 #CHECK: wledb %v0, %v0, -1, 0
1195 #CHECK: error: invalid operand
1196 #CHECK: wledb %v0, %v0, 16, 0
1198 wledb %v0, %v0, 0, -1
1199 wledb %v0, %v0, 0, 16
1200 wledb %v0, %v0, -1, 0
1201 wledb %v0, %v0, 16, 0