Function core::arch::x86_64::_mm_mask_fmadd_round_sd[][src]

pub unsafe fn _mm_mask_fmadd_round_sd<const ROUNDING: i32>(
    a: __m128d,
    k: __mmask8,
    b: __m128d,
    c: __m128d
) -> __m128d
🔬 This is a nightly-only experimental API. (stdsimd #48556)
This is supported on x86-64 and target feature avx512f only.
Expand description

将 a 和 b 中的较低双精度 (64-bit) 浮点元素相乘,并使用 writemask k 将中间结果添加到 dst 较低元素中的较低元素 in c. Store 的结果 (当未使用掩码位 0 时从 a 复制该元素) set),然后将上层元素从 a 复制到 dst 的上层元素。

根据 rounding[3: 0] 参数进行舍入,该参数可以是以下之一:
(_MM_FROUND_TO_NEAREST_INT | _MM_FROUND_NO_EXC) // 舍入到最接近的值,并抑制异常
(_MM_FROUND_TO_NEG_INF | _MM_FROUND_NO_EXC) // 向下取整并抑制异常
(_MM_FROUND_TO_POS_INF | _MM_FROUND_NO_EXC) // 向上取整并抑制异常
(_MM_FROUND_TO_ZERO | _MM_FROUND_NO_EXC) // 截断并抑制异常
_MM_FROUND_CUR_DIRECTION // 使用 MXCSR.RC; 请参见 _MM_SET_ROUNDING_MODE

Intel’s documentation