@@ -509,7 +509,6 @@ namespace {
509509 SDValue visitFMUL(SDNode *N);
510510 template <class MatchContextClass> SDValue visitFMA(SDNode *N);
511511 SDValue visitFMAD(SDNode *N);
512- SDValue visitFMULADD(SDNode *N);
513512 SDValue visitFDIV(SDNode *N);
514513 SDValue visitFREM(SDNode *N);
515514 SDValue visitFSQRT(SDNode *N);
@@ -1992,7 +1991,6 @@ SDValue DAGCombiner::visit(SDNode *N) {
19921991 case ISD::FMUL: return visitFMUL(N);
19931992 case ISD::FMA: return visitFMA<EmptyMatchContext>(N);
19941993 case ISD::FMAD: return visitFMAD(N);
1995- case ISD::FMULADD: return visitFMULADD(N);
19961994 case ISD::FDIV: return visitFDIV(N);
19971995 case ISD::FREM: return visitFREM(N);
19981996 case ISD::FSQRT: return visitFSQRT(N);
@@ -18446,21 +18444,6 @@ SDValue DAGCombiner::visitFMAD(SDNode *N) {
1844618444 return SDValue();
1844718445}
1844818446
18449- SDValue DAGCombiner::visitFMULADD(SDNode *N) {
18450- SDValue N0 = N->getOperand(0);
18451- SDValue N1 = N->getOperand(1);
18452- SDValue N2 = N->getOperand(2);
18453- EVT VT = N->getValueType(0);
18454- SDLoc DL(N);
18455-
18456- // Constant fold FMULADD.
18457- if (SDValue C =
18458- DAG.FoldConstantArithmetic(ISD::FMULADD, DL, VT, {N0, N1, N2}))
18459- return C;
18460-
18461- return SDValue();
18462- }
18463-
1846418447// Combine multiple FDIVs with the same divisor into multiple FMULs by the
1846518448// reciprocal.
1846618449// E.g., (a / D; b / D;) -> (recip = 1.0 / D; a * recip; b * recip)
0 commit comments