[−][src]Type Definition packed_simd::m8x64
type m8x64 = Simd<[m8; 64]>;
A 512-bit vector mask with 64 m8
lanes.
Methods
impl m8x64
[src][−]
pub const fn new(
x0: bool,
x1: bool,
x2: bool,
x3: bool,
x4: bool,
x5: bool,
x6: bool,
x7: bool,
x8: bool,
x9: bool,
x10: bool,
x11: bool,
x12: bool,
x13: bool,
x14: bool,
x15: bool,
x16: bool,
x17: bool,
x18: bool,
x19: bool,
x20: bool,
x21: bool,
x22: bool,
x23: bool,
x24: bool,
x25: bool,
x26: bool,
x27: bool,
x28: bool,
x29: bool,
x30: bool,
x31: bool,
x32: bool,
x33: bool,
x34: bool,
x35: bool,
x36: bool,
x37: bool,
x38: bool,
x39: bool,
x40: bool,
x41: bool,
x42: bool,
x43: bool,
x44: bool,
x45: bool,
x46: bool,
x47: bool,
x48: bool,
x49: bool,
x50: bool,
x51: bool,
x52: bool,
x53: bool,
x54: bool,
x55: bool,
x56: bool,
x57: bool,
x58: bool,
x59: bool,
x60: bool,
x61: bool,
x62: bool,
x63: bool
) -> Self
[src][−]
x0: bool,
x1: bool,
x2: bool,
x3: bool,
x4: bool,
x5: bool,
x6: bool,
x7: bool,
x8: bool,
x9: bool,
x10: bool,
x11: bool,
x12: bool,
x13: bool,
x14: bool,
x15: bool,
x16: bool,
x17: bool,
x18: bool,
x19: bool,
x20: bool,
x21: bool,
x22: bool,
x23: bool,
x24: bool,
x25: bool,
x26: bool,
x27: bool,
x28: bool,
x29: bool,
x30: bool,
x31: bool,
x32: bool,
x33: bool,
x34: bool,
x35: bool,
x36: bool,
x37: bool,
x38: bool,
x39: bool,
x40: bool,
x41: bool,
x42: bool,
x43: bool,
x44: bool,
x45: bool,
x46: bool,
x47: bool,
x48: bool,
x49: bool,
x50: bool,
x51: bool,
x52: bool,
x53: bool,
x54: bool,
x55: bool,
x56: bool,
x57: bool,
x58: bool,
x59: bool,
x60: bool,
x61: bool,
x62: bool,
x63: bool
) -> Self
Creates a new instance with each vector elements initialized with the provided values.
pub const fn lanes() -> usize
[src][−]
Returns the number of vector lanes.
pub const fn splat(value: bool) -> Self
[src][−]
Constructs a new instance with each element initialized to
value
.
pub fn extract(self, index: usize) -> bool
[src][−]
pub unsafe fn extract_unchecked(self, index: usize) -> bool
[src][−]
Extracts the value at index
.
If index >= Self::lanes()
the behavior is undefined.
pub fn replace(self, index: usize, new_value: bool) -> Self
[src][−]
Returns a new vector where the value at index
is replaced by
new_value
.
Panics
If index >= Self::lanes()
.
pub unsafe fn replace_unchecked(self, index: usize, new_value: bool) -> Self
[src][−]
Returns a new vector where the value at index
is replaced by
new_value
.
Panics
If index >= Self::lanes()
.
impl m8x64
[src][−]
pub fn and(self) -> bool
[src][−]
Lane-wise bitwise and
of the vector elements.
Note: if the vector has one lane, the first element of the vector is returned.
pub fn or(self) -> bool
[src][−]
Lane-wise bitwise or
of the vector elements.
Note: if the vector has one lane, the first element of the vector is returned.
pub fn xor(self) -> bool
[src][−]
Lane-wise bitwise xor
of the vector elements.
Note: if the vector has one lane, the first element of the vector is returned.
impl m8x64
[src][−]
pub fn all(self) -> bool
[src][−]
Are all
vector lanes true
?
pub fn any(self) -> bool
[src][−]
Is any
vector lane true
?
pub fn none(self) -> bool
[src][−]
Are all
vector lanes false
?
impl m8x64
[src][−]
pub fn eq(self, other: Self) -> m8x64
[src][−]
Lane-wise equality comparison.
pub fn ne(self, other: Self) -> m8x64
[src][−]
Lane-wise inequality comparison.
pub fn lt(self, other: Self) -> m8x64
[src][−]
Lane-wise less-than comparison.
pub fn le(self, other: Self) -> m8x64
[src][−]
Lane-wise less-than-or-equals comparison.
pub fn gt(self, other: Self) -> m8x64
[src][−]
Lane-wise greater-than comparison.
pub fn ge(self, other: Self) -> m8x64
[src][−]
Lane-wise greater-than-or-equals comparison.
impl m8x64
[src][−]
pub fn select<T>(self, a: Simd<T>, b: Simd<T>) -> Simd<T> where
T: SimdArray<NT = <[m8; 64] as SimdArray>::NT>,
[src][−]
T: SimdArray<NT = <[m8; 64] as SimdArray>::NT>,
Selects elements of a
and b
using mask.
The lanes of the result for which the mask is true
contain
the values of a
. The remaining lanes contain the values of
b
.
impl m8x64
[src][−]
pub fn partial_lex_ord(&self) -> LexicographicallyOrdered<m8x64>
[src][−]
Returns a wrapper that implements PartialOrd
.
impl m8x64
[src][−]
pub fn lex_ord(&self) -> LexicographicallyOrdered<m8x64>
[src][−]
Returns a wrapper that implements Ord
.
impl m8x64
[src][−]
pub fn shuffle1_dyn<I>(self, indices: I) -> Self where
Self: Shuffle1Dyn<Indices = I>,
[src][−]
Self: Shuffle1Dyn<Indices = I>,
Shuffle vector elements according to indices
.
impl m8x64
[src][−]
pub fn bitmask(self) -> u64
[src][−]
Creates a bitmask with the MSB of each vector lane.
If the vector has less than 8 lanes, the bits that do not correspond to any vector lanes are cleared.