Intel® C++ Compiler 16.0 User and Reference Guide
Reverse subtracts int32 vectors with borrow. The corresponding instruction is VPSBBRD. This intrinsic only applies to Intel® Many Integrated Core Architecture (Intel® MIC Architecture).
Without Mask extern _m512i __cdecl _mm512_sbbr_epi32(_m512i v2, __mmask16 k2, _m512i v3, __mmask16* borrow); |
With Mask extern _m512i __cdecl _mm512_mask_sbbr_epi32(_m512i v2, __mmask16 k1, __mmask16 k2, _m512i v3, __mmask16* borrow); |
v2 |
int32 vector subtracted from v3 |
v3 |
int32 vector from which subtraction is done; can contain the result of a swizzle/broadcast/conversion process on a memory or int32 vector |
k1 |
Writemask; only those elements of the source vectors with corresponding bit set to '1' in the k1 mask are computed and stored in the result |
k2 |
mask register; corresponding element subtracted from v2 |
borrow |
mask register; borrowed value of subtraction written into nth bit |
Performs an element-by-element three-input subtraction of the int32 vector v2, as well as the corresponding bit of k2, from int32 vector v3. The borrowed value from the subtraction difference for the nth element is written into the nth bit of vector mask k2_res.
The masked variant has one additional argument: k1. Only those elements in the source registers with the corresponding bit set in vector mask k1 are used for computing. Elements in v2 with corresponding bit clear in k1 are copied as is to the resulting vector.
Returns the result of the subtraction operation. The borrowed value is written into k2_res.