_mm_mask_fmsub_sh
Classification
AVX-512, Arithmetic, CPUID Test: AVX512_FP16
Header File
Instruction
VFMSUB132SH xmm {k}, xmm, xmm
Synopsis
_mm_mask_fmsub_sh(__m128h a, __mmask8 k, __m128h b, __m128h c);
Description
Multiply the lower half-precision (16-bit) floating-point elements in "a" and "b", and subtract the lower element in "c" from the intermediate result. Store the result in the lower element of "dst" using writemask "k" (the element is copied from "a" when mask bit 0 is not set), and copy the upper 7 packed elements from "a" to the upper elements of "dst".
Operation
IF k[0]
dst.fp16[0] := (a.fp16[0] * b.fp16[0]) - c.fp16[0]
ELSE
dst.fp16[0] := a.fp16[0]
FI
dst[127:16] := a[127:16]
dst[MAX:128] := 0