pub struct __m256d(_, _, _, _);
Available on x86-64 only.
Expand description
256-bit wide set of four f64
types, x86-specific
This type is the same as the __m256d
type defined by Intel,
representing a 256-bit SIMD register which internally is consisted of
four packed f64
instances. Usage of this type typically corresponds
to the avx
and up target features for x86/x86_64.
Note that unlike __m256i
, the integer version of the 256-bit
registers, this __m256d
type has one interpretation. Each instance
of __m256d
always corresponds to f64x4
, or four f64
types packed
together.
Most intrinsics using __m256d
are prefixed with _mm256_
and are
suffixed with “pd” (or otherwise contain “pd”). Not to be confused with
“ps” which is used for __m256
.
Examples
#[cfg(target_arch = "x86")]
use std::arch::x86::*;
#[cfg(target_arch = "x86_64")]
use std::arch::x86_64::*;
let four_zeros = _mm256_setzero_pd();
let four_ones = _mm256_set1_pd(1.0);
let four_floats = _mm256_set_pd(1.0, 2.0, 3.0, 4.0);
Trait Implementations§
impl Copy for __m256d
impl Pod for __m256d
Auto Trait Implementations§
impl RefUnwindSafe for __m256d
impl Send for __m256d
impl Sync for __m256d
impl Unpin for __m256d
impl UnwindSafe for __m256d
Blanket Implementations§
§impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
impl<T> CheckedBitPattern for Twhere T: AnyBitPattern,
§type Bits = T
type Bits = T
Self
must have the same layout as the specified Bits
except for
the possible invalid bit patterns being checked during
is_valid_bit_pattern
.§fn is_valid_bit_pattern(_bits: &T) -> bool
fn is_valid_bit_pattern(_bits: &T) -> bool
If this function returns true, then it must be valid to reinterpret
bits
as &Self
.source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
§impl<T> RoundFrom<T> for T
impl<T> RoundFrom<T> for T
§fn round_from(x: T) -> T
fn round_from(x: T) -> T
Performs the conversion.
§impl<T, U> RoundInto<U> for Twhere
U: RoundFrom<T>,
impl<T, U> RoundInto<U> for Twhere U: RoundFrom<T>,
§fn round_into(self) -> U
fn round_into(self) -> U
Performs the conversion.