Function core::arch::x86::_mm_mask_fnmadd_round_ss
source · pub unsafe fn _mm_mask_fnmadd_round_ss(
a: __m128,
k: __mmask8,
b: __m128,
c: __m128,
const ROUNDING: i32
) -> __m128
🔬This is a nightly-only experimental API. (
stdsimd
#48556)Available on (x86 or x86-64) and target feature
avx512f
and x86 only.Expand description
将 a 和 b 中的较低单精度 (32-bit) 浮点元素相乘,然后使用写掩码 k 将求反的中间结果与较低元素 in c. Store 的结果相加到 dst 较低元素中 (当掩码位 0 为 0 时,该元素是从 a 复制的 (未设置),然后将前 3 个包装的元素从 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