pub(crate) trait SinCosPiBackend {
Show 13 methods
// Required methods
fn fma(&self, x: f64, y: f64, z: f64) -> f64;
fn dd_fma(&self, x: f64, y: f64, z: f64) -> f64;
fn dyad_fma(&self, x: f64, y: f64, z: f64) -> f64;
fn polyeval3(&self, x: f64, a0: f64, a1: f64, a2: f64) -> f64;
fn arg_reduce_pi_64(&self, x: f64) -> (f64, i64);
fn quick_mult_f64(&self, x: DoubleDouble, y: f64) -> DoubleDouble;
fn quick_mult(&self, x: DoubleDouble, y: DoubleDouble) -> DoubleDouble;
fn odd_integer(&self, x: f64) -> bool;
fn div(&self, x: DoubleDouble, y: DoubleDouble) -> DoubleDouble;
fn mul_add_f64(
&self,
a: DoubleDouble,
b: DoubleDouble,
c: f64,
) -> DoubleDouble;
fn quick_mul_add(
&self,
a: DoubleDouble,
b: DoubleDouble,
c: DoubleDouble,
) -> DoubleDouble;
fn mul_add(
&self,
a: DoubleDouble,
b: DoubleDouble,
c: DoubleDouble,
) -> DoubleDouble;
fn exact_mult(&self, x: f64, y: f64) -> DoubleDouble;
}Required Methods§
fn fma(&self, x: f64, y: f64, z: f64) -> f64
fn dd_fma(&self, x: f64, y: f64, z: f64) -> f64
fn dyad_fma(&self, x: f64, y: f64, z: f64) -> f64
fn polyeval3(&self, x: f64, a0: f64, a1: f64, a2: f64) -> f64
fn arg_reduce_pi_64(&self, x: f64) -> (f64, i64)
fn quick_mult_f64(&self, x: DoubleDouble, y: f64) -> DoubleDouble
fn quick_mult(&self, x: DoubleDouble, y: DoubleDouble) -> DoubleDouble
fn odd_integer(&self, x: f64) -> bool
fn div(&self, x: DoubleDouble, y: DoubleDouble) -> DoubleDouble
fn mul_add_f64(&self, a: DoubleDouble, b: DoubleDouble, c: f64) -> DoubleDouble
fn quick_mul_add( &self, a: DoubleDouble, b: DoubleDouble, c: DoubleDouble, ) -> DoubleDouble
fn mul_add( &self, a: DoubleDouble, b: DoubleDouble, c: DoubleDouble, ) -> DoubleDouble
fn exact_mult(&self, x: f64, y: f64) -> DoubleDouble
Implementors§
impl SinCosPiBackend for FmaSinCosPiBackend
Available on x86 or x86-64 only.