Struct std::simd::i16x8[][src]

#[repr(simd)]
pub struct i16x8(_, _, _, _, _, _, _, _);
🔬 This is a nightly-only experimental API. (stdsimd #48556)

A 128-bit vector with 8 i16 lanes.

Methods

impl i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Creates a new instance with each vector elements initialized with the provided values.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Returns the number of vector lanes.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Constructs a new instance with each element initialized to value.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Extracts the value at index.

Panics

If index >= Self::lanes().

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Extracts the value at index.

Precondition

If index >= Self::lanes() the behavior is undefined.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Returns a new vector where the value at index is replaced by new_value.

Panics

If index >= Self::lanes().

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Returns a new vector where the value at index is replaced by new_value.

Precondition

If index >= Self::lanes() the behavior is undefined.

impl i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Writes the values of the vector to the slice.

Panics

If slice.len() < Self::lanes() or &slice[0] is not aligned to an align_of::<Self>() boundary.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Writes the values of the vector to the slice.

Panics

If slice.len() < Self::lanes().

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Writes the values of the vector to the slice.

Precondition

If slice.len() < Self::lanes() or &slice[0] is not aligned to an align_of::<Self>() boundary, the behavior is undefined.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Writes the values of the vector to the slice.

Precondition

If slice.len() < Self::lanes() the behavior is undefined.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Instantiates a new vector with the values of the slice.

Panics

If slice.len() < Self::lanes() or &slice[0] is not aligned to an align_of::<Self>() boundary.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Instantiates a new vector with the values of the slice.

Panics

If slice.len() < Self::lanes().

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Instantiates a new vector with the values of the slice.

Precondition

If slice.len() < Self::lanes() or &slice[0] is not aligned to an align_of::<Self>() boundary, the behavior is undefined.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Instantiates a new vector with the values of the slice.

Precondition

If slice.len() < Self::lanes() the behavior is undefined.

impl i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Lane-wise equality comparison.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Lane-wise inequality comparison.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Lane-wise less-than comparison.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Lane-wise less-than-or-equals comparison.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Lane-wise greater-than comparison.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Lane-wise greater-than-or-equals comparison.

impl i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Horizontal sum of the vector elements.

The intrinsic performs a tree-reduction of the vector elements. That is, for an 8 element vector:

((x0 + x1) + (x2 + x3)) + ((x4 + x5) + (x6 + x7))

Integer vectors

If an operation overflows it returns the mathematical result modulo 2^n where n is the number of times it overflows.

Floating-point vectors

If one of the vector element is NaN the reduction returns NaN.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Horizontal product of the vector elements.

The intrinsic performs a tree-reduction of the vector elements. That is, for an 8 element vector:

((x0 * x1) * (x2 * x3)) * ((x4 * x5) * (x6 * x7))

Integer vectors

If an operation overflows it returns the mathematical result modulo 2^n where n is the number of times it overflows.

Floating-point vectors

If one of the vector element is NaN the reduction returns NaN.

impl i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Largest vector element value.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Smallest vector element value.

impl i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Lane-wise bitwise and of the vector elements.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Lane-wise bitwise or of the vector elements.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Lane-wise bitwise xor of the vector elements.

impl i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Minimum of two vectors.

Returns a new vector containing the minimum value of each of the input vector lanes.

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Maximum of two vectors.

Returns a new vector containing the minimum value of each of the input vector lanes.

Trait Implementations

impl Mul<i16x8> for i16
[src]

The resulting type after applying the * operator.

Performs the * operation.

impl Mul<i16> for i16x8
[src]

The resulting type after applying the * operator.

Performs the * operation.

impl Mul<i16x8> for i16x8
[src]

The resulting type after applying the * operator.

Performs the * operation.

impl Shl<i8> for i16x8
[src]

The resulting type after applying the << operator.

Performs the << operation.

impl Shl<u8> for i16x8
[src]

The resulting type after applying the << operator.

Performs the << operation.

impl Shl<u16> for i16x8
[src]

The resulting type after applying the << operator.

Performs the << operation.

impl Shl<usize> for i16x8
[src]

The resulting type after applying the << operator.

Performs the << operation.

impl Shl<i16x8> for i16x8
[src]

The resulting type after applying the << operator.

Performs the << operation.

impl Shl<isize> for i16x8
[src]

The resulting type after applying the << operator.

Performs the << operation.

impl Shl<i16> for i16x8
[src]

The resulting type after applying the << operator.

Performs the << operation.

impl Shl<i64> for i16x8
[src]

The resulting type after applying the << operator.

Performs the << operation.

impl Shl<u32> for i16x8
[src]

The resulting type after applying the << operator.

Performs the << operation.

impl Shl<u64> for i16x8
[src]

The resulting type after applying the << operator.

Performs the << operation.

impl Shl<i32> for i16x8
[src]

The resulting type after applying the << operator.

Performs the << operation.

impl BitAnd<i16> for i16x8
[src]

The resulting type after applying the & operator.

Performs the & operation.

impl BitAnd<i16x8> for i16
[src]

The resulting type after applying the & operator.

Performs the & operation.

impl BitAnd<i16x8> for i16x8
[src]

The resulting type after applying the & operator.

Performs the & operation.

impl Binary for i16x8
[src]

Formats the value using the given formatter.

impl Debug for i16x8
[src]

Formats the value using the given formatter. Read more

impl Default for i16x8
[src]

Returns the "default value" for a type. Read more

impl ShlAssign<i32> for i16x8
[src]

Performs the <<= operation.

impl ShlAssign<i8> for i16x8
[src]

Performs the <<= operation.

impl ShlAssign<i16> for i16x8
[src]

Performs the <<= operation.

impl ShlAssign<isize> for i16x8
[src]

Performs the <<= operation.

impl ShlAssign<u8> for i16x8
[src]

Performs the <<= operation.

impl ShlAssign<usize> for i16x8
[src]

Performs the <<= operation.

impl ShlAssign<i16x8> for i16x8
[src]

Performs the <<= operation.

impl ShlAssign<u16> for i16x8
[src]

Performs the <<= operation.

impl ShlAssign<u64> for i16x8
[src]

Performs the <<= operation.

impl ShlAssign<u32> for i16x8
[src]

Performs the <<= operation.

impl ShlAssign<i64> for i16x8
[src]

Performs the <<= operation.

impl BitXorAssign<i16x8> for i16x8
[src]

Performs the ^= operation.

impl BitXorAssign<i16> for i16x8
[src]

Performs the ^= operation.

impl Div<i16x8> for i16
[src]

The resulting type after applying the / operator.

Performs the / operation.

impl Div<i16> for i16x8
[src]

The resulting type after applying the / operator.

Performs the / operation.

impl Div<i16x8> for i16x8
[src]

The resulting type after applying the / operator.

Performs the / operation.

impl BitOrAssign<i16x8> for i16x8
[src]

Performs the |= operation.

impl BitOrAssign<i16> for i16x8
[src]

Performs the |= operation.

impl BitAndAssign<i16> for i16x8
[src]

Performs the &= operation.

impl BitAndAssign<i16x8> for i16x8
[src]

Performs the &= operation.

impl Add<i16> for i16x8
[src]

The resulting type after applying the + operator.

Performs the + operation.

impl Add<i16x8> for i16
[src]

The resulting type after applying the + operator.

Performs the + operation.

impl Add<i16x8> for i16x8
[src]

The resulting type after applying the + operator.

Performs the + operation.

impl BitOr<i16x8> for i16
[src]

The resulting type after applying the | operator.

Performs the | operation.

impl BitOr<i16x8> for i16x8
[src]

The resulting type after applying the | operator.

Performs the | operation.

impl BitOr<i16> for i16x8
[src]

The resulting type after applying the | operator.

Performs the | operation.

impl UpperHex for i16x8
[src]

Formats the value using the given formatter.

impl RemAssign<i16x8> for i16x8
[src]

Performs the %= operation.

impl RemAssign<i16> for i16x8
[src]

Performs the %= operation.

impl Copy for i16x8
[src]

impl DivAssign<i16> for i16x8
[src]

Performs the /= operation.

impl DivAssign<i16x8> for i16x8
[src]

Performs the /= operation.

impl Octal for i16x8
[src]

Formats the value using the given formatter.

impl MulAssign<i16> for i16x8
[src]

Performs the *= operation.

impl MulAssign<i16x8> for i16x8
[src]

Performs the *= operation.

impl SubAssign<i16x8> for i16x8
[src]

Performs the -= operation.

impl SubAssign<i16> for i16x8
[src]

Performs the -= operation.

impl AddAssign<i16x8> for i16x8
[src]

Performs the += operation.

impl AddAssign<i16> for i16x8
[src]

Performs the += operation.

impl From<m32x8> for i16x8
[src]

Performs the conversion.

impl From<u32x8> for i16x8
[src]

Performs the conversion.

impl From<i16x8> for i64x8
[src]

Performs the conversion.

impl From<i16x8> for u8x8
[src]

Performs the conversion.

impl From<i32x8> for i16x8
[src]

Performs the conversion.

impl From<f32x8> for i16x8
[src]

Performs the conversion.

impl From<u8x8> for i16x8
[src]

Performs the conversion.

impl From<i8x8> for i16x8
[src]

Performs the conversion.

impl From<f64x8> for i16x8
[src]

Performs the conversion.

impl From<i16x8> for f32x8
[src]

Performs the conversion.

impl From<i16x8> for u64x8
[src]

Performs the conversion.

impl From<i16x8> for u16x8
[src]

Performs the conversion.

impl From<i64x8> for i16x8
[src]

Performs the conversion.

impl From<i16x8> for f64x8
[src]

Performs the conversion.

impl From<i16x8> for i32x8
[src]

Performs the conversion.

impl From<m1x8> for i16x8
[src]

Performs the conversion.

impl From<m8x8> for i16x8
[src]

Performs the conversion.

impl From<i16x8> for i8x8
[src]

Performs the conversion.

impl From<u64x8> for i16x8
[src]

Performs the conversion.

impl From<m16x8> for i16x8
[src]

Performs the conversion.

impl From<i16x8> for u32x8
[src]

Performs the conversion.

impl From<u16x8> for i16x8
[src]

Performs the conversion.

impl Neg for i16x8
[src]

The resulting type after applying the - operator.

Performs the unary - operation.

impl ShrAssign<i16x8> for i16x8
[src]

Performs the >>= operation.

impl ShrAssign<i32> for i16x8
[src]

Performs the >>= operation.

impl ShrAssign<u32> for i16x8
[src]

Performs the >>= operation.

impl ShrAssign<i64> for i16x8
[src]

Performs the >>= operation.

impl ShrAssign<isize> for i16x8
[src]

Performs the >>= operation.

impl ShrAssign<i16> for i16x8
[src]

Performs the >>= operation.

impl ShrAssign<usize> for i16x8
[src]

Performs the >>= operation.

impl ShrAssign<u64> for i16x8
[src]

Performs the >>= operation.

impl ShrAssign<u16> for i16x8
[src]

Performs the >>= operation.

impl ShrAssign<i8> for i16x8
[src]

Performs the >>= operation.

impl ShrAssign<u8> for i16x8
[src]

Performs the >>= operation.

impl Hash for i16x8
[src]

Feeds this value into the given [Hasher]. Read more

Feeds a slice of this type into the given [Hasher]. Read more

impl Sub<i16x8> for i16
[src]

The resulting type after applying the - operator.

Performs the - operation.

impl Sub<i16x8> for i16x8
[src]

The resulting type after applying the - operator.

Performs the - operation.

impl Sub<i16> for i16x8
[src]

The resulting type after applying the - operator.

Performs the - operation.

impl Clone for i16x8
[src]

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl Shr<i64> for i16x8
[src]

The resulting type after applying the >> operator.

Performs the >> operation.

impl Shr<u64> for i16x8
[src]

The resulting type after applying the >> operator.

Performs the >> operation.

impl Shr<usize> for i16x8
[src]

The resulting type after applying the >> operator.

Performs the >> operation.

impl Shr<u8> for i16x8
[src]

The resulting type after applying the >> operator.

Performs the >> operation.

impl Shr<u32> for i16x8
[src]

The resulting type after applying the >> operator.

Performs the >> operation.

impl Shr<i8> for i16x8
[src]

The resulting type after applying the >> operator.

Performs the >> operation.

impl Shr<i32> for i16x8
[src]

The resulting type after applying the >> operator.

Performs the >> operation.

impl Shr<i16x8> for i16x8
[src]

The resulting type after applying the >> operator.

Performs the >> operation.

impl Shr<u16> for i16x8
[src]

The resulting type after applying the >> operator.

Performs the >> operation.

impl Shr<i16> for i16x8
[src]

The resulting type after applying the >> operator.

Performs the >> operation.

impl Shr<isize> for i16x8
[src]

The resulting type after applying the >> operator.

Performs the >> operation.

impl PartialOrd<i16x8> for i16x8
[src]

This method returns an ordering between self and other values if one exists. Read more

This method tests less than (for self and other) and is used by the < operator. Read more

This method tests less than or equal to (for self and other) and is used by the <= operator. Read more

This method tests greater than (for self and other) and is used by the > operator. Read more

This method tests greater than or equal to (for self and other) and is used by the >= operator. Read more

impl BitXor<i16> for i16x8
[src]

The resulting type after applying the ^ operator.

Performs the ^ operation.

impl BitXor<i16x8> for i16x8
[src]

The resulting type after applying the ^ operator.

Performs the ^ operation.

impl BitXor<i16x8> for i16
[src]

The resulting type after applying the ^ operator.

Performs the ^ operation.

impl Not for i16x8
[src]

The resulting type after applying the ! operator.

Performs the unary ! operation.

impl LowerHex for i16x8
[src]

Formats the value using the given formatter.

impl Eq for i16x8
[src]

impl PartialEq<i16x8> for i16x8
[src]

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl FromBits<i8x16> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<i16x8> for i64x2
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<i16x8> for u8x16
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<f64x2> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<__m128> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<m64x2> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<f32x4> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<i64x2> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<u8x16> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<i16x8> for u16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<i16x8> for i8x16
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<__m128i> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<u32x4> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<u16x8> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<i16x8> for u32x4
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<m16x8> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<i16x8> for i32x4
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<m32x4> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<__m128d> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<i16x8> for f64x2
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<i32x4> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<i16x8> for u64x2
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<i16x8> for f32x4
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<u64x2> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl FromBits<m8x16> for i16x8
[src]

🔬 This is a nightly-only experimental API. (stdsimd #48556)

Safe lossless bitwise from T to Self.

impl Rem<i16x8> for i16
[src]

The resulting type after applying the % operator.

Performs the % operation.

impl Rem<i16> for i16x8
[src]

The resulting type after applying the % operator.

Performs the % operation.

impl Rem<i16x8> for i16x8
[src]

The resulting type after applying the % operator.

Performs the % operation.

Auto Trait Implementations

impl Send for i16x8

impl Sync for i16x8