Intel® C++ Compiler XE 13.1 User and Reference Guides

_mm512_getmant_ps/ _mm512_mask_getmant_ps

Extracts float32 normalized mantissas. Corresponding instruction is VGETMANTPS. This intrinsic only applies to Intel® Many Integrated Core Architecture (Intel® MIC Architecture).

Syntax

Without Mask

extern __m512 __cdecl _mm512_getmant_ps(__m512 v2, _MM_MANTISSA_NORM_ENUM i, _MM_MANTISSA_SIGN_ENUM s);

With Mask

extern __m512 __cdecl _mm512_mask_getmant_ps(__m512 v1_old, __mmask16 k1, __m512 v2, _MM_MANTISSA_NORM_ENUM i, _MM_MANTISSA_SIGN_ENUM s);

Parameters

v2

float32 vector used for the extract operation

v1_old

Source vector that retains old values of the destination vector; the resulting vector gets corresponding elements from v1_old for zero mask bits

k1

Writemask; only those elements of the source vectors with corresponding bit set to '1' in the k1 mask are computed and stored in the result; elements in the result vector corresponding to zero bit in k1 are copied from corresponding elements of vector v1_old

i

Interval constants for mantissa extraction, where _MM_MANTISSA_NORM_ENUM takes one of the following values:

  • _MM_MANT_NORM_1_2 - interval [1, 2)
  • _MM_MANT_NORM_p5_2 - interval [1.5, 2)
  • _MM_MANT_NORM_p5_1 - interval [1.5, 1)
  • _MM_MANT_NORM_p75_1p5 - interval [0.75, 1.5)

s

Sign constants for mantissa extraction, where _MM_MANTISSA_SIGN_ENUM takes one of the following values:

  • _MM_MANT_SIGN_src - sign = sign(SRC)
  • _MM_MANT_SIGN_zero - sign = 0
  • _MM_MANT_SIGN_nan - DEST = NaN if sign(SRC) = 1

Description

Extracts float32 normalized mantissas from vector v2 elements.

The masked variant has one additional argument: k1. Only those elements in the source registers with the corresponding bit set in vector mask k1 are used for computing.

Returns

Returns the result of the extract operation.


Submit feedback on this help topic