]> git.lizzy.rs Git - rust.git/blob - crates/core_simd/src/vectors_u32.rs
Add missing type bounds
[rust.git] / crates / core_simd / src / vectors_u32.rs
1 #![allow(non_camel_case_types)]
2
3 /// A SIMD vector of containing `LANES` `u32` values.
4 #[repr(simd)]
5 pub struct SimdU32<const LANES: usize>([u32; LANES])
6 where
7     Self: crate::LanesAtMost64;
8
9 impl_integer_vector! { SimdU32, u32 }
10
11 /// Vector of two `u32` values
12 pub type u32x2 = SimdU32<2>;
13
14 /// Vector of four `u32` values
15 pub type u32x4 = SimdU32<4>;
16
17 /// Vector of eight `u32` values
18 pub type u32x8 = SimdU32<8>;
19
20 /// Vector of 16 `u32` values
21 pub type u32x16 = SimdU32<16>;
22
23 from_transmute_x86! { unsafe u32x4 => __m128i }
24 from_transmute_x86! { unsafe u32x8 => __m256i }
25 //from_transmute_x86! { unsafe u32x16 => __m512i }