_mm_mask_getexp_sd
Classification
AVX-512, Miscellaneous, CPUID Test: AVX512F
Header File
immintrin.h
Instruction
VGETEXPSD xmm {k}, xmm, xmm
Synopsis
 _mm_mask_getexp_sd(__m128d src, __mmask8 k, __m128d a, __m128d b);
Description
Convert the exponent of the lower double-precision (64-bit) floating-point element in "b" to a double-precision (64-bit) floating-point number representing the integer exponent, store the result in the lower element of "dst" using writemask "k" (the element is copied from "src" when mask bit 0 is not set), and copy the upper element from "a" to the upper element of "dst". This intrinsic essentially calculates "floor(log2(x))" for the lower element.
Operation
IF k[0]
	dst[63:0] := ConvertExpFP64(b[63:0])
ELSE
	dst[63:0] := src[63:0]
FI
dst[127:64] := a[127:64]
dst[MAX:128] := 0