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

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

将 b 中的下部单精度 (32-bit) 浮点元素四舍五入到 imm8 指定的分数位数,使用写掩码 k 将结果存储在 dst 的下部元素中 (当未设置掩码位 0 时,该元素从 src 复制),然后将前 3 个包装的元素从 a 复制到 dst 的高元素。
根据 imm8[2: 0] 参数进行舍入,该参数可以是以下之一:
_MM_FROUND_TO_NEAREST_INT // 舍入到最接近的值
_MM_FROUND_TO_NEG_INF // 向下取整
_MM_FROUND_TO_POS_INF // 向上舍入
_MM_FROUND_TO_ZERO // 截断
_MM_FROUND_CUR_DIRECTION // 使用 MXCSR.RC; 请参见 _MM_SET_ROUNDING_MODE

可以通过在 sae 参数中传递 _MM_FROUND_NO_EXC 来抑制异常。 Intel’s documentation