Trait faster::vec_patterns::PackedPattern
[−]
[src]
pub trait PackedPattern: Packed { fn halfs(hi: Self::Scalar, lo: Self::Scalar) -> Self; fn interleave(hi: Self::Scalar, lo: Self::Scalar) -> Self; fn partition(hi: Self::Scalar, lo: Self::Scalar, off: usize) -> Self; fn partition_mask(off: usize) -> Self; }
Constructors which may be used to instantiate vectors with patterned data.
Required Methods
fn halfs(hi: Self::Scalar, lo: Self::Scalar) -> Self
Return a vector whose first Self::WIDTH / 2
elements are hi
, and
whose last Self::WIDTH / 2
elements are lo
.
fn interleave(hi: Self::Scalar, lo: Self::Scalar) -> Self
Return a vector containing hi
at every even index, and lo at every odd
index.
fn partition(hi: Self::Scalar, lo: Self::Scalar, off: usize) -> Self
Return a vector whose first off
elements are hi
, and whose last
Self::WIDTH - off
elements are lo
.
fn partition_mask(off: usize) -> Self
Return a vector whose first off
elements are memset to 0x00, and whose
last Self::WIDTH - off
elements are memset to 0xFF.
Implementors
impl PackedPattern for u8x64
impl PackedPattern for u8x32
impl PackedPattern for u8x16
impl PackedPattern for i8x64
impl PackedPattern for i8x32
impl PackedPattern for i8x16
impl PackedPattern for u16x32
impl PackedPattern for u16x16
impl PackedPattern for u16x8
impl PackedPattern for i16x32
impl PackedPattern for i16x16
impl PackedPattern for i16x8
impl PackedPattern for u32x16
impl PackedPattern for u32x8
impl PackedPattern for u32x4
impl PackedPattern for i32x16
impl PackedPattern for i32x8
impl PackedPattern for i32x4
impl PackedPattern for f32x16
impl PackedPattern for f32x8
impl PackedPattern for f32x4
impl PackedPattern for u64x8
impl PackedPattern for u64x4
impl PackedPattern for u64x2
impl PackedPattern for i64x8
impl PackedPattern for i64x4
impl PackedPattern for i64x2
impl PackedPattern for f64x8
impl PackedPattern for f64x4
impl PackedPattern for f64x2