_mm512_mask_scale_round_ps
Classification
KNC, Arithmetic, CPUID Test: KNCNI
Header File
Instruction
VSCALEPS zmm {k}, zmm, m512
Synopsis
_mm512_mask_scale_round_ps(__m512 src, __mmask16 k, __m512 a, __m512i b, int rounding);
Description
Scales each single-precision (32-bit) floating-point element in "a" by multiplying it by 2**exp, where the exp is the corresponding 32-bit integer element in "b", storing results in "dst" using writemask "k" (elements are copied from "src" when the corresponding mask bit is not set). Results are rounded using constant "rounding".
[round_note]
Operation
FOR j := 0 to 15
i := j*32
IF k[j]
dst[i+31:i] := a[i+31:i] * POW(2.0, FP32(b[i+31:i]))
ELSE
dst[i+31:i] := src[i+31:i]
FI
ENDFOR
dst[MAX:512] := 0