SimdFloat

Trait SimdFloat 

Source
pub trait SimdFloat:
    SimdBaseOps
    + Div<Self, Output = Self>
    + DivAssign<Self>
    + Div<Self::Scalar, Output = Self>
    + DivAssign<Self::Scalar> {
Show 14 methods // Required methods fn div(self, rhs: Self) -> Self; fn ceil(self) -> Self; fn floor(self) -> Self; fn round(self) -> Self; fn fast_ceil(self) -> Self; fn fast_floor(self) -> Self; fn fast_round(self) -> Self; fn mul_add(self, a: Self, b: Self) -> Self; fn mul_sub(self, a: Self, b: Self) -> Self; fn neg_mul_add(self, a: Self, b: Self) -> Self; fn neg_mul_sub(self, a: Self, b: Self) -> Self; fn sqrt(self) -> Self; fn rsqrt(self) -> Self; fn from_f64(value: f64) -> Self;
}
Expand description

Operations shared by f32 and f64 floating point types

Required Methods§

Source

fn div(self, rhs: Self) -> Self

Element-wise divide between two vectors

Source

fn ceil(self) -> Self

Element-wise ceilings between two vectors

Source

fn floor(self) -> Self

Element-wise floors between two vectors

Source

fn round(self) -> Self

Element-wise rounds between two vectors

Source

fn fast_ceil(self) -> Self

Alternative element-wise ceilings between two vectors. When using Sse2, this uses a faster version of ceiling that only works on floating point values small enough to fit in an i32. This is a big performance boost if you don’t need a complete ceiling.

Source

fn fast_floor(self) -> Self

Alternative element-wise floors between two vectors. When using Sse2, this uses a faster version of floor that only works on floating point values small enough to fit in an i32. This is a big performance boost if you don’t need a complete floor.

Source

fn fast_round(self) -> Self

Alternative element-wise rounds between two vectors. When using Sse2, this uses a faster version of round that only works on floating point values small enough to fit in an i32. This is a big performance boost if you don’t need a complete round.

Source

fn mul_add(self, a: Self, b: Self) -> Self

Element-wise multiply add. This performs Self * A + B

Source

fn mul_sub(self, a: Self, b: Self) -> Self

Element-wise multiply subtract. This performs Self * A - B

Source

fn neg_mul_add(self, a: Self, b: Self) -> Self

Element-wise negative multiply add. This performs -(Self * A) + B

Source

fn neg_mul_sub(self, a: Self, b: Self) -> Self

Element-wise negative multiply subtract. This performs -(Self * A) - B

Source

fn sqrt(self) -> Self

Element-wise square root

Source

fn rsqrt(self) -> Self

Element-wise approximate inverse square root

Source

fn from_f64(value: f64) -> Self

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§