1.27.0[][src]Struct core::arch::x86_64::__m128i

#[repr(simd)]pub struct __m128i(_, _);
This is supported on x86-64 only.

128-bit wide integer vector type, x86-specific

This type is the same as the __m128i type defined by Intel, representing a 128-bit SIMD register. Usage of this type typically corresponds to the sse and up target features for x86/x86_64.

Internally this type may be viewed as:

(as well as unsigned versions). Each intrinsic may interpret the internal bits differently, check the documentation of the intrinsic to see how it's being used.

Note that this means that an instance of __m128i typically just means a "bag of bits" which is left up to interpretation at the point of use.

Most intrinsics using __m128i are prefixed with _mm_ and the integer types tend to correspond to suffixes like "epi8" or "epi32".


#[cfg(target_arch = "x86")]
use std::arch::x86::*;
#[cfg(target_arch = "x86_64")]
use std::arch::x86_64::*;

let all_bytes_zero = _mm_setzero_si128();
let all_bytes_one = _mm_set1_epi8(1);
let four_i32 = _mm_set_epi32(1, 2, 3, 4);

Trait Implementations

impl Clone for __m128i[src]

impl Copy for __m128i[src]

impl Debug for __m128i[src]

Auto Trait Implementations

impl Send for __m128i

impl Sync for __m128i

impl Unpin for __m128i

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized

impl<T> Borrow<T> for T where
    T: ?Sized

impl<T> BorrowMut<T> for T where
    T: ?Sized

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.