pub trait SimdUint: Copy + Sealed {
type Scalar;
fn saturating_add(self, second: Self) -> Self;
fn saturating_sub(self, second: Self) -> Self;
fn reduce_sum(self) -> Self::Scalar;
fn reduce_product(self) -> Self::Scalar;
fn reduce_max(self) -> Self::Scalar;
fn reduce_min(self) -> Self::Scalar;
fn reduce_and(self) -> Self::Scalar;
fn reduce_or(self) -> Self::Scalar;
fn reduce_xor(self) -> Self::Scalar;
}
Expand description
Operations on SIMD vectors of unsigned integers.
Required Associated Types
Required Methods
fn saturating_add(self, second: Self) -> Self
fn saturating_add(self, second: Self) -> Self
fn saturating_sub(self, second: Self) -> Self
fn saturating_sub(self, second: Self) -> Self
fn reduce_sum(self) -> Self::Scalar
fn reduce_sum(self) -> Self::Scalar
Returns the sum of the lanes of the vector, with wrapping addition.
fn reduce_product(self) -> Self::Scalar
fn reduce_product(self) -> Self::Scalar
Returns the product of the lanes of the vector, with wrapping multiplication.
fn reduce_and(self) -> Self::Scalar
fn reduce_and(self) -> Self::Scalar
Returns the cumulative bitwise “and” across the lanes of the vector.
Returns the cumulative bitwise “or” across the lanes of the vector.
fn reduce_xor(self) -> Self::Scalar
fn reduce_xor(self) -> Self::Scalar
Returns the cumulative bitwise “xor” across the lanes of the vector.