pub(crate) trait ExpfBackend {
Show 16 methods
// Required methods
fn fmaf(&self, x: f32, y: f32, z: f32) -> f32;
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 polyeval5(
&self,
x: f64,
a0: f64,
a1: f64,
a2: f64,
a3: f64,
a4: f64,
) -> f64;
fn polyeval6(
&self,
x: f64,
a0: f64,
a1: f64,
a2: f64,
a3: f64,
a4: f64,
a5: f64,
) -> f64;
fn polyeval7(
&self,
x: f64,
a0: f64,
a1: f64,
a2: f64,
a3: f64,
a4: f64,
a5: f64,
a6: f64,
) -> f64;
fn roundf(&self, x: f32) -> f32;
fn round(&self, x: f64) -> f64;
fn floor(&self, x: f64) -> f64;
fn round_ties_even(&self, x: f64) -> f64;
fn quick_mult(&self, x: DoubleDouble, y: DoubleDouble) -> DoubleDouble;
fn quick_mult_f64(&self, x: DoubleDouble, y: f64) -> DoubleDouble;
fn quick_f64_mult(&self, x: f64, y: DoubleDouble) -> DoubleDouble;
fn exact_mult(&self, x: f64, y: f64) -> DoubleDouble;
}Required Methods§
fn fmaf(&self, x: f32, y: f32, z: f32) -> f32
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 polyeval5(&self, x: f64, a0: f64, a1: f64, a2: f64, a3: f64, a4: f64) -> f64
fn polyeval6( &self, x: f64, a0: f64, a1: f64, a2: f64, a3: f64, a4: f64, a5: f64, ) -> f64
fn polyeval7( &self, x: f64, a0: f64, a1: f64, a2: f64, a3: f64, a4: f64, a5: f64, a6: f64, ) -> f64
fn roundf(&self, x: f32) -> f32
fn round(&self, x: f64) -> f64
fn floor(&self, x: f64) -> f64
fn round_ties_even(&self, x: f64) -> f64
fn quick_mult(&self, x: DoubleDouble, y: DoubleDouble) -> DoubleDouble
fn quick_mult_f64(&self, x: DoubleDouble, y: f64) -> DoubleDouble
fn quick_f64_mult(&self, x: f64, y: DoubleDouble) -> DoubleDouble
fn exact_mult(&self, x: f64, y: f64) -> DoubleDouble
Implementors§
impl ExpfBackend for FmaBackend
Available on x86 or x86-64 only.