@@ -18070,11 +18070,9 @@ static SDValue getZeroPaddedAdd(const SDLoc &DL, SDValue A, SDValue B,
1807018070 std::swap(AVT, BVT);
1807118071 }
1807218072
18073- SDValue BPart = DAG.getNode(ISD::EXTRACT_SUBVECTOR, DL, AVT, B,
18074- DAG.getVectorIdxConstant(0, DL));
18073+ SDValue BPart = DAG.getExtractSubvector(DL, AVT, B, 0);
1807518074 SDValue Res = DAG.getNode(ISD::ADD, DL, AVT, A, BPart);
18076- return DAG.getNode(ISD::INSERT_SUBVECTOR, DL, BVT, B, Res,
18077- DAG.getVectorIdxConstant(0, DL));
18075+ return DAG.getInsertSubvector(DL, B, Res, 0);
1807818076}
1807918077
1808018078static SDValue foldReduceOperandViaVQDOT(SDValue InVec, const SDLoc &DL,
@@ -18089,7 +18087,7 @@ static SDValue foldReduceOperandViaVQDOT(SDValue InVec, const SDLoc &DL,
1808918087 return SDValue();
1809018088
1809118089 // Recurse through adds (since generic dag canonicalizes to that
18092- // form).
18090+ // form). TODO: Handle disjoint or here.
1809318091 if (InVec->getOpcode() == ISD::ADD) {
1809418092 SDValue A = InVec.getOperand(0);
1809518093 SDValue B = InVec.getOperand(1);
0 commit comments