Lines Matching defs:SplatV

619       // SplatV = A2_tfrsi #imm
620 // OutV = V6_lvsplatb SplatV
621 Register SplatV = MRI.createVirtualRegister(&Hexagon::IntRegsRegClass);
622 BuildMI(MB, At, DL, TII.get(Hexagon::A2_tfrsi), SplatV)
626 .addReg(SplatV);
628 // SplatV = A2_tfrsi #imm:#imm:#imm:#imm
629 // OutV = V6_lvsplatw SplatV
630 Register SplatV = MRI.createVirtualRegister(&Hexagon::IntRegsRegClass);
634 BuildMI(MB, At, DL, TII.get(Hexagon::A2_tfrsi), SplatV)
637 BuildMI(MB, At, DL, TII.get(Hexagon::V6_lvsplatw), OutV).addReg(SplatV);
648 Register SplatV = MRI.createVirtualRegister(&Hexagon::IntRegsRegClass);
650 BuildMI(MB, At, DL, TII.get(Hexagon::S2_vsplatrb), SplatV)
654 .addReg(SplatV);
660 // SplatV = A2_tfrsi #imm
661 // OutV = V6_lvsplath SplatV
662 Register SplatV = MRI.createVirtualRegister(&Hexagon::IntRegsRegClass);
663 BuildMI(MB, At, DL, TII.get(Hexagon::A2_tfrsi), SplatV)
667 .addReg(SplatV);
669 // SplatV = A2_tfrsi #imm:#imm
670 // OutV = V6_lvsplatw SplatV
671 Register SplatV = MRI.createVirtualRegister(&Hexagon::IntRegsRegClass);
675 BuildMI(MB, At, DL, TII.get(Hexagon::A2_tfrsi), SplatV)
678 BuildMI(MB, At, DL, TII.get(Hexagon::V6_lvsplatw), OutV).addReg(SplatV);
689 // SplatV = A2_combine_ll Inp, Inp
690 // OutV = V6_lvsplatw SplatV
691 Register SplatV = MRI.createVirtualRegister(&Hexagon::IntRegsRegClass);
693 BuildMI(MB, At, DL, TII.get(Hexagon::A2_combine_ll), SplatV)
697 BuildMI(MB, At, DL, TII.get(Hexagon::V6_lvsplatw), OutV).addReg(SplatV);
704 // SplatV = A2_tfrsi #imm
705 Register SplatV = MRI.createVirtualRegister(&Hexagon::IntRegsRegClass);
706 BuildMI(MB, At, DL, TII.get(Hexagon::A2_tfrsi), SplatV)
708 MI.getOperand(1).ChangeToRegister(SplatV, false);
710 // OutV = V6_lvsplatw SplatV/Inp
807 auto isSplat = [] (ArrayRef<SDValue> Values, SDValue &SplatV) {
815 if (!SplatV.getNode())
816 SplatV = Values[i];
817 else if (SplatV != Values[i])
821 SplatV = Values[0];
826 SDValue SplatV;
827 bool IsSplat = isSplat(Words, SplatV);
828 if (IsSplat && isUndef(SplatV))
831 assert(SplatV.getNode());
832 if (isNullConstant(SplatV))
835 SDValue S = DAG.getNode(ISD::SPLAT_VECTOR, dl, WordTy, SplatV);
943 SDValue SplatV = DAG.getNode(ISD::SPLAT_VECTOR, dl, VecTy, Words[n]);
945 {HalfV, SplatV, DAG.getConstant(HwLen/2, dl, MVT::i32)});
2098 if (SDValue SplatV = getSplatValue(S, DAG); SplatV && UseShifts) {
2103 {DAG.getZExtOrTrunc(SplatV, dl, MVT::i32), Mask});