simdpp::fmsub(floatint-point)

From libsimdpp-docs
< fp
template<unsigned N, class E1, class E2, class E3>
Ret<N, _DETAIL_> fmsub( Vec1<N,E1> a, Vec2<N,E2> b, Vec3<N,E3> );

Performs a fused multiply-subtract operation of floating-point in three vectors, as if by a*b-c for each element. The implementation behaves as if the following set of overloads is provided:

Ret Vec1 Vec2 Vec3
float32 float32 float32 float32
float64 float64 float64 float64

The return type is a vector expression.

Parameters[edit]

a, b, c - floating-point vectors

Return value[edit]

A vector expression evaluating to a * b - c.

Equivalent operation[edit]

r0 = a0 * b0 - c0
 ...
rN = aN * bN - cN

See also[edit]