_subborrow_u64
Classification
Other, Arithmetic, CPUID Test: None
Header File
immintrin.h
Instruction
SBB r64, r64
Synopsis
 _subborrow_u64(unsigned char c_in, unsigned __int64 a, unsigned __int64 b, unsigned __int64 * out);
Description
Add unsigned 8-bit borrow "c_in" (carry flag) to unsigned 64-bit integer "b", and subtract the result from unsigned 64-bit integer "a". Store the unsigned 64-bit result in "out", and the carry-out in "dst" (carry or overflow flag).
Operation
tmp[64:0] := a[63:0] - (b[63:0] + (c_in > 0 ? 1 : 0))
MEM[out+63:out] := tmp[63:0]
dst[0] := tmp[64]
dst[7:1] := 0