pub trait SIMDAbs {
// Required method
fn abs_simd(self) -> Self;
}Expand description
Take the absolute value of each lane.
§Notes
For signed integer types T, this works as expected for all values except for T::MIN,
in which case T::MIN is returned. This keeps the behavior in line with hardware
intrinsics.
A correct answer can be retrieved by casting the result to the equivalent unsigned integer.
Required Methods§
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§
impl SIMDAbs for diskann_wide::arch::x86_64::v3::f32x4_::f32x4
impl SIMDAbs for diskann_wide::arch::x86_64::v3::f32x8_::f32x8
impl SIMDAbs for diskann_wide::arch::x86_64::v3::i8x16_::i8x16
impl SIMDAbs for diskann_wide::arch::x86_64::v3::i8x32_::i8x32
impl SIMDAbs for diskann_wide::arch::x86_64::v3::i16x8_::i16x8
impl SIMDAbs for diskann_wide::arch::x86_64::v3::i16x16_::i16x16
impl SIMDAbs for diskann_wide::arch::x86_64::v3::i32x4_::i32x4
impl SIMDAbs for diskann_wide::arch::x86_64::v3::i32x8_::i32x8
impl SIMDAbs for diskann_wide::arch::x86_64::v4::f32x4_::f32x4
impl SIMDAbs for diskann_wide::arch::x86_64::v4::f32x8_::f32x8
impl SIMDAbs for f32x16
impl SIMDAbs for diskann_wide::arch::x86_64::v4::i8x16_::i8x16
impl SIMDAbs for diskann_wide::arch::x86_64::v4::i8x32_::i8x32
impl SIMDAbs for i8x64
impl SIMDAbs for diskann_wide::arch::x86_64::v4::i16x8_::i16x8
impl SIMDAbs for diskann_wide::arch::x86_64::v4::i16x16_::i16x16
impl SIMDAbs for i16x32
impl SIMDAbs for diskann_wide::arch::x86_64::v4::i32x4_::i32x4
impl SIMDAbs for diskann_wide::arch::x86_64::v4::i32x8_::i32x8
impl SIMDAbs for i32x16
impl<T, const N: usize, A> SIMDAbs for Emulated<T, N, A>where
T: ReferenceAbs,
Abs