Intel® C++ Compiler 16.0 User and Reference Guide
Converts and rounds float32 vector to int32 vector. Corresponding instruction is VCVTFXPNTDQ2PS. This intrinsic only applies to Intel® Many Integrated Core Architecture (Intel® MIC Architecture).
Without Mask extern __m512i __cdecl _mm512_cvtfxpnt_round_adjustps_epi32(__m512 v2, int rc, _MM_EXP_ADJ_ENUM expadj); |
With Mask extern __m512i __cdecl _mm512_mask_cvtfxpnt_round_adjustps_epi32(__m512i v1_old, __mmask16 k1, __m512 v2, int rc, _MM_EXP_ADJ_ENUM expadj); |
Performs an element-by-element conversion and rounding of the float32 vector v2 to an int32 vector, then performs an optional adjustment to the exponent according to the expadj value specified.
Out-of-range values are converted to the nearest representable value and that NaNs convert to 0, because this makes the calculation of Exp2 more efficient (avoiding problems with converting very large values to integers, where undetected incorrect values could otherwise result from overflow).
The masked variant has one additional argument: k1. Only those elements in the source vectors with the corresponding bit set in vector mask k1 are used for computing.
Returns the result of the conversion operation.