Lines Matching defs:Est

646     SDValue buildSqrtNROneConst(SDValue Arg, SDValue Est, unsigned Iterations,
648 SDValue buildSqrtNRTwoConst(SDValue Arg, SDValue Est, unsigned Iterations,
28073 if (SDValue Est = TLI.getRecipEstimate(Op, DAG, Enabled, Iterations)) {
28074 AddToWorklist(Est.getNode());
28080 // Newton iterations: Est = Est + Est (N - Arg * Est)
28083 SDValue MulEst = Est;
28086 MulEst = DAG.getNode(ISD::FMUL, DL, VT, N, Est, Flags);
28097 NewEst = DAG.getNode(ISD::FMUL, DL, VT, Est, NewEst, Flags);
28100 Est = DAG.getNode(ISD::FADD, DL, VT, MulEst, NewEst, Flags);
28101 AddToWorklist(Est.getNode());
28105 Est = DAG.getNode(ISD::FMUL, DL, VT, Est, N, Flags);
28106 AddToWorklist(Est.getNode());
28109 return Est;
28121 SDValue DAGCombiner::buildSqrtNROneConst(SDValue Arg, SDValue Est,
28133 // Newton iterations: Est = Est * (1.5 - HalfArg * Est * Est)
28135 SDValue NewEst = DAG.getNode(ISD::FMUL, DL, VT, Est, Est, Flags);
28138 Est = DAG.getNode(ISD::FMUL, DL, VT, Est, NewEst, Flags);
28143 Est = DAG.getNode(ISD::FMUL, DL, VT, Est, Arg, Flags);
28145 return Est;
28153 SDValue DAGCombiner::buildSqrtNRTwoConst(SDValue Arg, SDValue Est,
28168 SDValue AE = DAG.getNode(ISD::FMUL, DL, VT, Arg, Est, Flags);
28169 SDValue AEE = DAG.getNode(ISD::FMUL, DL, VT, AE, Est, Flags);
28178 LHS = DAG.getNode(ISD::FMUL, DL, VT, Est, MinusHalf, Flags);
28184 Est = DAG.getNode(ISD::FMUL, DL, VT, LHS, RHS, Flags);
28187 return Est;
28215 if (SDValue Est =
28218 AddToWorklist(Est.getNode());
28221 Est = UseOneConstNR
28222 ? buildSqrtNROneConst(Op, Est, Iterations, Flags, Reciprocal)
28223 : buildSqrtNRTwoConst(Op, Est, Iterations, Flags, Reciprocal);
28232 Est = DAG.getNode(
28234 Test, TLI.getSqrtResultForDenormInput(Op, DAG), Est);
28236 return Est;