native 0.0.1
Vectors, masks and wide register packs for C++26
Loading...
Searching...
No Matches
native.x86.adx Module Reference

Exported Modules

module  native.x86.features

Functions

template<isa< x86 > Arch = NATIVE_BASELINE>
requires (Arch.has(x86_feature::adx))
constexpr std::uint8_t native::addcarryx (std::uint8_t carry, std::uint32_t a, std::uint32_t b, std::uint32_t *result) noexcept
 Add 32-bit operands with carry, writing the modular result.
template<isa< x86 > Arch = NATIVE_BASELINE>
requires (!Arch.has(x86_feature::adx))
consteval std::uint8_t native::addcarryx (std::uint8_t carry, std::uint32_t a, std::uint32_t b, std::uint32_t *result) noexcept
 Constant 32-bit addition with carry without ADX.
template<isa< x86 > Arch = NATIVE_BASELINE>
requires (Arch.has(x86_feature::adx))
constexpr std::uint8_t native::addcarryx (std::uint8_t carry, std::uint64_t a, std::uint64_t b, std::uint64_t *result) noexcept
 Add 64-bit operands with carry, writing the modular result.
template<isa< x86 > Arch = NATIVE_BASELINE>
requires (!Arch.has(x86_feature::adx))
consteval std::uint8_t native::addcarryx (std::uint8_t carry, std::uint64_t a, std::uint64_t b, std::uint64_t *result) noexcept
 Constant 64-bit addition with carry without ADX.

Files

file  src/native.x86.adx.ccm