__m512d in core::arch::x86 - Rust (original) (raw)
Struct __m512d
1.72.0 · Source
#[repr(simd)]
pub struct __m512d(/* private fields */);
Available on x86 and (x86 or x86-64) only.
Expand description
512-bit wide set of eight f64
types, x86-specific
This type is the same as the __m512d
type defined by Intel, representing a 512-bit SIMD register which internally is consisted of eight packed f64
instances. Usage of this type typically corresponds to the avx
and up target features for x86/x86_64.
Note that unlike __m512i
, the integer version of the 512-bit registers, this __m512d
type has one interpretation. Each instance of __m512d
always corresponds to f64x8
, or eight f64
types packed together.
The in-memory representation of this type is the same as the one of an equivalent array (i.e. the in-memory order of elements is the same, and there is no padding between two consecutive elements); however, the alignment is different and equal to the size of the type. Note that the ABI for function calls may not be the same.
Most intrinsics using __m512d
are prefixed with _mm512_
and are suffixed with “pd” (or otherwise contain “pd”). Not to be confused with “ps” which is used for __m512
.