Home | History | Annotate | Download | only in SelectionDAG

Lines Matching defs:InVec

14969   SDValue InVec = N->getOperand(0);
14976 return InVec;
14978 EVT VT = InVec.getValueType();
14983 InVec == InVal.getOperand(0) && EltNo == InVal.getOperand(1))
14984 return InVec;
15002 if (InVec.getOpcode() == ISD::INSERT_VECTOR_ELT && InVec.hasOneUse()
15003 && isa<ConstantSDNode>(InVec.getOperand(2))) {
15004 unsigned OtherElt = InVec.getConstantOperandVal(2);
15008 InVec.getOperand(0), InVal, EltNo);
15010 return DAG.getNode(ISD::INSERT_VECTOR_ELT, SDLoc(InVec.getNode()),
15011 VT, NewOp, InVec.getOperand(1), InVec.getOperand(2));
15025 if (InVec.getOpcode() == ISD::BUILD_VECTOR && InVec.hasOneUse()) {
15026 Ops.append(InVec.getNode()->op_begin(),
15027 InVec.getNode()->op_end());
15028 } else if (InVec.isUndef()) {
15132 SDValue InVec = N->getOperand(0);
15133 EVT VT = InVec.getValueType();
15136 if (InVec.isUndef())
15139 if (InVec.getOpcode() == ISD::SCALAR_TO_VECTOR) {
15143 SDValue InOp = InVec.getOperand(0);
15146 return DAG.getSExtOrTrunc(InOp, SDLoc(InVec), NVT);
15160 InVec.getOpcode() == ISD::BUILD_VECTOR &&
15162 (InVec.hasOneUse() ||
15164 SDValue Elt = InVec.getOperand(ConstEltNo->getZExtValue());
15178 if (ConstEltNo && InVec.getOpcode() == ISD::BITCAST && InVec.hasOneUse() &&
15180 SDValue BCSrc = InVec.getOperand(0);
15189 if (InVec.getOpcode() == ISD::INSERT_VECTOR_ELT &&
15190 EltNo == InVec.getOperand(2)) {
15191 SDValue Elt = InVec.getOperand(1);
15201 if (ConstEltNo && InVec.getOpcode() == ISD::VECTOR_SHUFFLE) {
15203 ShuffleVectorSDNode *SVOp = cast<ShuffleVectorSDNode>(InVec);
15214 SVInVec = InVec->getOperand(0);
15216 SVInVec = InVec->getOperand(1);
15245 if (llvm::all_of(InVec->uses(), [&](SDNode *Use) {
15247 Use->getOperand(0) == InVec &&
15251 for (SDNode *Use : InVec->uses()) {
15256 if (SimplifyDemandedVectorElts(InVec, DemandedElts, true))
15269 if (InVec.getOpcode() == ISD::BITCAST) {
15271 if (!InVec.hasOneUse())
15274 EVT BCVT = InVec.getOperand(0).getValueType();
15279 InVec = InVec.getOperand(0);
15284 if (!LegalOperations && !ConstEltNo && InVec.hasOneUse() &&
15285 ISD::isNormalLoad(InVec.getNode()) &&
15286 !N->getOperand(1)->hasPredecessor(InVec.getNode())) {
15288 if (LoadSDNode *OrigLoad = dyn_cast<LoadSDNode>(InVec)) {
15309 if (ISD::isNormalLoad(InVec.getNode())) {
15310 LN0 = cast<LoadSDNode>(InVec);
15311 } else if (InVec.getOpcode() == ISD::SCALAR_TO_VECTOR &&
15312 InVec.getOperand(0).getValueType() == ExtVT &&
15313 ISD::isNormalLoad(InVec.getOperand(0).getNode())) {
15315 if (!InVec.hasOneUse())
15318 LN0 = cast<LoadSDNode>(InVec.getOperand(0));
15319 } else if ((SVN = dyn_cast<ShuffleVectorSDNode>(InVec))) {
15325 if (!InVec.hasOneUse())
15336 InVec = (Idx < (int)NumElems) ? InVec.getOperand(0) : InVec.getOperand(1);
15338 if (InVec.getOpcode() == ISD::BITCAST) {
15340 if (!InVec.hasOneUse())
15343 InVec = InVec.getOperand(0);
15345 if (ISD::isNormalLoad(InVec.getNode())) {
15346 LN0 = cast<LoadSDNode>(InVec);
17271 SDValue InVec = InVal->getOperand(0);
17273 auto InVecT = InVec.getValueType();
17291 Val = DAG.getVectorShuffle(InVecT, SDLoc(N), InVec,