_mm_mask_cvt_roundsd_ss
Classification
AVX-512, Convert, CPUID Test: AVX512F
Header File
immintrin.h
Instruction
VCVTSD2SS xmm {k}, xmm, xmm {er}
Synopsis
 _mm_mask_cvt_roundsd_ss(__m128 src, __mmask8 k, __m128 a, __m128d b, int rounding);
Description
Convert the lower double-precision (64-bit) floating-point element in "b" to a single-precision (32-bit) floating-point element, 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 3 packed elements from "a" to the upper elements of "dst". [round_note]
Operation
IF k[0]
	dst[31:0] := Convert_FP64_To_FP32(b[63:0])
ELSE
	dst[31:0] := src[31:0]
FI
dst[127:32] := a[127:32]
dst[MAX:128] := 0