src/intops/impl/intrinsics/x86

Source   Edit  

Intel/AMD intrinsics-based implementations of arithmetic operations for integers.

Procs

func borrowingSub(a, b: uint32; borrowIn: bool): (uint32, bool) {....raises: [],
    inline, noinit, ...gcsafe, tags: [], forbids: [].}
Source   Edit  
func borrowingSub(a, b: uint64; borrowIn: bool): (uint64, bool) {....raises: [],
    inline, noinit, ...gcsafe, raises: [], inline, noinit, ...gcsafe, tags: [],
    forbids: [].}
Source   Edit  
func builtinBorrowingSub(borrowIn: uint8; a, b: cuint; res: ptr uint32): uint8 {.
    importc: "_subborrow_u32", header: "<x86intrin.h>", nodecl, ...raises: [],
    tags: [], forbids: [].}
Source   Edit  
func builtinBorrowingSub(borrowIn: uint8; a, b: culonglong; res: ptr culonglong): uint8 {.
    importc: "_subborrow_u64", header: "<x86intrin.h>", nodecl, ...raises: [],
    inline, noinit, ...gcsafe, raises: [], inline, noinit, ...gcsafe, tags: [],
    forbids: [].}
Source   Edit  
func builtinCarryingAdd(carryIn: uint8; a, b: cuint; res: ptr cuint): uint8 {.
    importc: "_addcarry_u32", header: "<x86intrin.h>", nodecl, ...raises: [],
    tags: [], forbids: [].}
Source   Edit  
func builtinCarryingAdd(carryIn: uint8; a, b: culonglong; res: ptr culonglong): uint8 {.
    importc: "_addcarry_u64", header: "<x86intrin.h>", nodecl, ...raises: [],
    inline, noinit, ...gcsafe, raises: [], inline, noinit, ...gcsafe, tags: [],
    forbids: [].}
Source   Edit  
func carryingAdd(a, b: uint32; carryIn: bool): (uint32, bool) {....raises: [],
    inline, noinit, ...gcsafe, tags: [], forbids: [].}
Source   Edit  
func carryingAdd(a, b: uint64; carryIn: bool): (uint64, bool) {....raises: [],
    inline, noinit, ...gcsafe, raises: [], inline, noinit, ...gcsafe, tags: [],
    forbids: [].}
Source   Edit