Remove Simd{U,I}128
This commit is contained in:
parent
f06427f4d6
commit
92d643b628
15 changed files with 7 additions and 80 deletions
|
|
@ -71,14 +71,12 @@ implement_mask_ops! {
|
|||
SimdI16 => Mask16 (SimdMask16, SimdI16),
|
||||
SimdI32 => Mask32 (SimdMask32, SimdI32),
|
||||
SimdI64 => Mask64 (SimdMask64, SimdI64),
|
||||
SimdI128 => Mask128 (SimdMask128, SimdI128),
|
||||
SimdIsize => MaskSize (SimdMaskSize, SimdIsize),
|
||||
|
||||
SimdU8 => Mask8 (SimdMask8, SimdI8),
|
||||
SimdU16 => Mask16 (SimdMask16, SimdI16),
|
||||
SimdU32 => Mask32 (SimdMask32, SimdI32),
|
||||
SimdU64 => Mask64 (SimdMask64, SimdI64),
|
||||
SimdU128 => Mask128 (SimdMask128, SimdI128),
|
||||
SimdUsize => MaskSize (SimdMaskSize, SimdIsize),
|
||||
|
||||
SimdF32 => Mask32 (SimdMask32, SimdI32),
|
||||
|
|
|
|||
|
|
@ -77,8 +77,8 @@ macro_rules! impl_fmt_trait {
|
|||
|
||||
impl_fmt_trait! {
|
||||
integers:
|
||||
SimdU8, SimdU16, SimdU32, SimdU64, SimdU128,
|
||||
SimdI8, SimdI16, SimdI32, SimdI64, SimdI128,
|
||||
SimdU8, SimdU16, SimdU32, SimdU64,
|
||||
SimdI8, SimdI16, SimdI32, SimdI64,
|
||||
SimdUsize, SimdIsize,
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -18,14 +18,12 @@ impl_for! { SimdU8 }
|
|||
impl_for! { SimdU16 }
|
||||
impl_for! { SimdU32 }
|
||||
impl_for! { SimdU64 }
|
||||
impl_for! { SimdU128 }
|
||||
impl_for! { SimdUsize }
|
||||
|
||||
impl_for! { SimdI8 }
|
||||
impl_for! { SimdI16 }
|
||||
impl_for! { SimdI32 }
|
||||
impl_for! { SimdI64 }
|
||||
impl_for! { SimdI128 }
|
||||
impl_for! { SimdIsize }
|
||||
|
||||
impl_for! { SimdF32 }
|
||||
|
|
|
|||
|
|
@ -22,8 +22,8 @@ mod round;
|
|||
|
||||
mod math;
|
||||
|
||||
mod lanes_at_most_64;
|
||||
pub use lanes_at_most_64::LanesAtMost32;
|
||||
mod lanes_at_most_32;
|
||||
pub use lanes_at_most_32::LanesAtMost32;
|
||||
|
||||
mod masks;
|
||||
pub use masks::*;
|
||||
|
|
|
|||
|
|
@ -417,12 +417,6 @@ define_mask! {
|
|||
struct SimdMask64<const LANES: usize>(crate::SimdI64<LANES>);
|
||||
}
|
||||
|
||||
define_mask! {
|
||||
/// A mask equivalent to [SimdI128](crate::SimdI128), where all bits in the lane must be either set
|
||||
/// or unset.
|
||||
struct SimdMask128<const LANES: usize>(crate::SimdI128<LANES>);
|
||||
}
|
||||
|
||||
define_mask! {
|
||||
/// A mask equivalent to [SimdIsize](crate::SimdIsize), where all bits in the lane must be either set
|
||||
/// or unset.
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ pub use full_masks::*;
|
|||
mod bitmask;
|
||||
pub use bitmask::*;
|
||||
|
||||
use crate::{LanesAtMost32, SimdI128, SimdI16, SimdI32, SimdI64, SimdI8, SimdIsize};
|
||||
use crate::{LanesAtMost32, SimdI16, SimdI32, SimdI64, SimdI8, SimdIsize};
|
||||
|
||||
macro_rules! define_opaque_mask {
|
||||
{
|
||||
|
|
@ -387,14 +387,6 @@ define_opaque_mask! {
|
|||
@bits SimdI64
|
||||
}
|
||||
|
||||
define_opaque_mask! {
|
||||
/// Mask for vectors with `LANES` 128-bit elements.
|
||||
///
|
||||
/// The layout of this type is unspecified.
|
||||
struct Mask128<const LANES: usize>(SimdMask128<LANES>);
|
||||
@bits SimdI128
|
||||
}
|
||||
|
||||
define_opaque_mask! {
|
||||
/// Mask for vectors with `LANES` pointer-width elements.
|
||||
///
|
||||
|
|
@ -448,12 +440,6 @@ pub type mask64x4 = Mask64<4>;
|
|||
/// Vector of eight 64-bit masks
|
||||
pub type mask64x8 = Mask64<8>;
|
||||
|
||||
/// Vector of two 128-bit masks
|
||||
pub type mask128x2 = Mask128<2>;
|
||||
|
||||
/// Vector of four 128-bit masks
|
||||
pub type mask128x4 = Mask128<4>;
|
||||
|
||||
/// Vector of two pointer-width masks
|
||||
pub type masksizex2 = MaskSize<2>;
|
||||
|
||||
|
|
|
|||
|
|
@ -140,5 +140,5 @@ macro_rules! impl_int_arith {
|
|||
|
||||
use crate::vector::*;
|
||||
|
||||
impl_uint_arith! { (SimdU8, u8), (SimdU16, u16), (SimdU32, u32), (SimdU64, u64), (SimdU128, u128), (SimdUsize, usize) }
|
||||
impl_int_arith! { (SimdI8, i8), (SimdI16, i16), (SimdI32, i32), (SimdI64, i64), (SimdI128, i128), (SimdIsize, isize) }
|
||||
impl_uint_arith! { (SimdU8, u8), (SimdU16, u16), (SimdU32, u32), (SimdU64, u64), (SimdUsize, usize) }
|
||||
impl_int_arith! { (SimdI8, i8), (SimdI16, i16), (SimdI32, i32), (SimdI64, i64), (SimdIsize, isize) }
|
||||
|
|
|
|||
|
|
@ -653,7 +653,6 @@ impl_unsigned_int_ops! {
|
|||
u16 => SimdU16;
|
||||
u32 => SimdU32;
|
||||
u64 => SimdU64;
|
||||
u128 => SimdU128;
|
||||
usize => SimdUsize;
|
||||
}
|
||||
|
||||
|
|
@ -662,7 +661,6 @@ impl_signed_int_ops! {
|
|||
i16 => SimdI16;
|
||||
i32 => SimdI32;
|
||||
i64 => SimdI64;
|
||||
i128 => SimdI128;
|
||||
isize => SimdIsize;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -64,17 +64,6 @@ from_transmute_x86! { unsafe isizex4 => __m256i }
|
|||
//#[cfg(target_pointer_width = "64")]
|
||||
//from_transmute_x86! { unsafe isizex8 => __m512i }
|
||||
|
||||
/// A SIMD vector of containing `LANES` `i128` values.
|
||||
#[repr(simd)]
|
||||
pub struct SimdI128<const LANES: usize>([i128; LANES])
|
||||
where
|
||||
Self: crate::LanesAtMost32;
|
||||
|
||||
impl_integer_vector! { SimdI128, i128, Mask128, SimdI128 }
|
||||
|
||||
from_transmute_x86! { unsafe i128x2 => __m256i }
|
||||
//from_transmute_x86! { unsafe i128x4 => __m512i }
|
||||
|
||||
/// A SIMD vector of containing `LANES` `i16` values.
|
||||
#[repr(simd)]
|
||||
pub struct SimdI16<const LANES: usize>([i16; LANES])
|
||||
|
|
@ -132,12 +121,6 @@ pub type isizex4 = SimdIsize<4>;
|
|||
/// Vector of eight `isize` values
|
||||
pub type isizex8 = SimdIsize<8>;
|
||||
|
||||
/// Vector of two `i128` values
|
||||
pub type i128x2 = SimdI128<2>;
|
||||
|
||||
/// Vector of four `i128` values
|
||||
pub type i128x4 = SimdI128<4>;
|
||||
|
||||
/// Vector of four `i16` values
|
||||
pub type i16x4 = SimdI16<4>;
|
||||
|
||||
|
|
|
|||
|
|
@ -49,17 +49,6 @@ from_transmute_x86! { unsafe usizex4 => __m256i }
|
|||
//#[cfg(target_pointer_width = "64")]
|
||||
//from_transmute_x86! { unsafe usizex8 => __m512i }
|
||||
|
||||
/// A SIMD vector of containing `LANES` `u128` values.
|
||||
#[repr(simd)]
|
||||
pub struct SimdU128<const LANES: usize>([u128; LANES])
|
||||
where
|
||||
Self: crate::LanesAtMost32;
|
||||
|
||||
impl_unsigned_vector! { SimdU128, u128 }
|
||||
|
||||
from_transmute_x86! { unsafe u128x2 => __m256i }
|
||||
//from_transmute_x86! { unsafe u128x4 => __m512i }
|
||||
|
||||
/// A SIMD vector of containing `LANES` `u16` values.
|
||||
#[repr(simd)]
|
||||
pub struct SimdU16<const LANES: usize>([u16; LANES])
|
||||
|
|
@ -117,12 +106,6 @@ pub type usizex4 = SimdUsize<4>;
|
|||
/// Vector of eight `usize` values
|
||||
pub type usizex8 = SimdUsize<8>;
|
||||
|
||||
/// Vector of two `u128` values
|
||||
pub type u128x2 = SimdU128<2>;
|
||||
|
||||
/// Vector of four `u128` values
|
||||
pub type u128x4 = SimdU128<4>;
|
||||
|
||||
/// Vector of four `u16` values
|
||||
pub type u16x4 = SimdU16<4>;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +0,0 @@
|
|||
#[macro_use]
|
||||
mod ops_macros;
|
||||
impl_signed_tests! { SimdI128, i128 }
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
mask_tests! { mask128x2, 2 }
|
||||
mask_tests! { mask128x4, 4 }
|
||||
|
|
@ -5,5 +5,4 @@ mod mask8;
|
|||
mod mask16;
|
||||
mod mask32;
|
||||
mod mask64;
|
||||
mod mask128;
|
||||
mod masksize;
|
||||
|
|
|
|||
|
|
@ -1,3 +0,0 @@
|
|||
#[macro_use]
|
||||
mod ops_macros;
|
||||
impl_unsigned_tests! { SimdU128, u128 }
|
||||
|
|
@ -273,13 +273,11 @@ macro_rules! test_lanes {
|
|||
core_simd::SimdU16<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdU32<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdU64<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdU128<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdUsize<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdI8<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdI16<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdI32<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdI64<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdI128<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdIsize<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdF32<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdF64<$lanes>: core_simd::LanesAtMost32,
|
||||
|
|
@ -345,13 +343,11 @@ macro_rules! test_lanes_panic {
|
|||
core_simd::SimdU16<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdU32<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdU64<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdU128<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdUsize<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdI8<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdI16<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdI32<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdI64<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdI128<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdIsize<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdF32<$lanes>: core_simd::LanesAtMost32,
|
||||
core_simd::SimdF64<$lanes>: core_simd::LanesAtMost32,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue