core::arch::x86

Function _mm_reduce_round_ss

source
pub unsafe fn _mm_reduce_round_ss(
    a: __m128,
    b: __m128,
    const IMM8: i32,
    const SAE: i32,
) -> __m128
🔬This is a nightly-only experimental API. (stdarch_x86_avx512 #111137)
Available on (x86 or x86-64) and target feature avx512dq and x86 only.
Expand description

Extract the reduced argument of the lower single-precision (32-bit) floating-point element in b by the number of bits specified by imm8, store the result in the lower element of dst, and copy the upper element from a. to the upper element of dst. Rounding is done according to the imm8 parameter, which can be one of:

- _MM_FROUND_TO_NEAREST_INT // round to nearest
- _MM_FROUND_TO_NEG_INF     // round down
- _MM_FROUND_TO_POS_INF     // round up
- _MM_FROUND_TO_ZERO        // truncate
- _MM_FROUND_CUR_DIRECTION  // use MXCSR.RC; see _MM_SET_ROUNDING_MODE

Exceptions can be suppressed by passing _MM_FROUND_NO_EXC in the sae parameter.

Intel’s Documentation