# Function _mm512_maskz_getmant_ps

1.89.0 · Source

    pub fn _mm512_maskz_getmant_ps(
        k: __mmask16,
        a: __m512,
        const NORM: _MM_MANTISSA_NORM_ENUM,
        const SIGN: _MM_MANTISSA_SIGN_ENUM,
    ) -> __m512

Available on (x86 or x86-64) and target feature `avx512f` and x86 only.
Expand description

Normalize the mantissas of packed single-precision (32-bit) floating-point elements in a, and store the results in dst using zeromask k (elements are zeroed out when the corresponding mask bit is not set). This intrinsic essentially calculates ±(2^k)*|x.significand|, where k depends on the interval range defined by interv and the sign depends on sc and the source sign.
The mantissa is normalized to the interval specified by interv, which can take the following values:
_MM_MANT_NORM_1_2 // interval [1, 2)
_MM_MANT_NORM_p5_2 // interval [0.5, 2)
_MM_MANT_NORM_p5_1 // interval [0.5, 1)
_MM_MANT_NORM_p75_1p5 // interval [0.75, 1.5)
The sign is determined by sc which can take the following values:
_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