5 implementations of MultiplyAddEstimate
System.Private.CoreLib (5)
src\runtime\src\libraries\System.Private.CoreLib\src\System\Numerics\Vector_1.cs (1)
1133static Vector<T> ISimdVector<Vector<T>, T>.MultiplyAddEstimate(Vector<T> left, Vector<T> right, Vector<T> addend) => Vector.MultiplyAddEstimate(left, right, addend);
src\runtime\src\libraries\System.Private.CoreLib\src\System\Runtime\Intrinsics\Vector128_1.cs (1)
796static Vector128<T> ISimdVector<Vector128<T>, T>.MultiplyAddEstimate(Vector128<T> left, Vector128<T> right, Vector128<T> addend) => Vector128.MultiplyAddEstimate(left, right, addend);
src\runtime\src\libraries\System.Private.CoreLib\src\System\Runtime\Intrinsics\Vector256_1.cs (1)
784static Vector256<T> ISimdVector<Vector256<T>, T>.MultiplyAddEstimate(Vector256<T> left, Vector256<T> right, Vector256<T> addend) => Vector256.MultiplyAddEstimate(left, right, addend);
src\runtime\src\libraries\System.Private.CoreLib\src\System\Runtime\Intrinsics\Vector512_1.cs (1)
784static Vector512<T> ISimdVector<Vector512<T>, T>.MultiplyAddEstimate(Vector512<T> left, Vector512<T> right, Vector512<T> addend) => Vector512.MultiplyAddEstimate(left, right, addend);
src\runtime\src\libraries\System.Private.CoreLib\src\System\Runtime\Intrinsics\Vector64_1.cs (1)
853static Vector64<T> ISimdVector<Vector64<T>, T>.MultiplyAddEstimate(Vector64<T> left, Vector64<T> right, Vector64<T> addend) => Vector64.MultiplyAddEstimate(left, right, addend);
153 references to MultiplyAddEstimate
System.Private.CoreLib (153)
src\runtime\src\libraries\System.Private.CoreLib\src\System\Numerics\Vector_1.cs (1)
1131/// <inheritdoc cref="ISimdVector{TSelf, T}.MultiplyAddEstimate(TSelf, TSelf, TSelf)" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Runtime\Intrinsics\Vector128_1.cs (1)
794/// <inheritdoc cref="ISimdVector{TSelf, T}.MultiplyAddEstimate(TSelf, TSelf, TSelf)" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Runtime\Intrinsics\Vector256_1.cs (1)
782/// <inheritdoc cref="ISimdVector{TSelf, T}.MultiplyAddEstimate(TSelf, TSelf, TSelf)" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Runtime\Intrinsics\Vector512_1.cs (1)
782/// <inheritdoc cref="ISimdVector{TSelf, T}.MultiplyAddEstimate(TSelf, TSelf, TSelf)" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Runtime\Intrinsics\Vector64_1.cs (1)
851/// <inheritdoc cref="ISimdVector{TSelf, T}.MultiplyAddEstimate(TSelf, TSelf, TSelf)" />
src\runtime\src\libraries\System.Private.CoreLib\src\System\Runtime\Intrinsics\VectorMath.cs (148)
91result = TVectorDouble.MultiplyAddEstimate( 92TVectorDouble.MultiplyAddEstimate( 102result = TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(-0.5), x2, TVectorDouble.One); 247result = TVectorSingle.MultiplyAddEstimate(TVectorSingle.Create(-0.5f), x2, TVectorSingle.One); 526TVectorDouble dn = TVectorDouble.MultiplyAddEstimate(x, TVectorDouble.Create(V_TBL_LN2), TVectorDouble.Create(V_EXPF_HUGE)); 536TVectorDouble r = TVectorDouble.MultiplyAddEstimate(dn, TVectorDouble.Create(-V_LN2_HEAD), x); 537r = TVectorDouble.MultiplyAddEstimate(dn, TVectorDouble.Create(-V_LN2_TAIL), r); 544TVectorDouble poly = TVectorDouble.MultiplyAddEstimate( 545TVectorDouble.MultiplyAddEstimate( 546TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C12), r, TVectorDouble.Create(C11)), 548TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C10), r, TVectorDouble.Create(C09))), 550TVectorDouble.MultiplyAddEstimate( 551TVectorDouble.MultiplyAddEstimate( 552TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C08), r, TVectorDouble.Create(C07)), 554TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C06), r, TVectorDouble.Create(C05))), 556TVectorDouble.MultiplyAddEstimate( 557TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C04), r, TVectorDouble.Create(C03)), 689TVectorDouble poly = TVectorDouble.MultiplyAddEstimate( 691TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C6), r, TVectorDouble.Create(C5)), 692TVectorDouble.MultiplyAddEstimate( 694TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C4), r, TVectorDouble.Create(C3)), 695TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C2), r, TVectorDouble.Create(C1)) 805rTail += TVectorDouble.MultiplyAddEstimate(xHead, xHead, -xx); 806rTail = TVectorDouble.MultiplyAddEstimate(xHead * 2, xTail, rTail); 807rTail = TVectorDouble.MultiplyAddEstimate(xTail, xTail, rTail); 814rTailTmp += TVectorDouble.MultiplyAddEstimate(yHead, yHead, -yy); 815rTailTmp = TVectorDouble.MultiplyAddEstimate(yHead * 2, yTail, rTailTmp); 816rTailTmp = TVectorDouble.MultiplyAddEstimate(yTail, yTail, rTailTmp); 879return TVectorDouble.Sqrt(TVectorDouble.MultiplyAddEstimate(x, x, y * y)); 910return TVector.MultiplyAddEstimate(x, TVector.One - amount, y * amount); 1032TVectorDouble poly = TVectorDouble.MultiplyAddEstimate( 1034TVectorDouble.MultiplyAddEstimate( 1037TVectorDouble.MultiplyAddEstimate( 1038TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C19), r, TVectorDouble.Create(C18)), 1040TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C17), r, TVectorDouble.Create(C16)))), 1041TVectorDouble.MultiplyAddEstimate( 1043TVectorDouble.MultiplyAddEstimate( 1045TVectorDouble.MultiplyAddEstimate( 1046TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C15), r, TVectorDouble.Create(C14)), 1048TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C13), r, TVectorDouble.Create(C12))), 1049TVectorDouble.MultiplyAddEstimate( 1050TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C11), r, TVectorDouble.Create(C10)), 1052TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C09), r, TVectorDouble.Create(C08)))), 1053TVectorDouble.MultiplyAddEstimate( 1055TVectorDouble.MultiplyAddEstimate( 1056TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C07), r, TVectorDouble.Create(C06)), 1058TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C05), r, TVectorDouble.Create(C04))), 1059TVectorDouble.MultiplyAddEstimate( 1060TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C03), r, TVectorDouble.Create(C02)), 1071TVectorDouble.MultiplyAddEstimate( 1074TVectorDouble.MultiplyAddEstimate(n, TVectorDouble.Create(LN2_TAIL), poly) 1206TVectorSingle q = TVectorSingle.MultiplyAddEstimate( 1207TVectorSingle.MultiplyAddEstimate( 1210TVectorSingle.MultiplyAddEstimate(TVectorSingle.Create(C09), r, TVectorSingle.Create(C08))), 1212TVectorSingle.MultiplyAddEstimate( 1213TVectorSingle.MultiplyAddEstimate( 1214TVectorSingle.MultiplyAddEstimate(TVectorSingle.Create(C07), r, TVectorSingle.Create(C06)), 1216TVectorSingle.MultiplyAddEstimate(TVectorSingle.Create(C05), r, TVectorSingle.Create(C04))), 1218TVectorSingle.MultiplyAddEstimate( 1219TVectorSingle.MultiplyAddEstimate(TVectorSingle.Create(C03), r, TVectorSingle.Create(C02)), 1229TVectorSingle.MultiplyAddEstimate(n, TVectorSingle.Create(V_LN2), q) 1350TVectorDouble poly = TVectorDouble.MultiplyAddEstimate( 1352TVectorDouble.MultiplyAddEstimate( 1355TVectorDouble.MultiplyAddEstimate( 1356TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C19), r, TVectorDouble.Create(C18)), 1358TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C17), r, TVectorDouble.Create(C16)))), 1359TVectorDouble.MultiplyAddEstimate( 1361TVectorDouble.MultiplyAddEstimate( 1363TVectorDouble.MultiplyAddEstimate( 1364TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C15), r, TVectorDouble.Create(C14)), 1366TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C13), r, TVectorDouble.Create(C12))), 1367TVectorDouble.MultiplyAddEstimate( 1368TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C11), r, TVectorDouble.Create(C10)), 1370TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C09), r, TVectorDouble.Create(C08)))), 1371TVectorDouble.MultiplyAddEstimate( 1373TVectorDouble.MultiplyAddEstimate( 1374TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C07), r, TVectorDouble.Create(C06)), 1376TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C05), r, TVectorDouble.Create(C04))), 1377TVectorDouble.MultiplyAddEstimate( 1378TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C03), r, TVectorDouble.Create(C02)), 1389TVectorDouble.MultiplyAddEstimate( 1392TVectorDouble.MultiplyAddEstimate(poly, TVectorDouble.Create(LN2_TAIL), n) 1525TVectorSingle poly = TVectorSingle.MultiplyAddEstimate( 1526TVectorSingle.MultiplyAddEstimate(TVectorSingle.Create(C9), r, TVectorSingle.Create(C8)), 1528TVectorSingle.MultiplyAddEstimate( 1529TVectorSingle.MultiplyAddEstimate( 1530TVectorSingle.MultiplyAddEstimate(TVectorSingle.Create(C7), r, TVectorSingle.Create(C6)), 1532TVectorSingle.MultiplyAddEstimate(TVectorSingle.Create(C5), r, TVectorSingle.Create(C4))), 1534TVectorSingle.MultiplyAddEstimate( 1535TVectorSingle.MultiplyAddEstimate(TVectorSingle.Create(C3), r, TVectorSingle.Create(C2)), 1907cosResult = TVectorDouble.MultiplyAddEstimate( 1908TVectorDouble.MultiplyAddEstimate( 1920sinResult = TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(-0.16666666666666666), x3, x); 1921cosResult = TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(-0.5), x2, TVectorDouble.One); 2058sinResult = TVectorSingle.MultiplyAddEstimate(TVectorSingle.Create(-0.16666667f), x3, x); 2059cosResult = TVectorSingle.MultiplyAddEstimate(TVectorSingle.Create(-0.5f), x2, TVectorSingle.One); 2232result = TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(-0.16666666666666666), x3, x); 2374result = TVectorSingle.MultiplyAddEstimate(TVectorSingle.Create(-0.16666667f), x3, x); 2524return TVectorDouble.MultiplyAddEstimate( 2527TVectorDouble.MultiplyAddEstimate(r, rr, ((TVectorDouble.One + t) - s)) 2546return TVectorDouble.MultiplyAddEstimate( 2547TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C6), r2, TVectorDouble.Create(C5)), 2549TVectorDouble.MultiplyAddEstimate( 2550TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C4), r2, TVectorDouble.Create(C3)), 2552TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C2), r2, TVectorDouble.Create(C1)) 2564return TVectorDouble.MultiplyAddEstimate( 2567TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(-0.5), r2, TVectorDouble.One) 2583return TVectorDouble.MultiplyAddEstimate( 2584TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C4), r2, TVectorDouble.Create(C3)), 2586TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(C2), r2, TVectorDouble.Create(C1)) 2601return TVectorDouble.MultiplyAddEstimate(CosSinglePoly(x), x4, s); 2823TVectorDouble sinPoly = TVectorDouble.MultiplyAddEstimate( 2826TVectorDouble.MultiplyAddEstimate( 2827TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(S5), r2, TVectorDouble.Create(S4)), 2829TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(S3), r2, TVectorDouble.Create(S2)) 2833return r - TVectorDouble.MultiplyAddEstimate( 2836TVectorDouble.MultiplyAddEstimate( 2837TVectorDouble.MultiplyAddEstimate(rr, TVectorDouble.Create(0.5), -(r3 * sinPoly)), 2860TVectorDouble poly = TVectorDouble.MultiplyAddEstimate( 2861TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(S6), r2, TVectorDouble.Create(S5)), 2863TVectorDouble.MultiplyAddEstimate( 2864TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(S4), r2, TVectorDouble.Create(S3)), 2866TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(S2), r2, TVectorDouble.Create(S1))) 2869return TVectorDouble.MultiplyAddEstimate(poly, r3, r); 2885return TVectorDouble.MultiplyAddEstimate( 2886TVectorDouble.MultiplyAddEstimate( 2887TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(S4), r2, TVectorDouble.Create(S3)), 2889TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(S2), r2, TVectorDouble.Create(S1))), 2910TVectorDouble npi2 = TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(V_TWO_BY_PI), ax, TVectorDouble.Create(V_ALM_SHIFT)); 2914TVectorDouble rhead = TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(-V_PI_BY_TWO_1), npi2, ax); 2918rtail = TVectorDouble.MultiplyAddEstimate(TVectorDouble.Create(V_PI_BY_TWO_2_TAIL), npi2, -(rhead - r - rtail)); 3131polyNum = TVectorDouble.MultiplyAddEstimate(polyNum, r, TVectorDouble.Create(C5)); 3132polyNum = TVectorDouble.MultiplyAddEstimate(polyNum, r, TVectorDouble.Create(C4)); 3133polyNum = TVectorDouble.MultiplyAddEstimate(polyNum, r, TVectorDouble.Create(C3)); 3134polyNum = TVectorDouble.MultiplyAddEstimate(polyNum, r, TVectorDouble.Create(C2)); 3135polyNum = TVectorDouble.MultiplyAddEstimate(polyNum, r, TVectorDouble.Create(C1)); 3139polyDen = TVectorDouble.MultiplyAddEstimate(polyDen, r, TVectorDouble.Create(D4)); 3140polyDen = TVectorDouble.MultiplyAddEstimate(polyDen, r, TVectorDouble.Create(D3)); 3141polyDen = TVectorDouble.MultiplyAddEstimate(polyDen, r, TVectorDouble.Create(D2)); 3142polyDen = TVectorDouble.MultiplyAddEstimate(polyDen, r, TVectorDouble.Create(D1)); 3239poly = TVectorDouble.MultiplyAddEstimate(poly, g, TVectorDouble.Create(C8)); 3240poly = TVectorDouble.MultiplyAddEstimate(poly, g, TVectorDouble.Create(C7)); 3241poly = TVectorDouble.MultiplyAddEstimate(poly, g, TVectorDouble.Create(C6)); 3242poly = TVectorDouble.MultiplyAddEstimate(poly, g, TVectorDouble.Create(C5)); 3243poly = TVectorDouble.MultiplyAddEstimate(poly, g, TVectorDouble.Create(C4)); 3244poly = TVectorDouble.MultiplyAddEstimate(poly, g, TVectorDouble.Create(C3)); 3245poly = TVectorDouble.MultiplyAddEstimate(poly, g, TVectorDouble.Create(C2)); 3246poly = TVectorDouble.MultiplyAddEstimate(poly, g, TVectorDouble.Create(C1));