Lines Matching defs:InVec
19044 SDValue InVec = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, VecInVT, Src);
19047 {Op.getOperand(0), InVec});
19054 SDValue CvtVec = DAG.getNode(Op.getOpcode(), dl, VecVT, InVec);
19080 SDValue InVec = DAG.getNode(ISD::SCALAR_TO_VECTOR, dl, MVT::v2i64, Src);
19083 {Op.getOperand(0), InVec});
19090 SDValue CvtVec = DAG.getNode(Op.getOpcode(), dl, MVT::v2f16, InVec);
57004 SDValue InVec = N->getOperand(0);
57006 SDValue InVecBC = peekThroughBitcasts(InVec);
57007 EVT InVecVT = InVec.getValueType();
57039 if (ISD::isBuildVectorAllZeros(InVec.getNode()))
57042 if (ISD::isBuildVectorAllOnes(InVec.getNode())) {
57048 if (InVec.getOpcode() == ISD::BUILD_VECTOR)
57049 return DAG.getBuildVector(VT, DL, InVec->ops().slice(IdxVal, NumSubElts));
57056 InVec.getOpcode() == ISD::INSERT_SUBVECTOR && InVec.hasOneUse() &&
57057 IdxVal == InVec.getConstantOperandVal(2) &&
57058 InVec.getOperand(1).getValueSizeInBits() <= SizeInBits) {
57060 InVec.getOperand(0), N->getOperand(1));
57061 unsigned NewIdxVal = InVec.getConstantOperandVal(2) - IdxVal;
57063 InVec.getOperand(1),
57070 if (IdxVal != 0 && (InVec.getOpcode() == X86ISD::VBROADCAST ||
57071 InVec.getOpcode() == X86ISD::VBROADCAST_LOAD ||
57072 DAG.isSplatValue(InVec, /*AllowUndefs*/ false)))
57073 return extractSubVector(InVec, 0, DAG, DL, SizeInBits);
57076 if (IdxVal != 0 && InVec.getOpcode() == X86ISD::SUBV_BROADCAST_LOAD &&
57077 cast<MemIntrinsicSDNode>(InVec)->getMemoryVT() == VT)
57078 return extractSubVector(InVec, 0, DAG, DL, SizeInBits);
57115 unsigned InOpcode = InVec.getOpcode();
57116 if (InVec.hasOneUse()) {
57120 InVec.getOperand(0).getValueType() == MVT::v4i32) {
57121 return DAG.getNode(X86ISD::CVTSI2P, DL, VT, InVec.getOperand(0));
57125 InVec.getOperand(0).getValueType() == MVT::v4i32) {
57126 return DAG.getNode(X86ISD::CVTUI2P, DL, VT, InVec.getOperand(0));
57130 InVec.getOperand(0).getValueType() == MVT::v4f32) {
57131 return DAG.getNode(X86ISD::VFPEXT, DL, VT, InVec.getOperand(0));
57136 SDValue Src = InVec.getOperand(0);
57144 InVec.getOperand(0).getValueSizeInBits() >= SizeInBits) {
57145 SDValue Ext = InVec.getOperand(0);
57152 InVec.getOperand(0).getValueType().is256BitVector() &&
57153 InVec.getOperand(1).getValueType().is256BitVector() &&
57154 InVec.getOperand(2).getValueType().is256BitVector()) {
57155 SDValue Ext0 = extractSubVector(InVec.getOperand(0), 0, DAG, DL, 128);
57156 SDValue Ext1 = extractSubVector(InVec.getOperand(1), 0, DAG, DL, 128);
57157 SDValue Ext2 = extractSubVector(InVec.getOperand(2), 0, DAG, DL, 128);
57162 SDValue InVecSrc = InVec.getOperand(0);
57169 (IsExtractFree(InVec.getOperand(0)) ||
57170 IsExtractFree(InVec.getOperand(1))) &&
57173 extractSubVector(InVec.getOperand(0), IdxVal, DAG, DL, SizeInBits);
57175 extractSubVector(InVec.getOperand(1), IdxVal, DAG, DL, SizeInBits);
57177 return DAG.getNode(InOpcode, DL, VT, Ext0, Ext1, InVec.getOperand(2));
57183 extractSubVector(InVec.getOperand(0), IdxVal, DAG, DL, SizeInBits);
57192 InVec.getConstantOperandAPInt(1) == 32) {
57194 extractSubVector(InVec.getOperand(0), IdxVal, DAG, DL, SizeInBits);
57195 return DAG.getNode(InOpcode, DL, VT, Ext, InVec.getOperand(1));