Lines Matching refs:VD
292 : VXForm_1<xo, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
293 !strconcat(opc, " $VD, $VA, $VB"), IIC_VecFP,
294 [(set Ty:$VD, (IntID Ty:$VA, Ty:$VB))]>;
300 : VXForm_1<xo, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
301 !strconcat(opc, " $VD, $VA, $VB"), IIC_VecFP,
302 [(set OutTy:$VD, (IntID InTy:$VA, InTy:$VB))]>;
308 : VXForm_1<xo, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
309 !strconcat(opc, " $VD, $VA, $VB"), IIC_VecFP,
310 [(set OutTy:$VD, (IntID In1Ty:$VA, In2Ty:$VB))]>;
314 : VXForm_2<xo, (outs vrrc:$VD), (ins vrrc:$VB),
315 !strconcat(opc, " $VD, $VB"), IIC_VecFP,
316 [(set v4f32:$VD, (IntID v4f32:$VB))]>;
322 : VXForm_2<xo, (outs vrrc:$VD), (ins vrrc:$VB),
323 !strconcat(opc, " $VD, $VB"), IIC_VecFP,
324 [(set OutTy:$VD, (IntID InTy:$VB))]>;
327 : VXForm_BX<xo, (outs vrrc:$VD), (ins vrrc:$VA),
328 !strconcat(opc, " $VD, $VA"), IIC_VecFP,
329 [(set Ty:$VD, (IntID Ty:$VA))]>;
332 : VXForm_CR<xo, (outs vrrc:$VD), (ins vrrc:$VA, u1imm:$ST, u4imm:$SIX),
333 !strconcat(opc, " $VD, $VA, $ST, $SIX"), IIC_VecFP,
334 [(set Ty:$VD, (IntID Ty:$VA, timm:$ST, timm:$SIX))]>;
403 def MFVSCR : VXForm_4<1540, (outs vrrc:$VD), (ins),
404 "mfvscr $VD", IIC_LdStStore,
405 [(set v8i16:$VD, (int_ppc_altivec_mfvscr))]>;
489 def VADDFP : VXForm_1<10, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
490 "vaddfp $VD, $VA, $VB", IIC_VecFP,
491 [(set v4f32:$VD, (fadd v4f32:$VA, v4f32:$VB))]>;
493 def VADDUBM : VXForm_1<0, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
494 "vaddubm $VD, $VA, $VB", IIC_VecGeneral,
495 [(set v16i8:$VD, (add v16i8:$VA, v16i8:$VB))]>;
496 def VADDUHM : VXForm_1<64, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
497 "vadduhm $VD, $VA, $VB", IIC_VecGeneral,
498 [(set v8i16:$VD, (add v8i16:$VA, v8i16:$VB))]>;
499 def VADDUWM : VXForm_1<128, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
500 "vadduwm $VD, $VA, $VB", IIC_VecGeneral,
501 [(set v4i32:$VD, (add v4i32:$VA, v4i32:$VB))]>;
513 def VAND : VXForm_1<1028, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
514 "vand $VD, $VA, $VB", IIC_VecFP,
515 [(set v4i32:$VD, (and v4i32:$VA, v4i32:$VB))]>;
516 def VANDC : VXForm_1<1092, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
517 "vandc $VD, $VA, $VB", IIC_VecFP,
518 [(set v4i32:$VD, (and v4i32:$VA,
521 def VCFSX : VXForm_1<842, (outs vrrc:$VD), (ins u5imm:$VA, vrrc:$VB),
522 "vcfsx $VD, $VB, $VA", IIC_VecFP,
523 [(set v4f32:$VD,
525 def VCFUX : VXForm_1<778, (outs vrrc:$VD), (ins u5imm:$VA, vrrc:$VB),
526 "vcfux $VD, $VB, $VA", IIC_VecFP,
527 [(set v4f32:$VD,
529 def VCTSXS : VXForm_1<970, (outs vrrc:$VD), (ins u5imm:$VA, vrrc:$VB),
530 "vctsxs $VD, $VB, $VA", IIC_VecFP,
531 [(set v4i32:$VD,
533 def VCTUXS : VXForm_1<906, (outs vrrc:$VD), (ins u5imm:$VA, vrrc:$VB),
534 "vctuxs $VD, $VB, $VA", IIC_VecFP,
535 [(set v4i32:$VD,
542 def VCFSX_0 : VXForm_1<842, (outs vrrc:$VD), (ins vrrc:$VB),
543 "vcfsx $VD, $VB, 0", IIC_VecFP,
544 [(set v4f32:$VD,
546 def VCTUXS_0 : VXForm_1<906, (outs vrrc:$VD), (ins vrrc:$VB),
547 "vctuxs $VD, $VB, 0", IIC_VecFP,
548 [(set v4i32:$VD,
550 def VCFUX_0 : VXForm_1<778, (outs vrrc:$VD), (ins vrrc:$VB),
551 "vcfux $VD, $VB, 0", IIC_VecFP,
552 [(set v4f32:$VD,
554 def VCTSXS_0 : VXForm_1<970, (outs vrrc:$VD), (ins vrrc:$VB),
555 "vctsxs $VD, $VB, 0", IIC_VecFP,
556 [(set v4i32:$VD,
586 def VMRGHB : VXForm_1< 12, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
587 "vmrghb $VD, $VA, $VB", IIC_VecFP,
588 [(set v16i8:$VD, (vmrghb_shuffle v16i8:$VA, v16i8:$VB))]>;
589 def VMRGHH : VXForm_1< 76, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
590 "vmrghh $VD, $VA, $VB", IIC_VecFP,
591 [(set v16i8:$VD, (vmrghh_shuffle v16i8:$VA, v16i8:$VB))]>;
592 def VMRGHW : VXForm_1<140, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
593 "vmrghw $VD, $VA, $VB", IIC_VecFP,
594 [(set v16i8:$VD, (vmrghw_shuffle v16i8:$VA, v16i8:$VB))]>;
595 def VMRGLB : VXForm_1<268, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
596 "vmrglb $VD, $VA, $VB", IIC_VecFP,
597 [(set v16i8:$VD, (vmrglb_shuffle v16i8:$VA, v16i8:$VB))]>;
598 def VMRGLH : VXForm_1<332, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
599 "vmrglh $VD, $VA, $VB", IIC_VecFP,
600 [(set v16i8:$VD, (vmrglh_shuffle v16i8:$VA, v16i8:$VB))]>;
601 def VMRGLW : VXForm_1<396, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
602 "vmrglw $VD, $VA, $VB", IIC_VecFP,
603 [(set v16i8:$VD, (vmrglw_shuffle v16i8:$VA, v16i8:$VB))]>;
648 def VSUBFP : VXForm_1<74, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
649 "vsubfp $VD, $VA, $VB", IIC_VecGeneral,
650 [(set v4f32:$VD, (fsub v4f32:$VA, v4f32:$VB))]>;
651 def VSUBUBM : VXForm_1<1024, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
652 "vsububm $VD, $VA, $VB", IIC_VecGeneral,
653 [(set v16i8:$VD, (sub v16i8:$VA, v16i8:$VB))]>;
654 def VSUBUHM : VXForm_1<1088, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
655 "vsubuhm $VD, $VA, $VB", IIC_VecGeneral,
656 [(set v8i16:$VD, (sub v8i16:$VA, v8i16:$VB))]>;
657 def VSUBUWM : VXForm_1<1152, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
658 "vsubuwm $VD, $VA, $VB", IIC_VecGeneral,
659 [(set v4i32:$VD, (sub v4i32:$VA, v4i32:$VB))]>;
680 def VNOR : VXForm_1<1284, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
681 "vnor $VD, $VA, $VB", IIC_VecFP,
682 [(set v4i32:$VD, (vnot (or v4i32:$VA,
685 def VOR : VXForm_1<1156, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
686 "vor $VD, $VA, $VB", IIC_VecFP,
687 [(set v4i32:$VD, (or v4i32:$VA, v4i32:$VB))]>;
688 def VXOR : VXForm_1<1220, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
689 "vxor $VD, $VA, $VB", IIC_VecFP,
690 [(set v4i32:$VD, (xor v4i32:$VA, v4i32:$VB))]>;
704 def VSPLTB : VXForm_1<524, (outs vrrc:$VD), (ins u5imm:$VA, vrrc:$VB),
705 "vspltb $VD, $VB, $VA", IIC_VecPerm,
706 [(set v16i8:$VD,
708 def VSPLTH : VXForm_1<588, (outs vrrc:$VD), (ins u5imm:$VA, vrrc:$VB),
709 "vsplth $VD, $VB, $VA", IIC_VecPerm,
710 [(set v16i8:$VD,
712 def VSPLTW : VXForm_1<652, (outs vrrc:$VD), (ins u5imm:$VA, vrrc:$VB),
713 "vspltw $VD, $VB, $VA", IIC_VecPerm,
714 [(set v16i8:$VD,
717 def VSPLTBs : VXForm_1<524, (outs vrrc:$VD), (ins u5imm:$VA, vfrc:$VB),
718 "vspltb $VD, $VB, $VA", IIC_VecPerm, []>;
719 def VSPLTHs : VXForm_1<588, (outs vrrc:$VD), (ins u5imm:$VA, vfrc:$VB),
720 "vsplth $VD, $VB, $VA", IIC_VecPerm, []>;
734 def VSPLTISB : VXForm_3<780, (outs vrrc:$VD), (ins s5imm:$IMM),
735 "vspltisb $VD, $IMM", IIC_VecPerm,
736 [(set v16i8:$VD, (v16i8 vecspltisb:$IMM))]>;
737 def VSPLTISH : VXForm_3<844, (outs vrrc:$VD), (ins s5imm:$IMM),
738 "vspltish $VD, $IMM", IIC_VecPerm,
739 [(set v8i16:$VD, (v8i16 vecspltish:$IMM))]>;
740 def VSPLTISW : VXForm_3<908, (outs vrrc:$VD), (ins s5imm:$IMM),
741 "vspltisw $VD, $IMM", IIC_VecPerm,
742 [(set v4i32:$VD, (v4i32 vecspltisw:$IMM))]>;
761 def VPKUHUM : VXForm_1<14, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
762 "vpkuhum $VD, $VA, $VB", IIC_VecFP,
763 [(set v16i8:$VD,
765 def VPKUWUM : VXForm_1<78, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
766 "vpkuwum $VD, $VA, $VB", IIC_VecFP,
767 [(set v16i8:$VD,
788 : VXRForm_1<xo, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB), asmstr,
790 [(set Ty:$VD, (Ty (PPCvcmp Ty:$VA, Ty:$VB, xo)))]>;
792 : VXRForm_1<xo, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB), asmstr,
794 [(set Ty:$VD, (Ty (PPCvcmp_rec Ty:$VA, Ty:$VB, xo)))]> {
800 def VCMPBFP : VCMP <966, "vcmpbfp $VD, $VA, $VB" , v4f32>;
801 def VCMPBFP_rec : VCMP_rec<966, "vcmpbfp. $VD, $VA, $VB" , v4f32>;
802 def VCMPEQFP : VCMP <198, "vcmpeqfp $VD, $VA, $VB" , v4f32>;
803 def VCMPEQFP_rec : VCMP_rec<198, "vcmpeqfp. $VD, $VA, $VB", v4f32>;
804 def VCMPGEFP : VCMP <454, "vcmpgefp $VD, $VA, $VB" , v4f32>;
805 def VCMPGEFP_rec : VCMP_rec<454, "vcmpgefp. $VD, $VA, $VB", v4f32>;
806 def VCMPGTFP : VCMP <710, "vcmpgtfp $VD, $VA, $VB" , v4f32>;
807 def VCMPGTFP_rec : VCMP_rec<710, "vcmpgtfp. $VD, $VA, $VB", v4f32>;
810 def VCMPEQUB : VCMP < 6, "vcmpequb $VD, $VA, $VB" , v16i8>;
811 def VCMPEQUB_rec : VCMP_rec< 6, "vcmpequb. $VD, $VA, $VB", v16i8>;
812 def VCMPGTSB : VCMP <774, "vcmpgtsb $VD, $VA, $VB" , v16i8>;
813 def VCMPGTSB_rec : VCMP_rec<774, "vcmpgtsb. $VD, $VA, $VB", v16i8>;
814 def VCMPGTUB : VCMP <518, "vcmpgtub $VD, $VA, $VB" , v16i8>;
815 def VCMPGTUB_rec : VCMP_rec<518, "vcmpgtub. $VD, $VA, $VB", v16i8>;
818 def VCMPEQUH : VCMP < 70, "vcmpequh $VD, $VA, $VB" , v8i16>;
819 def VCMPEQUH_rec : VCMP_rec< 70, "vcmpequh. $VD, $VA, $VB", v8i16>;
820 def VCMPGTSH : VCMP <838, "vcmpgtsh $VD, $VA, $VB" , v8i16>;
821 def VCMPGTSH_rec : VCMP_rec<838, "vcmpgtsh. $VD, $VA, $VB", v8i16>;
822 def VCMPGTUH : VCMP <582, "vcmpgtuh $VD, $VA, $VB" , v8i16>;
823 def VCMPGTUH_rec : VCMP_rec<582, "vcmpgtuh. $VD, $VA, $VB", v8i16>;
826 def VCMPEQUW : VCMP <134, "vcmpequw $VD, $VA, $VB" , v4i32>;
827 def VCMPEQUW_rec : VCMP_rec<134, "vcmpequw. $VD, $VA, $VB", v4i32>;
828 def VCMPGTSW : VCMP <902, "vcmpgtsw $VD, $VA, $VB" , v4i32>;
829 def VCMPGTSW_rec : VCMP_rec<902, "vcmpgtsw. $VD, $VA, $VB", v4i32>;
830 def VCMPGTUW : VCMP <646, "vcmpgtuw $VD, $VA, $VB" , v4i32>;
831 def VCMPGTUW_rec : VCMP_rec<646, "vcmpgtuw. $VD, $VA, $VB", v4i32>;
836 def V_SET0B : VXForm_setzero<1220, (outs vrrc:$VD), (ins),
837 "vxor $VD, $VD, $VD", IIC_VecFP,
838 [(set v16i8:$VD, (v16i8 immAllZerosV))]>;
839 def V_SET0H : VXForm_setzero<1220, (outs vrrc:$VD), (ins),
840 "vxor $VD, $VD, $VD", IIC_VecFP,
841 [(set v8i16:$VD, (v8i16 immAllZerosV))]>;
842 def V_SET0 : VXForm_setzero<1220, (outs vrrc:$VD), (ins),
843 "vxor $VD, $VD, $VD", IIC_VecFP,
844 [(set v4i32:$VD, (v4i32 immAllZerosV))]>;
847 def V_SETALLONESB : VXForm_3<908, (outs vrrc:$VD), (ins),
848 "vspltisw $VD, -1", IIC_VecFP,
849 [(set v16i8:$VD, (v16i8 immAllOnesV))]>;
850 def V_SETALLONESH : VXForm_3<908, (outs vrrc:$VD), (ins),
851 "vspltisw $VD, -1", IIC_VecFP,
852 [(set v8i16:$VD, (v8i16 immAllOnesV))]>;
853 def V_SETALLONES : VXForm_3<908, (outs vrrc:$VD), (ins),
854 "vspltisw $VD, -1", IIC_VecFP,
855 [(set v4i32:$VD, (v4i32 immAllOnesV))]>;
1176 (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB, u1imm:$PS),
1177 !strconcat(opc, " $VD, $VA, $VB, $PS"), IIC_VecFP, pattern> {
1183 : VX_RD5_RSp5_PS1_XO9<xo, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1184 !strconcat(opc, " $VD, $VA, $VB"), IIC_VecFP, pattern> {
1202 def VMULUWM : VXForm_1<137, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1203 "vmuluwm $VD, $VA, $VB", IIC_VecGeneral,
1204 [(set v4i32:$VD, (mul v4i32:$VA, v4i32:$VB))]>;
1212 def VMRGEW : VXForm_1<1932, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1213 "vmrgew $VD, $VA, $VB", IIC_VecFP,
1214 [(set v16i8:$VD,
1216 def VMRGOW : VXForm_1<1676, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1217 "vmrgow $VD, $VA, $VB", IIC_VecFP,
1218 [(set v16i8:$VD,
1242 def VSLD : VXForm_1<1476, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1243 "vsld $VD, $VA, $VB", IIC_VecGeneral, []>;
1244 def VSRD : VXForm_1<1732, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1245 "vsrd $VD, $VA, $VB", IIC_VecGeneral, []>;
1246 def VSRAD : VXForm_1<964, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1247 "vsrad $VD, $VA, $VB", IIC_VecGeneral, []>;
1264 def VADDUDM : VXForm_1<192, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1265 "vaddudm $VD, $VA, $VB", IIC_VecGeneral,
1266 [(set v2i64:$VD, (add v2i64:$VA, v2i64:$VB))]>;
1267 def VADDUQM : VXForm_1<256, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1268 "vadduqm $VD, $VA, $VB", IIC_VecGeneral,
1269 [(set v1i128:$VD, (add v1i128:$VA, v1i128:$VB))]>;
1278 def VSUBUDM : VXForm_1<1216, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1279 "vsubudm $VD, $VA, $VB", IIC_VecGeneral,
1280 [(set v2i64:$VD, (sub v2i64:$VA, v2i64:$VB))]>;
1283 def VSUBUQM : VXForm_1<1280, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1284 "vsubuqm $VD, $VA, $VB", IIC_VecGeneral,
1285 [(set v1i128:$VD, (sub v1i128:$VA, v1i128:$VB))]>;
1291 def VCLZB : VXForm_2<1794, (outs vrrc:$VD), (ins vrrc:$VB),
1292 "vclzb $VD, $VB", IIC_VecGeneral,
1293 [(set v16i8:$VD, (ctlz v16i8:$VB))]>;
1294 def VCLZH : VXForm_2<1858, (outs vrrc:$VD), (ins vrrc:$VB),
1295 "vclzh $VD, $VB", IIC_VecGeneral,
1296 [(set v8i16:$VD, (ctlz v8i16:$VB))]>;
1297 def VCLZW : VXForm_2<1922, (outs vrrc:$VD), (ins vrrc:$VB),
1298 "vclzw $VD, $VB", IIC_VecGeneral,
1299 [(set v4i32:$VD, (ctlz v4i32:$VB))]>;
1300 def VCLZD : VXForm_2<1986, (outs vrrc:$VD), (ins vrrc:$VB),
1301 "vclzd $VD, $VB", IIC_VecGeneral,
1302 [(set v2i64:$VD, (ctlz v2i64:$VB))]>;
1305 def VPOPCNTB : VXForm_2<1795, (outs vrrc:$VD), (ins vrrc:$VB),
1306 "vpopcntb $VD, $VB", IIC_VecGeneral,
1307 [(set v16i8:$VD, (ctpop v16i8:$VB))]>;
1308 def VPOPCNTH : VXForm_2<1859, (outs vrrc:$VD), (ins vrrc:$VB),
1309 "vpopcnth $VD, $VB", IIC_VecGeneral,
1310 [(set v8i16:$VD, (ctpop v8i16:$VB))]>;
1311 def VPOPCNTW : VXForm_2<1923, (outs vrrc:$VD), (ins vrrc:$VB),
1312 "vpopcntw $VD, $VB", IIC_VecGeneral,
1313 [(set v4i32:$VD, (ctpop v4i32:$VB))]>;
1314 def VPOPCNTD : VXForm_2<1987, (outs vrrc:$VD), (ins vrrc:$VB),
1315 "vpopcntd $VD, $VB", IIC_VecGeneral,
1316 [(set v2i64:$VD, (ctpop v2i64:$VB))]>;
1329 def VEQV : VXForm_1<1668, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1330 "veqv $VD, $VA, $VB", IIC_VecGeneral,
1331 [(set v4i32:$VD, (vnot (xor v4i32:$VA, v4i32:$VB)))]>;
1332 def VNAND : VXForm_1<1412, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1333 "vnand $VD, $VA, $VB", IIC_VecGeneral,
1334 [(set v4i32:$VD, (vnot (and v4i32:$VA, v4i32:$VB)))]>;
1337 def VORC : VXForm_1<1348, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1338 "vorc $VD, $VA, $VB", IIC_VecGeneral,
1339 [(set v4i32:$VD, (or v4i32:$VA,
1343 def VCMPEQUD : VCMP <199, "vcmpequd $VD, $VA, $VB" , v2i64>;
1344 def VCMPEQUD_rec : VCMP_rec<199, "vcmpequd. $VD, $VA, $VB", v2i64>;
1345 def VCMPGTSD : VCMP <967, "vcmpgtsd $VD, $VA, $VB" , v2i64>;
1346 def VCMPGTSD_rec : VCMP_rec<967, "vcmpgtsd. $VD, $VA, $VB", v2i64>;
1347 def VCMPGTUD : VCMP <711, "vcmpgtud $VD, $VA, $VB" , v2i64>;
1348 def VCMPGTUD_rec : VCMP_rec<711, "vcmpgtud. $VD, $VA, $VB", v2i64>;
1371 def VPKUDUM : VXForm_1<1102, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1372 "vpkudum $VD, $VA, $VB", IIC_VecFP,
1373 [(set v16i8:$VD,
1424 def VCMPNEB : VCMP < 7, "vcmpneb $VD, $VA, $VB" , v16i8>;
1425 def VCMPNEB_rec : VCMP_rec < 7, "vcmpneb. $VD, $VA, $VB" , v16i8>;
1426 def VCMPNEZB : VCMP <263, "vcmpnezb $VD, $VA, $VB" , v16i8>;
1427 def VCMPNEZB_rec : VCMP_rec<263, "vcmpnezb. $VD, $VA, $VB", v16i8>;
1430 def VCMPNEH : VCMP < 71, "vcmpneh $VD, $VA, $VB" , v8i16>;
1431 def VCMPNEH_rec : VCMP_rec< 71, "vcmpneh. $VD, $VA, $VB" , v8i16>;
1432 def VCMPNEZH : VCMP <327, "vcmpnezh $VD, $VA, $VB" , v8i16>;
1433 def VCMPNEZH_rec : VCMP_rec<327, "vcmpnezh. $VD, $VA, $VB", v8i16>;
1436 def VCMPNEW : VCMP <135, "vcmpnew $VD, $VA, $VB" , v4i32>;
1437 def VCMPNEW_rec : VCMP_rec<135, "vcmpnew. $VD, $VA, $VB" , v4i32>;
1438 def VCMPNEZW : VCMP <391, "vcmpnezw $VD, $VA, $VB" , v4i32>;
1439 def VCMPNEZW_rec : VCMP_rec<391, "vcmpnezw. $VD, $VA, $VB", v4i32>;
1445 : VXForm_1<xo, (outs vrrc:$VD), (ins u4imm:$VA, vrrc:$VB),
1446 !strconcat(opc, " $VD, $VB, $VA"), IIC_VecGeneral, pattern>;
1449 : VXForm_1<xo, (outs g8rc:$VD), (ins g8rc:$VA, vrrc:$VB),
1450 !strconcat(opc, " $VD, $VA, $VB"), IIC_VecGeneral, pattern>;
1469 def VINSERTB : VXForm_1<781, (outs vrrc:$VD),
1471 "vinsertb $VD, $VB, $VA", IIC_VecGeneral,
1472 [(set v16i8:$VD, (PPCvecinsert v16i8:$VDi, v16i8:$VB,
1474 RegConstraint<"$VDi = $VD">, NoEncode<"$VDi">;
1475 def VINSERTH : VXForm_1<845, (outs vrrc:$VD),
1477 "vinserth $VD, $VB, $VA", IIC_VecGeneral,
1478 [(set v8i16:$VD, (PPCvecinsert v8i16:$VDi, v8i16:$VB,
1480 RegConstraint<"$VDi = $VD">, NoEncode<"$VDi">;
1485 : VXForm_RD5_XO5_RS5<xo, eo, (outs vrrc:$VD), (ins vrrc:$VB),
1486 !strconcat(opc, " $VD, $VB"), IIC_VecGeneral, pattern>;
1488 : VXForm_RD5_XO5_RS5<xo, eo, (outs vfrc:$VD), (ins vfrc:$VB),
1489 !strconcat(opc, " $VD, $VB"), IIC_VecGeneral, pattern>;
1492 def VCLZLSBB : VXForm_RD5_XO5_RS5<1538, 0, (outs gprc:$VD), (ins vrrc:$VB),
1493 "vclzlsbb $VD, $VB", IIC_VecGeneral,
1494 [(set i32:$VD, (int_ppc_altivec_vclzlsbb
1496 def VCTZLSBB : VXForm_RD5_XO5_RS5<1538, 1, (outs gprc:$VD), (ins vrrc:$VB),
1497 "vctzlsbb $VD, $VB", IIC_VecGeneral,
1498 [(set i32:$VD, (int_ppc_altivec_vctzlsbb
1502 [(set v16i8:$VD, (cttz v16i8:$VB))]>;
1504 [(set v8i16:$VD, (cttz v8i16:$VB))]>;
1506 [(set v4i32:$VD, (cttz v4i32:$VB))]>;
1508 [(set v2i64:$VD, (cttz v2i64:$VB))]>;
1512 [(set v4i32:$VD, (int_ppc_altivec_vextsb2w v16i8:$VB))]>;
1514 [(set v4i32:$VD, (int_ppc_altivec_vextsh2w v8i16:$VB))]>;
1516 [(set v2i64:$VD, (int_ppc_altivec_vextsb2d v16i8:$VB))]>;
1518 [(set v2i64:$VD, (int_ppc_altivec_vextsh2d v8i16:$VB))]>;
1520 [(set v2i64:$VD, (int_ppc_altivec_vextsw2d v4i32:$VB))]>;
1537 [(set v4i32:$VD,
1541 [(set v2i64:$VD,
1545 def VPRTYBW : VX_VT5_EO5_VB5<1538, 8, "vprtybw", [(set v4i32:$VD,
1547 def VPRTYBD : VX_VT5_EO5_VB5<1538, 9, "vprtybd", [(set v2i64:$VD,
1549 def VPRTYBQ : VX_VT5_EO5_VB5<1538, 10, "vprtybq", [(set v1i128:$VD,
1559 : VXForm_1<xo, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1560 !strconcat(opc, " $VD, $VA, $VB"), IIC_VecFP, pattern>;
1564 [(set v4i32:$VD,
1567 def VRLWMI : VXForm_1<133, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB, vrrc:$VDi),
1568 "vrlwmi $VD, $VA, $VB", IIC_VecFP,
1569 [(set v4i32:$VD,
1572 RegConstraint<"$VDi = $VD">, NoEncode<"$VDi">;
1574 [(set v2i64:$VD,
1577 def VRLDMI : VXForm_1<197, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB, vrrc:$VDi),
1578 "vrldmi $VD, $VA, $VB", IIC_VecFP,
1579 [(set v2i64:$VD,
1582 RegConstraint<"$VDi = $VD">, NoEncode<"$VDi">;
1586 [(set v16i8 : $VD, (int_ppc_altivec_vslv v16i8 : $VA, v16i8 : $VB))]>;
1588 [(set v16i8 : $VD, (int_ppc_altivec_vsrv v16i8 : $VA, v16i8 : $VB))]>;
1591 def VMUL10UQ : VXForm_BX<513, (outs vrrc:$VD), (ins vrrc:$VA),
1592 "vmul10uq $VD, $VA", IIC_VecFP, []>;
1593 def VMUL10CUQ : VXForm_BX< 1, (outs vrrc:$VD), (ins vrrc:$VA),
1594 "vmul10cuq $VD, $VA", IIC_VecFP, []>;
1605 : VX_RD5_EO5_RS5_PS1_XO9<eo, xo, (outs vrrc:$VD), (ins vrrc:$VB, u1imm:$PS),
1606 !strconcat(opc, " $VD, $VB, $PS"), IIC_VecFP, pattern> {
1613 : VX_RD5_EO5_RS5_PS1_XO9<eo, xo, (outs vrrc:$VD), (ins vrrc:$VB),
1614 !strconcat(opc, " $VD, $VB"), IIC_VecFP, pattern> {
1643 def VABSDUB : VXForm_1<1027, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1644 "vabsdub $VD, $VA, $VB", IIC_VecGeneral,
1645 [(set v16i8:$VD, (int_ppc_altivec_vabsdub v16i8:$VA, v16i8:$VB))]>;
1646 def VABSDUH : VXForm_1<1091, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1647 "vabsduh $VD, $VA, $VB", IIC_VecGeneral,
1648 [(set v8i16:$VD, (int_ppc_altivec_vabsduh v8i16:$VA, v8i16:$VB))]>;
1649 def VABSDUW : VXForm_1<1155, (outs vrrc:$VD), (ins vrrc:$VA, vrrc:$VB),
1650 "vabsduw $VD, $VA, $VB", IIC_VecGeneral,
1651 [(set v4i32:$VD, (int_ppc_altivec_vabsduw v4i32:$VA, v4i32:$VB))]>;