Lines Matching defs:ExtVT
12193 MVT ExtVT = MVT::getVectorVT(MVT::getIntegerVT(EltBits * Scale),
12198 DL, ExtVT, InputV, DAG);
12484 MVT ExtVT = VT;
12529 ExtVT = MVT::getVectorVT(MVT::i32, ExtVT.getSizeInBits() / 32);
12539 V2 = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, ExtVT, V2S);
12540 V2 = DAG.getBitcast(VT, DAG.getNode(X86ISD::VZEXT_MOVL, DL, ExtVT, V2));
12544 V2 = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, ExtVT, V2S);
12555 assert(VT == ExtVT && "Cannot change extended type when non-zeroable!");
12571 return DAG.getNode(MovOpc, DL, ExtVT, V1, V2);
12578 V2 = DAG.getNode(X86ISD::VZEXT_MOVL, DL, ExtVT, V2);
12579 if (ExtVT != VT)
17745 MVT ExtVT;
17750 ExtVT = MVT::v2i64;
17753 ExtVT = MVT::v4i32;
17758 ExtVT = Subtarget.hasVLX() ? MVT::v8i32 : MVT::v8i64;
17763 ExtVT = Subtarget.canExtendTo512DQ() ? MVT::v16i32 : MVT::v16i16;
17769 ExtVT = Subtarget.canExtendTo512BW() ? MVT::v32i16 : MVT::v32i8;
17776 ExtVT = MVT::v64i8;
17780 V1 = DAG.getNode(ISD::SIGN_EXTEND, DL, ExtVT, V1);
17781 V2 = DAG.getNode(ISD::SIGN_EXTEND, DL, ExtVT, V2);
17783 SDValue Shuffle = DAG.getVectorShuffle(ExtVT, DL, V1, V2, Mask);
17788 return DAG.getSetCC(DL, VT, DAG.getConstant(0, DL, ExtVT),
20624 MVT ExtVT = VT;
20630 ExtVT = MVT::getVectorVT(MVT::i32, NumElts);
20634 MVT WideVT = ExtVT;
20635 if (!ExtVT.is512BitVector() && !Subtarget.hasVLX()) {
20636 NumElts *= 512 / ExtVT.getSizeInBits();
20640 WideVT = MVT::getVectorVT(ExtVT.getVectorElementType(), NumElts);
20649 if (VT != ExtVT) {
21014 MVT ExtVT = MVT::getVectorVT(MVT::i16, InVT.getSizeInBits()/16);
21015 In = DAG.getNode(ISD::SHL, DL, ExtVT,
21016 DAG.getBitcast(ExtVT, In),
21017 DAG.getConstant(ShiftInx, DL, ExtVT));
21060 MVT ExtVT = MVT::getVectorVT(EltVT, NumElts);
21061 In = DAG.getNode(ISD::SIGN_EXTEND, DL, ExtVT, In);
21062 InVT = ExtVT;
24860 MVT ExtVT = VT;
24866 ExtVT = MVT::getVectorVT(MVT::i32, NumElts);
24870 MVT WideVT = ExtVT;
24871 if (!ExtVT.is512BitVector() && !Subtarget.hasVLX()) {
24872 NumElts *= 512 / ExtVT.getSizeInBits();
24876 WideVT = MVT::getVectorVT(ExtVT.getVectorElementType(), NumElts);
24891 if (VT != ExtVT) {
30005 MVT ExtVT = MVT::getVectorVT(MVT::i16, NumElts / 2);
30006 if (supportedVectorShiftWithBaseAmnt(ExtVT, Subtarget, Opcode)) {
30012 SDValue BitMask = DAG.getAllOnesConstant(dl, ExtVT);
30013 BitMask = getTargetVShiftNode(LogicalX86Op, dl, ExtVT, BitMask,
30016 BitMask = getTargetVShiftByConstNode(LogicalX86Op, dl, ExtVT, BitMask,
30022 SDValue Res = getTargetVShiftNode(LogicalX86Op, dl, ExtVT,
30023 DAG.getBitcast(ExtVT, R), BaseShAmt,
30031 SDValue SignMask = DAG.getConstant(0x8080, dl, ExtVT);
30033 getTargetVShiftNode(LogicalX86Op, dl, ExtVT, SignMask, BaseShAmt,
30521 MVT ExtVT = MVT::getVectorVT(EvtSVT, NumElts);
30523 R = DAG.getNode(ExtOpc, dl, ExtVT, R);
30524 Amt = DAG.getNode(ISD::ZERO_EXTEND, dl, ExtVT, Amt);
30526 DAG.getNode(Opc, dl, ExtVT, R, Amt));
30580 MVT ExtVT = MVT::getVectorVT(MVT::i16, NumElts / 2);
30614 Amt = DAG.getBitcast(ExtVT, Amt);
30615 Amt = getTargetVShiftByConstNode(X86ISD::VSHLI, dl, ExtVT, Amt, 5, DAG);
30647 ALo = DAG.getBitcast(ExtVT, ALo);
30648 AHi = DAG.getBitcast(ExtVT, AHi);
30649 RLo = DAG.getBitcast(ExtVT, RLo);
30650 RHi = DAG.getBitcast(ExtVT, RHi);
30653 SDValue MLo = getTargetVShiftByConstNode(X86OpcI, dl, ExtVT, RLo, 4, DAG);
30654 SDValue MHi = getTargetVShiftByConstNode(X86OpcI, dl, ExtVT, RHi, 4, DAG);
30655 RLo = SignBitSelect(ExtVT, ALo, MLo, RLo);
30656 RHi = SignBitSelect(ExtVT, AHi, MHi, RHi);
30659 ALo = DAG.getNode(ISD::ADD, dl, ExtVT, ALo, ALo);
30660 AHi = DAG.getNode(ISD::ADD, dl, ExtVT, AHi, AHi);
30663 MLo = getTargetVShiftByConstNode(X86OpcI, dl, ExtVT, RLo, 2, DAG);
30664 MHi = getTargetVShiftByConstNode(X86OpcI, dl, ExtVT, RHi, 2, DAG);
30665 RLo = SignBitSelect(ExtVT, ALo, MLo, RLo);
30666 RHi = SignBitSelect(ExtVT, AHi, MHi, RHi);
30669 ALo = DAG.getNode(ISD::ADD, dl, ExtVT, ALo, ALo);
30670 AHi = DAG.getNode(ISD::ADD, dl, ExtVT, AHi, AHi);
30673 MLo = getTargetVShiftByConstNode(X86OpcI, dl, ExtVT, RLo, 1, DAG);
30674 MHi = getTargetVShiftByConstNode(X86OpcI, dl, ExtVT, RHi, 1, DAG);
30675 RLo = SignBitSelect(ExtVT, ALo, MLo, RLo);
30676 RHi = SignBitSelect(ExtVT, AHi, MHi, RHi);
30680 RLo = getTargetVShiftByConstNode(X86ISD::VSRLI, dl, ExtVT, RLo, 8, DAG);
30681 RHi = getTargetVShiftByConstNode(X86ISD::VSRLI, dl, ExtVT, RHi, 8, DAG);
30687 MVT ExtVT = MVT::v8i32;
30693 ALo = DAG.getBitcast(ExtVT, ALo);
30694 AHi = DAG.getBitcast(ExtVT, AHi);
30695 RLo = DAG.getBitcast(ExtVT, RLo);
30696 RHi = DAG.getBitcast(ExtVT, RHi);
30697 SDValue Lo = DAG.getNode(Opc, dl, ExtVT, RLo, ALo);
30698 SDValue Hi = DAG.getNode(Opc, dl, ExtVT, RHi, AHi);
30699 Lo = getTargetVShiftByConstNode(X86ISD::VSRLI, dl, ExtVT, Lo, 16, DAG);
30700 Hi = getTargetVShiftByConstNode(X86ISD::VSRLI, dl, ExtVT, Hi, 16, DAG);
30714 MVT ExtVT = MVT::getVectorVT(MVT::i8, NumElts * 2);
30715 V0 = DAG.getBitcast(ExtVT, V0);
30716 V1 = DAG.getBitcast(ExtVT, V1);
30717 Sel = DAG.getBitcast(ExtVT, Sel);
30719 VT, DAG.getNode(X86ISD::BLENDV, dl, ExtVT, Sel, V0, V1));
30865 MVT ExtVT = MVT::getVectorVT(ExtSVT, NumElts / 2);
30879 if (supportedVectorShiftWithBaseAmnt(ExtVT, Subtarget, ShiftOpc)) {
30886 SDValue Lo = DAG.getBitcast(ExtVT, getUnpackl(DAG, DL, VT, Op1, Op0));
30887 SDValue Hi = DAG.getBitcast(ExtVT, getUnpackh(DAG, DL, VT, Op1, Op0));
30888 Lo = getTargetVShiftNode(ShiftOpc, DL, ExtVT, Lo, ScalarAmt,
30890 Hi = getTargetVShiftNode(ShiftOpc, DL, ExtVT, Hi, ScalarAmt,
30922 // Attempt to fold per-element (ExtVT) shift as unpack(y,x) << zext(z)
30924 supportedVectorVarShift(ExtVT, Subtarget, ShiftOpc)) {
30926 SDValue RLo = DAG.getBitcast(ExtVT, getUnpackl(DAG, DL, VT, Op1, Op0));
30927 SDValue RHi = DAG.getBitcast(ExtVT, getUnpackh(DAG, DL, VT, Op1, Op0));
30928 SDValue ALo = DAG.getBitcast(ExtVT, getUnpackl(DAG, DL, VT, AmtMod, Z));
30929 SDValue AHi = DAG.getBitcast(ExtVT, getUnpackh(DAG, DL, VT, AmtMod, Z));
30930 SDValue Lo = DAG.getNode(ShiftOpc, DL, ExtVT, RLo, ALo);
30931 SDValue Hi = DAG.getNode(ShiftOpc, DL, ExtVT, RHi, AHi);
31094 MVT ExtVT = MVT::getVectorVT(ExtSVT, NumElts / 2);
31110 SDValue Lo = DAG.getBitcast(ExtVT, getUnpackl(DAG, DL, VT, R, R));
31111 SDValue Hi = DAG.getBitcast(ExtVT, getUnpackh(DAG, DL, VT, R, R));
31112 Lo = getTargetVShiftNode(ShiftX86Opc, DL, ExtVT, Lo, BaseRotAmt,
31114 Hi = getTargetVShiftNode(ShiftX86Opc, DL, ExtVT, Hi, BaseRotAmt,
31129 (ConstantAmt || supportedVectorVarShift(ExtVT, Subtarget, ShiftOpc))) {
31130 SDValue RLo = DAG.getBitcast(ExtVT, getUnpackl(DAG, DL, VT, R, R));
31131 SDValue RHi = DAG.getBitcast(ExtVT, getUnpackh(DAG, DL, VT, R, R));
31132 SDValue ALo = DAG.getBitcast(ExtVT, getUnpackl(DAG, DL, VT, AmtMod, Z));
31133 SDValue AHi = DAG.getBitcast(ExtVT, getUnpackh(DAG, DL, VT, AmtMod, Z));
31134 SDValue Lo = DAG.getNode(ShiftOpc, DL, ExtVT, RLo, ALo);
31135 SDValue Hi = DAG.getNode(ShiftOpc, DL, ExtVT, RHi, AHi);
31197 Amt = DAG.getBitcast(ExtVT, Amt);
31198 Amt = DAG.getNode(ISD::SHL, DL, ExtVT, Amt, DAG.getConstant(5, DL, ExtVT));
34528 EVT ExtVT = VecOp.getValueType().changeVectorElementTypeToInteger();
34529 SDValue Split = DAG.getBitcast(ExtVT, N->getOperand(0));
38040 EVT ExtVT = EVT::getVectorVT(*TLO.DAG.getContext(), ExtSVT,
38044 Op.getOperand(1), TLO.DAG.getValueType(ExtVT));
43623 MVT ExtVT = MVT::getVectorVT(VT.getSimpleVT().getScalarType(),
43626 Opc, DL, ExtVT, extractSubVector(SrcOp, 0, TLO.DAG, DL, SrcExtSize));
43681 MVT ExtVT = VT.getSimpleVT();
43682 ExtVT = MVT::getVectorVT(ExtVT.getScalarType(),
43683 ExtSizeInBits / ExtVT.getScalarSizeInBits());
43684 SDValue ExtOp = TLO.DAG.getNode(Opc, DL, ExtVT, Ops);
49004 EVT ExtVT = VT.changeVectorElementType(MVT::i16);
49005 Src = DAG.getNode(ISD::SIGN_EXTEND, DL, ExtVT, Src);
53846 EVT ExtVT = Ext.getValueType();
53847 if (ExtVT.getVectorNumElements() != NumElems * 2) {
59542 EVT ExtVT) const {