_mm_mask_getexp_ps
Classification
AVX-512, Miscellaneous, CPUID Test: AVX512F
Header File
Instruction
VGETEXPPS xmm {k}, xmm
Synopsis
_mm_mask_getexp_ps(__m128 src, __mmask8 k, __m128 a);
Description
Convert the exponent of each packed single-precision (32-bit) floating-point element in "a" to a single-precision (32-bit) floating-point number representing the integer exponent, and store the results in "dst" using writemask "k" (elements are copied from "src" when the corresponding mask bit is not set). This intrinsic essentially calculates "floor(log2(x))" for each element.
Operation
FOR j := 0 to 3
i := j*32
IF k[j]
dst[i+31:i] := ConvertExpFP32(a[i+31:i])
ELSE
dst[i+31:i] := src[i+31:i]
FI
ENDFOR
dst[MAX:128] := 0