_mm512_mask_sbbr_epi32
Classification
KNC, Arithmetic, CPUID Test: KNCNI
Header File
immintrin.h
Instruction
VPSBBRD zmm {k}, k, zmm
Synopsis
 _mm512_mask_sbbr_epi32(__m512i v2, __mmask16 k1, __mmask16 k2, __m512i v3, __mmask16 * borrow);
Description
Performs element-by-element three-input subtraction of packed 32-bit integer elements of "v2" as well as the corresponding bit from "k2" from "v3". The borrowed value from the subtraction difference for the nth element is written to the nth bit of "borrow" (borrow flag). Results are stored in "dst" using writemask "k1" (elements are copied from "v2" when the corresponding mask bit is not set).
Operation
FOR j := 0 to 15
	i := j*32
	IF k1[j]
		dst[i+31:i] := v3[i+31:i] - v2[i+31:i] - k2[j]
		borrow[j] := Borrow(v2[i+31:i] - v3[i+31:i] - k2[j])
	ELSE
		dst[i+31:i] := v2[i+31:i]
	FI
ENDFOR
dst[MAX:512] := 0