Macro polyeval::estrin_fma

source ·
macro_rules! estrin_fma {
    ($x:expr; [$($coeffs:expr),* $(,)?]) => { ... };
    ($x:expr; $a:expr $(,)?) => { ... };
    ($x:expr; $a0:expr, $a1:expr $(,)?) => { ... };
    ($x:expr; $($coeffs:expr),+ $(,)?) => { ... };
    (let $x:expr; $($t:tt)*) => { ... };
    ($x:expr; $a0:expr; $($out:expr),+) => { ... };
    ($x:expr; $a0:expr, $a1:expr; $($out:expr),+) => { ... };
    ($x:expr; $a0:expr, $a1:expr, $($rest:expr),+; ) => { ... };
    ($x:expr; $a0:expr, $a1:expr, $($rest:expr),+; $($out:expr),+) => { ... };
}
Expand description

Evaluate a polynomial with Estrin’s scheme.

Same as estrin!, but uses “fused multiply-add” instructions.

The coefficients and the point of evaluation must be of a type which implements num_traits::MulAdd.