Struct simd::i16x8
[−]
[src]
#[repr(simd)]pub struct i16x8(_, _, _, _, _, _, _, _);
A SIMD vector of 8 i16
s.
Methods
impl i16x8
[src]
pub const fn new(
x0: i16,
x1: i16,
x2: i16,
x3: i16,
x4: i16,
x5: i16,
x6: i16,
x7: i16
) -> i16x8
[src]
x0: i16,
x1: i16,
x2: i16,
x3: i16,
x4: i16,
x5: i16,
x6: i16,
x7: i16
) -> i16x8
Create a new instance.
pub const fn splat(x: i16) -> i16x8
[src]
Create a new instance where every lane has value x
.
pub fn eq(self, other: Self) -> bool16ix8
[src]
Compare for equality.
pub fn ne(self, other: Self) -> bool16ix8
[src]
Compare for equality.
pub fn lt(self, other: Self) -> bool16ix8
[src]
Compare for equality.
pub fn le(self, other: Self) -> bool16ix8
[src]
Compare for equality.
pub fn gt(self, other: Self) -> bool16ix8
[src]
Compare for equality.
pub fn ge(self, other: Self) -> bool16ix8
[src]
Compare for equality.
pub fn extract(self, idx: u32) -> i16
[src]
pub fn replace(self, idx: u32, elem: i16) -> Self
[src]
Return a new vector where the idx
th lane is replaced
by elem
.
Panics
replace
will panic if idx
is out of bounds.
pub fn load(array: &[i16], idx: usize) -> Self
[src]
Load a new value from the idx
th position of array
.
This is equivalent to the following, but is possibly more efficient:
Self::new(array[idx], array[idx + 1], ...)
Panics
load
will panic if idx
is out of bounds in
array
, or if array[idx..]
is too short.
pub fn store(self, array: &mut [i16], idx: usize)
[src]
Store the elements of self
to array
, starting at
the idx
th position.
This is equivalent to the following, but is possibly more efficient:
array[i] = self.extract(0); array[i + 1] = self.extract(1); // ...
Panics
store
will panic if idx
is out of bounds in
array
, or if array[idx...]
is too short.
impl i16x8
[src]
Trait Implementations
impl Neg for i16x8
[src]
type Output = Self
The resulting type after applying the -
operator.
fn neg(self) -> Self
[src]
Performs the unary -
operation.
impl Not for i16x8
[src]
type Output = Self
The resulting type after applying the !
operator.
fn not(self) -> Self
[src]
Performs the unary !
operation.
impl Add for i16x8
[src]
type Output = Self
The resulting type after applying the +
operator.
fn add(self, x: Self) -> Self
[src]
Performs the +
operation.
impl Sub for i16x8
[src]
type Output = Self
The resulting type after applying the -
operator.
fn sub(self, x: Self) -> Self
[src]
Performs the -
operation.
impl Mul for i16x8
[src]
type Output = Self
The resulting type after applying the *
operator.
fn mul(self, x: Self) -> Self
[src]
Performs the *
operation.
impl BitAnd for i16x8
[src]
type Output = Self
The resulting type after applying the &
operator.
fn bitand(self, x: Self) -> Self
[src]
Performs the &
operation.
impl BitOr for i16x8
[src]
type Output = Self
The resulting type after applying the |
operator.
fn bitor(self, x: Self) -> Self
[src]
Performs the |
operation.
impl BitXor for i16x8
[src]
type Output = Self
The resulting type after applying the ^
operator.
fn bitxor(self, x: Self) -> Self
[src]
Performs the ^
operation.
impl Shl<u8> for i16x8
[src]
type Output = Self
The resulting type after applying the <<
operator.
fn shl(self, other: u8) -> Self
[src]
Performs the <<
operation.
impl Shr<u8> for i16x8
[src]
type Output = Self
The resulting type after applying the >>
operator.
fn shr(self, other: u8) -> Self
[src]
Performs the >>
operation.
impl Shl<u16> for i16x8
[src]
type Output = Self
The resulting type after applying the <<
operator.
fn shl(self, other: u16) -> Self
[src]
Performs the <<
operation.
impl Shr<u16> for i16x8
[src]
type Output = Self
The resulting type after applying the >>
operator.
fn shr(self, other: u16) -> Self
[src]
Performs the >>
operation.
impl Shl<u32> for i16x8
[src]
type Output = Self
The resulting type after applying the <<
operator.
fn shl(self, other: u32) -> Self
[src]
Performs the <<
operation.
impl Shr<u32> for i16x8
[src]
type Output = Self
The resulting type after applying the >>
operator.
fn shr(self, other: u32) -> Self
[src]
Performs the >>
operation.
impl Shl<u64> for i16x8
[src]
type Output = Self
The resulting type after applying the <<
operator.
fn shl(self, other: u64) -> Self
[src]
Performs the <<
operation.
impl Shr<u64> for i16x8
[src]
type Output = Self
The resulting type after applying the >>
operator.
fn shr(self, other: u64) -> Self
[src]
Performs the >>
operation.
impl Shl<usize> for i16x8
[src]
type Output = Self
The resulting type after applying the <<
operator.
fn shl(self, other: usize) -> Self
[src]
Performs the <<
operation.
impl Shr<usize> for i16x8
[src]
type Output = Self
The resulting type after applying the >>
operator.
fn shr(self, other: usize) -> Self
[src]
Performs the >>
operation.
impl Shl<i8> for i16x8
[src]
type Output = Self
The resulting type after applying the <<
operator.
fn shl(self, other: i8) -> Self
[src]
Performs the <<
operation.
impl Shr<i8> for i16x8
[src]
type Output = Self
The resulting type after applying the >>
operator.
fn shr(self, other: i8) -> Self
[src]
Performs the >>
operation.
impl Shl<i16> for i16x8
[src]
type Output = Self
The resulting type after applying the <<
operator.
fn shl(self, other: i16) -> Self
[src]
Performs the <<
operation.
impl Shr<i16> for i16x8
[src]
type Output = Self
The resulting type after applying the >>
operator.
fn shr(self, other: i16) -> Self
[src]
Performs the >>
operation.
impl Shl<i32> for i16x8
[src]
type Output = Self
The resulting type after applying the <<
operator.
fn shl(self, other: i32) -> Self
[src]
Performs the <<
operation.
impl Shr<i32> for i16x8
[src]
type Output = Self
The resulting type after applying the >>
operator.
fn shr(self, other: i32) -> Self
[src]
Performs the >>
operation.
impl Shl<i64> for i16x8
[src]
type Output = Self
The resulting type after applying the <<
operator.
fn shl(self, other: i64) -> Self
[src]
Performs the <<
operation.
impl Shr<i64> for i16x8
[src]
type Output = Self
The resulting type after applying the >>
operator.
fn shr(self, other: i64) -> Self
[src]
Performs the >>
operation.
impl Shl<isize> for i16x8
[src]
type Output = Self
The resulting type after applying the <<
operator.
fn shl(self, other: isize) -> Self
[src]
Performs the <<
operation.
impl Shr<isize> for i16x8
[src]
type Output = Self
The resulting type after applying the >>
operator.
fn shr(self, other: isize) -> Self
[src]
Performs the >>
operation.
impl Sse2I16x8 for i16x8
[src]
fn adds(self, other: Self) -> Self
[src]
fn subs(self, other: Self) -> Self
[src]
fn madd(self, other: Self) -> i32x4
[src]
fn max(self, other: Self) -> Self
[src]
fn min(self, other: Self) -> Self
[src]
fn mulhi(self, other: Self) -> Self
[src]
fn packs(self, other: Self) -> i8x16
[src]
fn packus(self, other: Self) -> u8x16
[src]
impl Ssse3I16x8 for i16x8
[src]
fn abs(self) -> Self
[src]
fn hadd(self, other: Self) -> Self
[src]
fn hadds(self, other: Self) -> Self
[src]
fn hsub(self, other: Self) -> Self
[src]
fn hsubs(self, other: Self) -> Self
[src]
fn sign(self, other: Self) -> Self
[src]
fn mulhrs(self, other: Self) -> Self
[src]
impl Sse41I16x8 for i16x8
[src]
impl AvxI16x8 for i16x8
[src]
impl Debug for i16x8
[src]
fn fmt(&self, __arg_0: &mut Formatter) -> Result
[src]
Formats the value using the given formatter. Read more
impl Copy for i16x8
[src]
impl Simd for i16x8
[src]
type Bool = bool16ix8
The corresponding boolean vector type.
type Elem = i16
The element that this vector stores.