• Home
  • Raw
  • Download

Lines Matching refs:vA

269   : VAForm_1a<xo, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB, vrrc:$vC),
270 !strconcat(opc, " $vD, $vA, $vB, $vC"), IIC_VecFP,
271 [(set Ty:$vD, (IntID Ty:$vA, Ty:$vB, Ty:$vC))]>;
277 : VAForm_1a<xo, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB, vrrc:$vC),
278 !strconcat(opc, " $vD, $vA, $vB, $vC"), IIC_VecFP,
279 [(set OutTy:$vD, (IntID InTy:$vA, InTy:$vB, InTy:$vC))]>;
285 : VAForm_1a<xo, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB, vrrc:$vC),
286 !strconcat(opc, " $vD, $vA, $vB, $vC"), IIC_VecFP,
288 (IntID In1Ty:$vA, In1Ty:$vB, In2Ty:$vC))]>;
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))]>;
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, imm:$ST, imm:$SIX))]>;
457 def VMADDFP : VAForm_1<46, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vC, vrrc:$vB),
458 "vmaddfp $vD, $vA, $vC, $vB", IIC_VecFP,
460 (fma v4f32:$vA, v4f32:$vC, v4f32:$vB))]>;
463 def VNMSUBFP: VAForm_1<47, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vC, vrrc:$vB),
464 "vnmsubfp $vD, $vA, $vC, $vB", IIC_VecFP,
465 [(set v4f32:$vD, (fneg (fma v4f32:$vA, v4f32:$vC,
479 def VSLDOI : VAForm_2<44, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB, u5imm:$SH),
480 "vsldoi $vD, $vA, $vB, $SH", IIC_VecFP,
482 (vsldoi_shuffle:$SH v16i8:$vA, v16i8:$vB))]>;
486 def VADDFP : VXForm_1<10, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
487 "vaddfp $vD, $vA, $vB", IIC_VecFP,
488 [(set v4f32:$vD, (fadd v4f32:$vA, v4f32:$vB))]>;
490 def VADDUBM : VXForm_1<0, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
491 "vaddubm $vD, $vA, $vB", IIC_VecGeneral,
492 [(set v16i8:$vD, (add v16i8:$vA, v16i8:$vB))]>;
493 def VADDUHM : VXForm_1<64, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
494 "vadduhm $vD, $vA, $vB", IIC_VecGeneral,
495 [(set v8i16:$vD, (add v8i16:$vA, v8i16:$vB))]>;
496 def VADDUWM : VXForm_1<128, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
497 "vadduwm $vD, $vA, $vB", IIC_VecGeneral,
498 [(set v4i32:$vD, (add v4i32:$vA, v4i32:$vB))]>;
510 def VAND : VXForm_1<1028, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
511 "vand $vD, $vA, $vB", IIC_VecFP,
512 [(set v4i32:$vD, (and v4i32:$vA, v4i32:$vB))]>;
513 def VANDC : VXForm_1<1092, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
514 "vandc $vD, $vA, $vB", IIC_VecFP,
515 [(set v4i32:$vD, (and v4i32:$vA,
583 def VMRGHB : VXForm_1< 12, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
584 "vmrghb $vD, $vA, $vB", IIC_VecFP,
585 [(set v16i8:$vD, (vmrghb_shuffle v16i8:$vA, v16i8:$vB))]>;
586 def VMRGHH : VXForm_1< 76, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
587 "vmrghh $vD, $vA, $vB", IIC_VecFP,
588 [(set v16i8:$vD, (vmrghh_shuffle v16i8:$vA, v16i8:$vB))]>;
589 def VMRGHW : VXForm_1<140, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
590 "vmrghw $vD, $vA, $vB", IIC_VecFP,
591 [(set v16i8:$vD, (vmrghw_shuffle v16i8:$vA, v16i8:$vB))]>;
592 def VMRGLB : VXForm_1<268, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
593 "vmrglb $vD, $vA, $vB", IIC_VecFP,
594 [(set v16i8:$vD, (vmrglb_shuffle v16i8:$vA, v16i8:$vB))]>;
595 def VMRGLH : VXForm_1<332, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
596 "vmrglh $vD, $vA, $vB", IIC_VecFP,
597 [(set v16i8:$vD, (vmrglh_shuffle v16i8:$vA, v16i8:$vB))]>;
598 def VMRGLW : VXForm_1<396, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
599 "vmrglw $vD, $vA, $vB", IIC_VecFP,
600 [(set v16i8:$vD, (vmrglw_shuffle v16i8:$vA, v16i8:$vB))]>;
643 def VSUBFP : VXForm_1<74, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
644 "vsubfp $vD, $vA, $vB", IIC_VecGeneral,
645 [(set v4f32:$vD, (fsub v4f32:$vA, v4f32:$vB))]>;
646 def VSUBUBM : VXForm_1<1024, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
647 "vsububm $vD, $vA, $vB", IIC_VecGeneral,
648 [(set v16i8:$vD, (sub v16i8:$vA, v16i8:$vB))]>;
649 def VSUBUHM : VXForm_1<1088, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
650 "vsubuhm $vD, $vA, $vB", IIC_VecGeneral,
651 [(set v8i16:$vD, (sub v8i16:$vA, v8i16:$vB))]>;
652 def VSUBUWM : VXForm_1<1152, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
653 "vsubuwm $vD, $vA, $vB", IIC_VecGeneral,
654 [(set v4i32:$vD, (sub v4i32:$vA, v4i32:$vB))]>;
673 def VNOR : VXForm_1<1284, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
674 "vnor $vD, $vA, $vB", IIC_VecFP,
675 [(set v4i32:$vD, (vnot_ppc (or v4i32:$vA,
678 def VOR : VXForm_1<1156, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
679 "vor $vD, $vA, $vB", IIC_VecFP,
680 [(set v4i32:$vD, (or v4i32:$vA, v4i32:$vB))]>;
681 def VXOR : VXForm_1<1220, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
682 "vxor $vD, $vA, $vB", IIC_VecFP,
683 [(set v4i32:$vD, (xor v4i32:$vA, v4i32:$vB))]>;
742 def VPKUHUM : VXForm_1<14, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
743 "vpkuhum $vD, $vA, $vB", IIC_VecFP,
745 (vpkuhum_shuffle v16i8:$vA, v16i8:$vB))]>;
748 def VPKUWUM : VXForm_1<78, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
749 "vpkuwum $vD, $vA, $vB", IIC_VecFP,
751 (vpkuwum_shuffle v16i8:$vA, v16i8:$vB))]>;
773 : VXRForm_1<xo, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB), asmstr,
775 [(set Ty:$vD, (Ty (PPCvcmp Ty:$vA, Ty:$vB, xo)))]>;
777 : VXRForm_1<xo, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB), asmstr,
779 [(set Ty:$vD, (Ty (PPCvcmp_o Ty:$vA, Ty:$vB, xo)))]> {
785 def VCMPBFP : VCMP <966, "vcmpbfp $vD, $vA, $vB" , v4f32>;
786 def VCMPBFPo : VCMPo<966, "vcmpbfp. $vD, $vA, $vB" , v4f32>;
787 def VCMPEQFP : VCMP <198, "vcmpeqfp $vD, $vA, $vB" , v4f32>;
788 def VCMPEQFPo : VCMPo<198, "vcmpeqfp. $vD, $vA, $vB", v4f32>;
789 def VCMPGEFP : VCMP <454, "vcmpgefp $vD, $vA, $vB" , v4f32>;
790 def VCMPGEFPo : VCMPo<454, "vcmpgefp. $vD, $vA, $vB", v4f32>;
791 def VCMPGTFP : VCMP <710, "vcmpgtfp $vD, $vA, $vB" , v4f32>;
792 def VCMPGTFPo : VCMPo<710, "vcmpgtfp. $vD, $vA, $vB", v4f32>;
795 def VCMPEQUB : VCMP < 6, "vcmpequb $vD, $vA, $vB" , v16i8>;
796 def VCMPEQUBo : VCMPo< 6, "vcmpequb. $vD, $vA, $vB", v16i8>;
797 def VCMPGTSB : VCMP <774, "vcmpgtsb $vD, $vA, $vB" , v16i8>;
798 def VCMPGTSBo : VCMPo<774, "vcmpgtsb. $vD, $vA, $vB", v16i8>;
799 def VCMPGTUB : VCMP <518, "vcmpgtub $vD, $vA, $vB" , v16i8>;
800 def VCMPGTUBo : VCMPo<518, "vcmpgtub. $vD, $vA, $vB", v16i8>;
803 def VCMPEQUH : VCMP < 70, "vcmpequh $vD, $vA, $vB" , v8i16>;
804 def VCMPEQUHo : VCMPo< 70, "vcmpequh. $vD, $vA, $vB", v8i16>;
805 def VCMPGTSH : VCMP <838, "vcmpgtsh $vD, $vA, $vB" , v8i16>;
806 def VCMPGTSHo : VCMPo<838, "vcmpgtsh. $vD, $vA, $vB", v8i16>;
807 def VCMPGTUH : VCMP <582, "vcmpgtuh $vD, $vA, $vB" , v8i16>;
808 def VCMPGTUHo : VCMPo<582, "vcmpgtuh. $vD, $vA, $vB", v8i16>;
811 def VCMPEQUW : VCMP <134, "vcmpequw $vD, $vA, $vB" , v4i32>;
812 def VCMPEQUWo : VCMPo<134, "vcmpequw. $vD, $vA, $vB", v4i32>;
813 def VCMPGTSW : VCMP <902, "vcmpgtsw $vD, $vA, $vB" , v4i32>;
814 def VCMPGTSWo : VCMPo<902, "vcmpgtsw. $vD, $vA, $vB", v4i32>;
815 def VCMPGTUW : VCMP <646, "vcmpgtuw $vD, $vA, $vB" , v4i32>;
816 def VCMPGTUWo : VCMPo<646, "vcmpgtuw. $vD, $vA, $vB", v4i32>;
894 def:Pat<(vsldoi_unary_shuffle:$in v16i8:$vA, undef),
895 (VSLDOI $vA, $vA, (VSLDOI_unary_get_imm $in))>;
896 def:Pat<(vpkuwum_unary_shuffle v16i8:$vA, undef),
897 (VPKUWUM $vA, $vA)>;
898 def:Pat<(vpkuhum_unary_shuffle v16i8:$vA, undef),
899 (VPKUHUM $vA, $vA)>;
904 def:Pat<(vsldoi_swapped_shuffle:$in v16i8:$vA, v16i8:$vB),
905 (VSLDOI $vB, $vA, (VSLDOI_swapped_get_imm $in))>;
906 def:Pat<(vpkuwum_swapped_shuffle v16i8:$vA, v16i8:$vB),
907 (VPKUWUM $vB, $vA)>;
908 def:Pat<(vpkuhum_swapped_shuffle v16i8:$vA, v16i8:$vB),
909 (VPKUHUM $vB, $vA)>;
912 def:Pat<(vmrglb_unary_shuffle v16i8:$vA, undef),
913 (VMRGLB $vA, $vA)>;
914 def:Pat<(vmrglh_unary_shuffle v16i8:$vA, undef),
915 (VMRGLH $vA, $vA)>;
916 def:Pat<(vmrglw_unary_shuffle v16i8:$vA, undef),
917 (VMRGLW $vA, $vA)>;
918 def:Pat<(vmrghb_unary_shuffle v16i8:$vA, undef),
919 (VMRGHB $vA, $vA)>;
920 def:Pat<(vmrghh_unary_shuffle v16i8:$vA, undef),
921 (VMRGHH $vA, $vA)>;
922 def:Pat<(vmrghw_unary_shuffle v16i8:$vA, undef),
923 (VMRGHW $vA, $vA)>;
928 def:Pat<(vmrglb_swapped_shuffle v16i8:$vA, v16i8:$vB),
929 (VMRGLB $vB, $vA)>;
930 def:Pat<(vmrglh_swapped_shuffle v16i8:$vA, v16i8:$vB),
931 (VMRGLH $vB, $vA)>;
932 def:Pat<(vmrglw_swapped_shuffle v16i8:$vA, v16i8:$vB),
933 (VMRGLW $vB, $vA)>;
934 def:Pat<(vmrghb_swapped_shuffle v16i8:$vA, v16i8:$vB),
935 (VMRGHB $vB, $vA)>;
936 def:Pat<(vmrghh_swapped_shuffle v16i8:$vA, v16i8:$vB),
937 (VMRGHH $vB, $vA)>;
938 def:Pat<(vmrghw_swapped_shuffle v16i8:$vA, v16i8:$vB),
939 (VMRGHW $vB, $vA)>;
942 def : Pat<(vnot_ppc v4i32:$vA), (VNOR $vA, $vA)>;
949 def : Pat<(fmul v4f32:$vA, v4f32:$vB),
950 (VMADDFP $vA, $vB,
966 def : Pat<(PPCvperm v16i8:$vA, v16i8:$vB, v16i8:$vC),
967 (VPERM $vA, $vB, $vC)>;
973 def : Pat<(v16i8 (shl v16i8:$vA, v16i8:$vB)),
974 (v16i8 (VSLB $vA, $vB))>;
975 def : Pat<(v8i16 (shl v8i16:$vA, v8i16:$vB)),
976 (v8i16 (VSLH $vA, $vB))>;
977 def : Pat<(v4i32 (shl v4i32:$vA, v4i32:$vB)),
978 (v4i32 (VSLW $vA, $vB))>;
980 def : Pat<(v16i8 (srl v16i8:$vA, v16i8:$vB)),
981 (v16i8 (VSRB $vA, $vB))>;
982 def : Pat<(v8i16 (srl v8i16:$vA, v8i16:$vB)),
983 (v8i16 (VSRH $vA, $vB))>;
984 def : Pat<(v4i32 (srl v4i32:$vA, v4i32:$vB)),
985 (v4i32 (VSRW $vA, $vB))>;
987 def : Pat<(v16i8 (sra v16i8:$vA, v16i8:$vB)),
988 (v16i8 (VSRAB $vA, $vB))>;
989 def : Pat<(v8i16 (sra v8i16:$vA, v8i16:$vB)),
990 (v8i16 (VSRAH $vA, $vB))>;
991 def : Pat<(v4i32 (sra v4i32:$vA, v4i32:$vB)),
992 (v4i32 (VSRAW $vA, $vB))>;
995 def : Pat<(v4i32 (fp_to_sint v4f32:$vA)),
996 (VCTSXS_0 $vA)>;
997 def : Pat<(v4i32 (fp_to_uint v4f32:$vA)),
998 (VCTUXS_0 $vA)>;
999 def : Pat<(v4f32 (sint_to_fp v4i32:$vA)),
1000 (VCFSX_0 $vA)>;
1001 def : Pat<(v4f32 (uint_to_fp v4i32:$vA)),
1002 (VCFUX_0 $vA)>;
1005 def : Pat<(v4f32 (ffloor v4f32:$vA)),
1006 (VRFIM $vA)>;
1007 def : Pat<(v4f32 (fceil v4f32:$vA)),
1008 (VRFIP $vA)>;
1009 def : Pat<(v4f32 (ftrunc v4f32:$vA)),
1010 (VRFIZ $vA)>;
1011 def : Pat<(v4f32 (fnearbyint v4f32:$vA)),
1012 (VRFIN $vA)>;
1029 def VMULUWM : VXForm_1<137, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
1030 "vmuluwm $vD, $vA, $vB", IIC_VecGeneral,
1031 [(set v4i32:$vD, (mul v4i32:$vA, v4i32:$vB))]>;
1039 def VMRGEW : VXForm_1<1932, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
1040 "vmrgew $vD, $vA, $vB", IIC_VecFP,
1041 [(set v16i8:$vD, (vmrgew_shuffle v16i8:$vA, v16i8:$vB))]>;
1042 def VMRGOW : VXForm_1<1676, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
1043 "vmrgow $vD, $vA, $vB", IIC_VecFP,
1044 [(set v16i8:$vD, (vmrgow_shuffle v16i8:$vA, v16i8:$vB))]>;
1047 def:Pat<(vmrgew_unary_shuffle v16i8:$vA, undef),
1048 (VMRGEW $vA, $vA)>;
1049 def:Pat<(vmrgow_unary_shuffle v16i8:$vA, undef),
1050 (VMRGOW $vA, $vA)>;
1055 def:Pat<(vmrgew_swapped_shuffle v16i8:$vA, v16i8:$vB),
1056 (VMRGEW $vB, $vA)>;
1057 def:Pat<(vmrgow_swapped_shuffle v16i8:$vA, v16i8:$vB),
1058 (VMRGOW $vB, $vA)>;
1063 def VSLD : VXForm_1<1476, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
1064 "vsld $vD, $vA, $vB", IIC_VecGeneral,
1065 [(set v2i64:$vD, (shl v2i64:$vA, v2i64:$vB))]>;
1066 def VSRD : VXForm_1<1732, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
1067 "vsrd $vD, $vA, $vB", IIC_VecGeneral,
1068 [(set v2i64:$vD, (srl v2i64:$vA, v2i64:$vB))]>;
1069 def VSRAD : VXForm_1<964, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
1070 "vsrad $vD, $vA, $vB", IIC_VecGeneral,
1071 [(set v2i64:$vD, (sra v2i64:$vA, v2i64:$vB))]>;
1075 def VADDUDM : VXForm_1<192, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
1076 "vaddudm $vD, $vA, $vB", IIC_VecGeneral,
1077 [(set v2i64:$vD, (add v2i64:$vA, v2i64:$vB))]>;
1078 def VADDUQM : VXForm_1<256, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
1079 "vadduqm $vD, $vA, $vB", IIC_VecGeneral,
1080 [(set v1i128:$vD, (add v1i128:$vA, v1i128:$vB))]>;
1089 def VSUBUDM : VXForm_1<1216, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
1090 "vsubudm $vD, $vA, $vB", IIC_VecGeneral,
1091 [(set v2i64:$vD, (sub v2i64:$vA, v2i64:$vB))]>;
1094 def VSUBUQM : VXForm_1<1280, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
1095 "vsubuqm $vD, $vA, $vB", IIC_VecGeneral,
1096 [(set v1i128:$vD, (sub v1i128:$vA, v1i128:$vB))]>;
1140 def VEQV : VXForm_1<1668, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
1141 "veqv $vD, $vA, $vB", IIC_VecGeneral,
1142 [(set v4i32:$vD, (vnot_ppc (xor v4i32:$vA, v4i32:$vB)))]>;
1143 def VNAND : VXForm_1<1412, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
1144 "vnand $vD, $vA, $vB", IIC_VecGeneral,
1145 [(set v4i32:$vD, (vnot_ppc (and v4i32:$vA, v4i32:$vB)))]>;
1148 def VORC : VXForm_1<1348, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
1149 "vorc $vD, $vA, $vB", IIC_VecGeneral,
1150 [(set v4i32:$vD, (or v4i32:$vA,
1154 def VCMPEQUD : VCMP <199, "vcmpequd $vD, $vA, $vB" , v2i64>;
1155 def VCMPEQUDo : VCMPo<199, "vcmpequd. $vD, $vA, $vB", v2i64>;
1156 def VCMPGTSD : VCMP <967, "vcmpgtsd $vD, $vA, $vB" , v2i64>;
1157 def VCMPGTSDo : VCMPo<967, "vcmpgtsd. $vD, $vA, $vB", v2i64>;
1158 def VCMPGTUD : VCMP <711, "vcmpgtud $vD, $vA, $vB" , v2i64>;
1159 def VCMPGTUDo : VCMPo<711, "vcmpgtud. $vD, $vA, $vB", v2i64>;
1178 def VPKUDUM : VXForm_1<1102, (outs vrrc:$vD), (ins vrrc:$vA, vrrc:$vB),
1179 "vpkudum $vD, $vA, $vB", IIC_VecFP,
1181 (vpkudum_shuffle v16i8:$vA, v16i8:$vB))]>;
1190 def:Pat<(vpkudum_unary_shuffle v16i8:$vA, undef),
1191 (VPKUDUM $vA, $vA)>;
1192 def:Pat<(vpkudum_swapped_shuffle v16i8:$vA, v16i8:$vB),
1193 (VPKUDUM $vB, $vA)>;