Function core::arch::x86_64::_mm_getmant_pd

source ·
pub unsafe fn _mm_getmant_pd(
    a: __m128d,
    const NORM: _MM_MANTISSA_NORM_ENUM,
    const SIGN: _MM_MANTISSA_SIGN_ENUM
) -> __m128d
🔬This is a nightly-only experimental API. (stdsimd #48556)
Available on (x86 or x86-64) and target feature avx512f,avx512vl and x86-64 only.
Expand description

将 a 中的包装的双精度 (64-bit) 浮点元素的尾数规格化,并将结果存储在 dst 中。此内部函数本质上计算 ±(2^k)*|x.significand|,其中 k 取决于由 interv 定义的间隔范围,而符号取决于 sc 和源符号。
尾数被标准化为由 interv 指定的间隔,该间隔可以采用以下值:
_MM_MANT_NORM_1_2 // 区间 [1, 2)
_MM_MANT_NORM_p5_2 // 区间 [0.5, 2)
_MM_MANT_NORM_p5_1 // 区间 [0.5, 1)
_MM_MANT_NORM_p75_1p5 // interval [0.75, 1.5)
该符号由 sc 确定,可以采用以下值:
_MM_MANT_SIGN_src // sign = sign(src)
_MM_MANT_SIGN_zero // sign = 0
_MM_MANT_SIGN_nan // dst = NaN if sign(src) = 1

Intel’s documentation