Function tracing_core::stdlib::arch::x86_64::_mm512_getmant_round_ph
source · pub unsafe fn _mm512_getmant_round_ph<const NORM: i32, const SIGN: i32, const SAE: i32>(
a: __m512h,
) -> __m512h
🔬This is a nightly-only experimental API. (
stdarch_x86_avx512_f16
#127213)Available on x86-64 only.
Expand description
Normalize the mantissas of packed half-precision (16-bit) floating-point elements in a, and store
the results in dst. This intrinsic essentially calculates ±(2^k)*|x.significand|
, where k depends
on the interval range defined by norm and the sign depends on sign and the source sign. Exceptions can
be suppressed by passing _MM_FROUND_NO_EXC in the sae parameter
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
Exceptions can be suppressed by passing _MM_FROUND_NO_EXC in the sae parameter