Lines Matching defs:ExtVT
11930 MVT ExtVT = MVT::getVectorVT(MVT::getIntegerVT(EltBits * Scale),
11935 DL, ExtVT, InputV, DAG);
12220 MVT ExtVT = VT;
12265 ExtVT = MVT::getVectorVT(MVT::i32, ExtVT.getSizeInBits() / 32);
12275 V2 = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, ExtVT, V2S);
12276 V2 = DAG.getBitcast(VT, DAG.getNode(X86ISD::VZEXT_MOVL, DL, ExtVT, V2));
12280 V2 = DAG.getNode(ISD::SCALAR_TO_VECTOR, DL, ExtVT, V2S);
12291 assert(VT == ExtVT && "Cannot change extended type when non-zeroable!");
12307 return DAG.getNode(MovOpc, DL, ExtVT, V1, V2);
12314 V2 = DAG.getNode(X86ISD::VZEXT_MOVL, DL, ExtVT, V2);
12315 if (ExtVT != VT)
17438 MVT ExtVT;
17443 ExtVT = MVT::v2i64;
17446 ExtVT = MVT::v4i32;
17451 ExtVT = Subtarget.hasVLX() ? MVT::v8i32 : MVT::v8i64;
17456 ExtVT = Subtarget.canExtendTo512DQ() ? MVT::v16i32 : MVT::v16i16;
17462 ExtVT = Subtarget.canExtendTo512BW() ? MVT::v32i16 : MVT::v32i8;
17469 ExtVT = MVT::v64i8;
17473 V1 = DAG.getNode(ISD::SIGN_EXTEND, DL, ExtVT, V1);
17474 V2 = DAG.getNode(ISD::SIGN_EXTEND, DL, ExtVT, V2);
17476 SDValue Shuffle = DAG.getVectorShuffle(ExtVT, DL, V1, V2, Mask);
17481 return DAG.getSetCC(DL, VT, DAG.getConstant(0, DL, ExtVT),
20243 MVT ExtVT = VT;
20249 ExtVT = MVT::getVectorVT(MVT::i32, NumElts);
20253 MVT WideVT = ExtVT;
20254 if (!ExtVT.is512BitVector() && !Subtarget.hasVLX()) {
20255 NumElts *= 512 / ExtVT.getSizeInBits();
20259 WideVT = MVT::getVectorVT(ExtVT.getVectorElementType(),
20269 if (VT != ExtVT) {
20633 MVT ExtVT = MVT::getVectorVT(MVT::i16, InVT.getSizeInBits()/16);
20634 In = DAG.getNode(ISD::SHL, DL, ExtVT,
20635 DAG.getBitcast(ExtVT, In),
20636 DAG.getConstant(ShiftInx, DL, ExtVT));
20679 MVT ExtVT = MVT::getVectorVT(EltVT, NumElts);
20680 In = DAG.getNode(ISD::SIGN_EXTEND, DL, ExtVT, In);
20681 InVT = ExtVT;
24363 MVT ExtVT = VT;
24369 ExtVT = MVT::getVectorVT(MVT::i32, NumElts);
24373 MVT WideVT = ExtVT;
24374 if (!ExtVT.is512BitVector() && !Subtarget.hasVLX()) {
24375 NumElts *= 512 / ExtVT.getSizeInBits();
24379 WideVT = MVT::getVectorVT(ExtVT.getVectorElementType(), NumElts);
24394 if (VT != ExtVT) {
29365 MVT ExtVT = MVT::getVectorVT(MVT::i16, NumElts / 2);
29366 if (supportedVectorShiftWithBaseAmnt(ExtVT, Subtarget, Opcode)) {
29372 SDValue BitMask = DAG.getConstant(-1, dl, ExtVT);
29373 BitMask = getTargetVShiftNode(LogicalX86Op, dl, ExtVT, BitMask,
29376 BitMask = getTargetVShiftByConstNode(LogicalX86Op, dl, ExtVT, BitMask,
29382 SDValue Res = getTargetVShiftNode(LogicalX86Op, dl, ExtVT,
29383 DAG.getBitcast(ExtVT, R), BaseShAmt,
29391 SDValue SignMask = DAG.getConstant(0x8080, dl, ExtVT);
29393 getTargetVShiftNode(LogicalX86Op, dl, ExtVT, SignMask, BaseShAmt,
29690 MVT ExtVT = MVT::getVectorVT(EvtSVT, VT.getVectorNumElements());
29692 R = DAG.getNode(ExtOpc, dl, ExtVT, R);
29693 Amt = DAG.getNode(ISD::ZERO_EXTEND, dl, ExtVT, Amt);
29695 DAG.getNode(Opc, dl, ExtVT, R, Amt));
29750 MVT ExtVT = MVT::getVectorVT(MVT::i16, VT.getVectorNumElements() / 2);
29784 Amt = DAG.getBitcast(ExtVT, Amt);
29785 Amt = getTargetVShiftByConstNode(X86ISD::VSHLI, dl, ExtVT, Amt, 5, DAG);
29817 ALo = DAG.getBitcast(ExtVT, ALo);
29818 AHi = DAG.getBitcast(ExtVT, AHi);
29819 RLo = DAG.getBitcast(ExtVT, RLo);
29820 RHi = DAG.getBitcast(ExtVT, RHi);
29823 SDValue MLo = getTargetVShiftByConstNode(X86OpcI, dl, ExtVT, RLo, 4, DAG);
29824 SDValue MHi = getTargetVShiftByConstNode(X86OpcI, dl, ExtVT, RHi, 4, DAG);
29825 RLo = SignBitSelect(ExtVT, ALo, MLo, RLo);
29826 RHi = SignBitSelect(ExtVT, AHi, MHi, RHi);
29829 ALo = DAG.getNode(ISD::ADD, dl, ExtVT, ALo, ALo);
29830 AHi = DAG.getNode(ISD::ADD, dl, ExtVT, AHi, AHi);
29833 MLo = getTargetVShiftByConstNode(X86OpcI, dl, ExtVT, RLo, 2, DAG);
29834 MHi = getTargetVShiftByConstNode(X86OpcI, dl, ExtVT, RHi, 2, DAG);
29835 RLo = SignBitSelect(ExtVT, ALo, MLo, RLo);
29836 RHi = SignBitSelect(ExtVT, AHi, MHi, RHi);
29839 ALo = DAG.getNode(ISD::ADD, dl, ExtVT, ALo, ALo);
29840 AHi = DAG.getNode(ISD::ADD, dl, ExtVT, AHi, AHi);
29843 MLo = getTargetVShiftByConstNode(X86OpcI, dl, ExtVT, RLo, 1, DAG);
29844 MHi = getTargetVShiftByConstNode(X86OpcI, dl, ExtVT, RHi, 1, DAG);
29845 RLo = SignBitSelect(ExtVT, ALo, MLo, RLo);
29846 RHi = SignBitSelect(ExtVT, AHi, MHi, RHi);
29850 RLo = getTargetVShiftByConstNode(X86ISD::VSRLI, dl, ExtVT, RLo, 8, DAG);
29851 RHi = getTargetVShiftByConstNode(X86ISD::VSRLI, dl, ExtVT, RHi, 8, DAG);
29857 MVT ExtVT = MVT::v8i32;
29863 ALo = DAG.getBitcast(ExtVT, ALo);
29864 AHi = DAG.getBitcast(ExtVT, AHi);
29865 RLo = DAG.getBitcast(ExtVT, RLo);
29866 RHi = DAG.getBitcast(ExtVT, RHi);
29867 SDValue Lo = DAG.getNode(Opc, dl, ExtVT, RLo, ALo);
29868 SDValue Hi = DAG.getNode(Opc, dl, ExtVT, RHi, AHi);
29869 Lo = getTargetVShiftByConstNode(X86ISD::VSRLI, dl, ExtVT, Lo, 16, DAG);
29870 Hi = getTargetVShiftByConstNode(X86ISD::VSRLI, dl, ExtVT, Hi, 16, DAG);
29884 MVT ExtVT = MVT::getVectorVT(MVT::i8, VT.getVectorNumElements() * 2);
29885 V0 = DAG.getBitcast(ExtVT, V0);
29886 V1 = DAG.getBitcast(ExtVT, V1);
29887 Sel = DAG.getBitcast(ExtVT, Sel);
29889 VT, DAG.getNode(X86ISD::BLENDV, dl, ExtVT, Sel, V0, V1));
30035 MVT ExtVT = MVT::getVectorVT(ExtSVT, NumElts / 2);
30049 if (supportedVectorShiftWithBaseAmnt(ExtVT, Subtarget, ShiftOpc)) {
30056 SDValue Lo = DAG.getBitcast(ExtVT, getUnpackl(DAG, DL, VT, Op1, Op0));
30057 SDValue Hi = DAG.getBitcast(ExtVT, getUnpackh(DAG, DL, VT, Op1, Op0));
30058 Lo = getTargetVShiftNode(ShiftOpc, DL, ExtVT, Lo, ScalarAmt,
30060 Hi = getTargetVShiftNode(ShiftOpc, DL, ExtVT, Hi, ScalarAmt,
30092 // Attempt to fold per-element (ExtVT) shift as unpack(y,x) << zext(z)
30094 supportedVectorVarShift(ExtVT, Subtarget, ShiftOpc)) {
30096 SDValue RLo = DAG.getBitcast(ExtVT, getUnpackl(DAG, DL, VT, Op1, Op0));
30097 SDValue RHi = DAG.getBitcast(ExtVT, getUnpackh(DAG, DL, VT, Op1, Op0));
30098 SDValue ALo = DAG.getBitcast(ExtVT, getUnpackl(DAG, DL, VT, AmtMod, Z));
30099 SDValue AHi = DAG.getBitcast(ExtVT, getUnpackh(DAG, DL, VT, AmtMod, Z));
30100 SDValue Lo = DAG.getNode(ShiftOpc, DL, ExtVT, RLo, ALo);
30101 SDValue Hi = DAG.getNode(ShiftOpc, DL, ExtVT, RHi, AHi);
30264 MVT ExtVT = MVT::getVectorVT(ExtSVT, NumElts / 2);
30280 SDValue Lo = DAG.getBitcast(ExtVT, getUnpackl(DAG, DL, VT, R, R));
30281 SDValue Hi = DAG.getBitcast(ExtVT, getUnpackh(DAG, DL, VT, R, R));
30282 Lo = getTargetVShiftNode(ShiftX86Opc, DL, ExtVT, Lo, BaseRotAmt,
30284 Hi = getTargetVShiftNode(ShiftX86Opc, DL, ExtVT, Hi, BaseRotAmt,
30299 (ConstantAmt || supportedVectorVarShift(ExtVT, Subtarget, ShiftOpc))) {
30300 SDValue RLo = DAG.getBitcast(ExtVT, getUnpackl(DAG, DL, VT, R, R));
30301 SDValue RHi = DAG.getBitcast(ExtVT, getUnpackh(DAG, DL, VT, R, R));
30302 SDValue ALo = DAG.getBitcast(ExtVT, getUnpackl(DAG, DL, VT, AmtMod, Z));
30303 SDValue AHi = DAG.getBitcast(ExtVT, getUnpackh(DAG, DL, VT, AmtMod, Z));
30304 SDValue Lo = DAG.getNode(ShiftOpc, DL, ExtVT, RLo, ALo);
30305 SDValue Hi = DAG.getNode(ShiftOpc, DL, ExtVT, RHi, AHi);
30367 Amt = DAG.getBitcast(ExtVT, Amt);
30368 Amt = DAG.getNode(ISD::SHL, DL, ExtVT, Amt, DAG.getConstant(5, DL, ExtVT));
33649 EVT ExtVT = VecOp.getValueType().changeVectorElementTypeToInteger();
33650 SDValue Split = DAG.getBitcast(ExtVT, N->getOperand(0));
37046 EVT ExtVT = EVT::getVectorVT(*TLO.DAG.getContext(), ExtSVT,
37050 Op.getOperand(1), TLO.DAG.getValueType(ExtVT));
42544 MVT ExtVT = VT.getSimpleVT();
42545 ExtVT = MVT::getVectorVT(ExtVT.getScalarType(),
42546 ExtSizeInBits / ExtVT.getScalarSizeInBits());
42547 SDValue ExtOp = TLO.DAG.getNode(Opc, DL, ExtVT, Ops);
47783 EVT ExtVT = VT.changeVectorElementType(MVT::i16);
47784 Src = DAG.getNode(ISD::SIGN_EXTEND, DL, ExtVT, Src);
52598 EVT ExtVT = Ext.getValueType();
52599 if (ExtVT.getVectorNumElements() != NumElems * 2) {
57947 EVT ExtVT) const {