Namespaces | Typedefs | Functions | Variables
cpuid_x64.h File Reference

Go to the source code of this file.

Namespaces

 x64
 
 x64::cpuid
 
 x64::cpuid::eax
 
 x64::cpuid::ebx
 
 x64::cpuid::ecx
 
 x64::cpuid::edx
 
 x64::cpuid::addr_size
 
 x64::cpuid::addr_size::phys
 
 x64::cpuid::addr_size::linear
 
 x64::cpuid::feature_information
 
 x64::cpuid::feature_information::ecx
 
 x64::cpuid::feature_information::ecx::sse3
 
 x64::cpuid::feature_information::ecx::pclmulqdq
 
 x64::cpuid::feature_information::ecx::dtes64
 
 x64::cpuid::feature_information::ecx::monitor
 
 x64::cpuid::feature_information::ecx::ds_cpl
 
 x64::cpuid::feature_information::ecx::vmx
 
 x64::cpuid::feature_information::ecx::smx
 
 x64::cpuid::feature_information::ecx::eist
 
 x64::cpuid::feature_information::ecx::tm2
 
 x64::cpuid::feature_information::ecx::ssse3
 
 x64::cpuid::feature_information::ecx::cnxt_id
 
 x64::cpuid::feature_information::ecx::sdbg
 
 x64::cpuid::feature_information::ecx::fma
 
 x64::cpuid::feature_information::ecx::cmpxchg16b
 
 x64::cpuid::feature_information::ecx::xtpr_update_control
 
 x64::cpuid::feature_information::ecx::pdcm
 
 x64::cpuid::feature_information::ecx::pcid
 
 x64::cpuid::feature_information::ecx::dca
 
 x64::cpuid::feature_information::ecx::sse41
 
 x64::cpuid::feature_information::ecx::sse42
 
 x64::cpuid::feature_information::ecx::x2apic
 
 x64::cpuid::feature_information::ecx::movbe
 
 x64::cpuid::feature_information::ecx::popcnt
 
 x64::cpuid::feature_information::ecx::tsc_deadline
 
 x64::cpuid::feature_information::ecx::aesni
 
 x64::cpuid::feature_information::ecx::xsave
 
 x64::cpuid::feature_information::ecx::osxsave
 
 x64::cpuid::feature_information::ecx::avx
 
 x64::cpuid::feature_information::ecx::f16c
 
 x64::cpuid::feature_information::ecx::rdrand
 
 x64::cpuid::extended_feature_flags
 
 x64::cpuid::extended_feature_flags::subleaf0
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::fsgsbase
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::ia32_tsc_adjust
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::sgx
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::bmi1
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::hle
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::avx2
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::fdp_excptn_only
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::smep
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::bmi2
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::enhanced_rep
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::invpcid
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::rtm
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::rdt_m
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::depreciated_fpu_cs_ds
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::mpx
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::rdt_a
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::rdseed
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::adx
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::smap
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::clflushopt
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::clwb
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::processor_trace
 
 x64::cpuid::extended_feature_flags::subleaf0::ebx::sha
 
 x64::cpuid::arch_perf_monitoring
 
 x64::cpuid::arch_perf_monitoring::eax
 
 x64::cpuid::arch_perf_monitoring::eax::version_id
 
 x64::cpuid::arch_perf_monitoring::eax::gppmc_count
 
 x64::cpuid::arch_perf_monitoring::eax::gppmc_bit_width
 
 x64::cpuid::arch_perf_monitoring::eax::ebx_enumeration_length
 
 x64::cpuid::arch_perf_monitoring::ebx
 
 x64::cpuid::arch_perf_monitoring::ebx::core_cycle_event
 
 x64::cpuid::arch_perf_monitoring::ebx::instr_retired_event
 
 x64::cpuid::arch_perf_monitoring::ebx::reference_cycles_event
 
 x64::cpuid::arch_perf_monitoring::ebx::llc_reference_event
 
 x64::cpuid::arch_perf_monitoring::ebx::llc_misses_event
 
 x64::cpuid::arch_perf_monitoring::ebx::branch_instr_retired_event
 
 x64::cpuid::arch_perf_monitoring::ebx::branch_mispredict_retired_event
 
 x64::cpuid::arch_perf_monitoring::edx
 
 x64::cpuid::arch_perf_monitoring::edx::ffpmc_count
 
 x64::cpuid::arch_perf_monitoring::edx::ffpmc_bit_width
 

Typedefs

using x64::cpuid::field_type = uint32_t
 
using x64::cpuid::value_type = uint32_t
 

Functions

uint32_t __cpuid_eax (uint32_t val) noexcept
 
uint32_t __cpuid_ebx (uint32_t val) noexcept
 
uint32_t __cpuid_ecx (uint32_t val) noexcept
 
uint32_t __cpuid_edx (uint32_t val) noexcept
 
void __cpuid (void *eax, void *ebx, void *ecx, void *edx) noexcept
 
template<class T1 , class T2 , class T3 , class T4 , class = typename std::enable_if<std::is_integral<T1>::value>::type, class = typename std::enable_if<std::is_integral<T2>::value>::type, class = typename std::enable_if<std::is_integral<T3>::value>::type, class = typename std::enable_if<std::is_integral<T4>::value>::type>
auto x64::cpuid::get (T1 eax, T2 ebx, T3 ecx, T4 edx) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
auto x64::cpuid::eax::get (T eax) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
auto x64::cpuid::ebx::get (T ebx) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
auto x64::cpuid::ecx::get (T ecx) noexcept
 
template<class T , class = typename std::enable_if<std::is_integral<T>::value>::type>
auto x64::cpuid::edx::get (T edx) noexcept
 
auto x64::cpuid::addr_size::phys::get () noexcept
 
auto x64::cpuid::addr_size::linear::get () noexcept
 
auto x64::cpuid::feature_information::ecx::sse3::get () noexcept
 
auto x64::cpuid::feature_information::ecx::pclmulqdq::get () noexcept
 
auto x64::cpuid::feature_information::ecx::dtes64::get () noexcept
 
auto x64::cpuid::feature_information::ecx::monitor::get () noexcept
 
auto x64::cpuid::feature_information::ecx::ds_cpl::get () noexcept
 
auto x64::cpuid::feature_information::ecx::vmx::get () noexcept
 
auto x64::cpuid::feature_information::ecx::smx::get () noexcept
 
auto x64::cpuid::feature_information::ecx::eist::get () noexcept
 
auto x64::cpuid::feature_information::ecx::tm2::get () noexcept
 
auto x64::cpuid::feature_information::ecx::ssse3::get () noexcept
 
auto x64::cpuid::feature_information::ecx::cnxt_id::get () noexcept
 
auto x64::cpuid::feature_information::ecx::sdbg::get () noexcept
 
auto x64::cpuid::feature_information::ecx::fma::get () noexcept
 
auto x64::cpuid::feature_information::ecx::cmpxchg16b::get () noexcept
 
auto x64::cpuid::feature_information::ecx::xtpr_update_control::get () noexcept
 
auto x64::cpuid::feature_information::ecx::pdcm::get () noexcept
 
auto x64::cpuid::feature_information::ecx::pcid::get () noexcept
 
auto x64::cpuid::feature_information::ecx::dca::get () noexcept
 
auto x64::cpuid::feature_information::ecx::sse41::get () noexcept
 
auto x64::cpuid::feature_information::ecx::sse42::get () noexcept
 
auto x64::cpuid::feature_information::ecx::x2apic::get () noexcept
 
auto x64::cpuid::feature_information::ecx::movbe::get () noexcept
 
auto x64::cpuid::feature_information::ecx::popcnt::get () noexcept
 
auto x64::cpuid::feature_information::ecx::tsc_deadline::get () noexcept
 
auto x64::cpuid::feature_information::ecx::aesni::get () noexcept
 
auto x64::cpuid::feature_information::ecx::xsave::get () noexcept
 
auto x64::cpuid::feature_information::ecx::osxsave::get () noexcept
 
auto x64::cpuid::feature_information::ecx::avx::get () noexcept
 
auto x64::cpuid::feature_information::ecx::f16c::get () noexcept
 
auto x64::cpuid::feature_information::ecx::rdrand::get () noexcept
 
void x64::cpuid::feature_information::ecx::dump () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::fsgsbase::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::ia32_tsc_adjust::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::sgx::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::bmi1::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::hle::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::avx2::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::fdp_excptn_only::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::smep::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::bmi2::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::enhanced_rep::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::invpcid::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rtm::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rdt_m::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::depreciated_fpu_cs_ds::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::mpx::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rdt_a::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rdseed::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::adx::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::smap::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::clflushopt::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::clwb::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::processor_trace::get () noexcept
 
auto x64::cpuid::extended_feature_flags::subleaf0::ebx::sha::get () noexcept
 
void x64::cpuid::extended_feature_flags::subleaf0::ebx::dump () noexcept
 
auto x64::cpuid::arch_perf_monitoring::eax::version_id::get () noexcept
 
auto x64::cpuid::arch_perf_monitoring::eax::gppmc_count::get () noexcept
 
auto x64::cpuid::arch_perf_monitoring::eax::gppmc_bit_width::get () noexcept
 
auto x64::cpuid::arch_perf_monitoring::eax::ebx_enumeration_length::get () noexcept
 
auto x64::cpuid::arch_perf_monitoring::ebx::core_cycle_event::is_available () noexcept
 
auto x64::cpuid::arch_perf_monitoring::ebx::instr_retired_event::is_available () noexcept
 
auto x64::cpuid::arch_perf_monitoring::ebx::reference_cycles_event::is_available () noexcept
 
auto x64::cpuid::arch_perf_monitoring::ebx::llc_reference_event::is_available () noexcept
 
auto x64::cpuid::arch_perf_monitoring::ebx::llc_misses_event::is_available () noexcept
 
auto x64::cpuid::arch_perf_monitoring::ebx::branch_instr_retired_event::is_available () noexcept
 
auto x64::cpuid::arch_perf_monitoring::ebx::branch_mispredict_retired_event::is_available () noexcept
 
auto x64::cpuid::arch_perf_monitoring::edx::ffpmc_count::get () noexcept
 
auto x64::cpuid::arch_perf_monitoring::edx::ffpmc_bit_width::get () noexcept
 

Variables

constexpr const auto x64::cpuid::addr_size::addr = 0x80000008U
 
constexpr const auto x64::cpuid::addr_size::name = "addr_size"
 
constexpr const auto x64::cpuid::addr_size::phys::mask = 0x000000FFU
 
constexpr const auto x64::cpuid::addr_size::phys::from = 0
 
constexpr const auto x64::cpuid::addr_size::phys::name = "phys"
 
constexpr const auto x64::cpuid::addr_size::linear::mask = 0x0000FF00U
 
constexpr const auto x64::cpuid::addr_size::linear::from = 8
 
constexpr const auto x64::cpuid::addr_size::linear::name = "linear"
 
constexpr const auto x64::cpuid::feature_information::addr = 0x00000001U
 
constexpr const auto x64::cpuid::feature_information::name = "feature_information"
 
constexpr const auto x64::cpuid::feature_information::ecx::sse3::mask = 0x00000001U
 
constexpr const auto x64::cpuid::feature_information::ecx::sse3::from = 0
 
constexpr const auto x64::cpuid::feature_information::ecx::sse3::name = "sse3"
 
constexpr const auto x64::cpuid::feature_information::ecx::pclmulqdq::mask = 0x00000002U
 
constexpr const auto x64::cpuid::feature_information::ecx::pclmulqdq::from = 1
 
constexpr const auto x64::cpuid::feature_information::ecx::pclmulqdq::name = "pclmulqdq"
 
constexpr const auto x64::cpuid::feature_information::ecx::dtes64::mask = 0x00000004U
 
constexpr const auto x64::cpuid::feature_information::ecx::dtes64::from = 2
 
constexpr const auto x64::cpuid::feature_information::ecx::dtes64::name = "dtes64"
 
constexpr const auto x64::cpuid::feature_information::ecx::monitor::mask = 0x00000008U
 
constexpr const auto x64::cpuid::feature_information::ecx::monitor::from = 3
 
constexpr const auto x64::cpuid::feature_information::ecx::monitor::name = "monitor"
 
constexpr const auto x64::cpuid::feature_information::ecx::ds_cpl::mask = 0x00000010U
 
constexpr const auto x64::cpuid::feature_information::ecx::ds_cpl::from = 4
 
constexpr const auto x64::cpuid::feature_information::ecx::ds_cpl::name = "ds_cpl"
 
constexpr const auto x64::cpuid::feature_information::ecx::vmx::mask = 0x00000020U
 
constexpr const auto x64::cpuid::feature_information::ecx::vmx::from = 5
 
constexpr const auto x64::cpuid::feature_information::ecx::vmx::name = "vmx"
 
constexpr const auto x64::cpuid::feature_information::ecx::smx::mask = 0x00000040U
 
constexpr const auto x64::cpuid::feature_information::ecx::smx::from = 6
 
constexpr const auto x64::cpuid::feature_information::ecx::smx::name = "smx"
 
constexpr const auto x64::cpuid::feature_information::ecx::eist::mask = 0x00000080U
 
constexpr const auto x64::cpuid::feature_information::ecx::eist::from = 7
 
constexpr const auto x64::cpuid::feature_information::ecx::eist::name = "eist"
 
constexpr const auto x64::cpuid::feature_information::ecx::tm2::mask = 0x00000100U
 
constexpr const auto x64::cpuid::feature_information::ecx::tm2::from = 8
 
constexpr const auto x64::cpuid::feature_information::ecx::tm2::name = "tm2"
 
constexpr const auto x64::cpuid::feature_information::ecx::ssse3::mask = 0x00000200U
 
constexpr const auto x64::cpuid::feature_information::ecx::ssse3::from = 9
 
constexpr const auto x64::cpuid::feature_information::ecx::ssse3::name = "ssse3"
 
constexpr const auto x64::cpuid::feature_information::ecx::cnxt_id::mask = 0x00000400U
 
constexpr const auto x64::cpuid::feature_information::ecx::cnxt_id::from = 10
 
constexpr const auto x64::cpuid::feature_information::ecx::cnxt_id::name = "cnxt_id"
 
constexpr const auto x64::cpuid::feature_information::ecx::sdbg::mask = 0x00000800U
 
constexpr const auto x64::cpuid::feature_information::ecx::sdbg::from = 11
 
constexpr const auto x64::cpuid::feature_information::ecx::sdbg::name = "sdbg"
 
constexpr const auto x64::cpuid::feature_information::ecx::fma::mask = 0x00001000U
 
constexpr const auto x64::cpuid::feature_information::ecx::fma::from = 12
 
constexpr const auto x64::cpuid::feature_information::ecx::fma::name = "fma"
 
constexpr const auto x64::cpuid::feature_information::ecx::cmpxchg16b::mask = 0x00002000U
 
constexpr const auto x64::cpuid::feature_information::ecx::cmpxchg16b::from = 13
 
constexpr const auto x64::cpuid::feature_information::ecx::cmpxchg16b::name = "cmpxchg16b"
 
constexpr const auto x64::cpuid::feature_information::ecx::xtpr_update_control::mask = 0x00004000U
 
constexpr const auto x64::cpuid::feature_information::ecx::xtpr_update_control::from = 14
 
constexpr const auto x64::cpuid::feature_information::ecx::xtpr_update_control::name = "xtpr_update_control"
 
constexpr const auto x64::cpuid::feature_information::ecx::pdcm::mask = 0x00008000U
 
constexpr const auto x64::cpuid::feature_information::ecx::pdcm::from = 15
 
constexpr const auto x64::cpuid::feature_information::ecx::pdcm::name = "pdcm"
 
constexpr const auto x64::cpuid::feature_information::ecx::pcid::mask = 0x00020000U
 
constexpr const auto x64::cpuid::feature_information::ecx::pcid::from = 17
 
constexpr const auto x64::cpuid::feature_information::ecx::pcid::name = "pcid"
 
constexpr const auto x64::cpuid::feature_information::ecx::dca::mask = 0x00040000U
 
constexpr const auto x64::cpuid::feature_information::ecx::dca::from = 18
 
constexpr const auto x64::cpuid::feature_information::ecx::dca::name = "dca"
 
constexpr const auto x64::cpuid::feature_information::ecx::sse41::mask = 0x00080000U
 
constexpr const auto x64::cpuid::feature_information::ecx::sse41::from = 19
 
constexpr const auto x64::cpuid::feature_information::ecx::sse41::name = "sse41"
 
constexpr const auto x64::cpuid::feature_information::ecx::sse42::mask = 0x00100000U
 
constexpr const auto x64::cpuid::feature_information::ecx::sse42::from = 20
 
constexpr const auto x64::cpuid::feature_information::ecx::sse42::name = "sse42"
 
constexpr const auto x64::cpuid::feature_information::ecx::x2apic::mask = 0x00200000U
 
constexpr const auto x64::cpuid::feature_information::ecx::x2apic::from = 21
 
constexpr const auto x64::cpuid::feature_information::ecx::x2apic::name = "x2apic"
 
constexpr const auto x64::cpuid::feature_information::ecx::movbe::mask = 0x00400000U
 
constexpr const auto x64::cpuid::feature_information::ecx::movbe::from = 22
 
constexpr const auto x64::cpuid::feature_information::ecx::movbe::name = "movbe"
 
constexpr const auto x64::cpuid::feature_information::ecx::popcnt::mask = 0x00800000U
 
constexpr const auto x64::cpuid::feature_information::ecx::popcnt::from = 23
 
constexpr const auto x64::cpuid::feature_information::ecx::popcnt::name = "popcnt"
 
constexpr const auto x64::cpuid::feature_information::ecx::tsc_deadline::mask = 0x01000000U
 
constexpr const auto x64::cpuid::feature_information::ecx::tsc_deadline::from = 24
 
constexpr const auto x64::cpuid::feature_information::ecx::tsc_deadline::name = "tsc_deadline"
 
constexpr const auto x64::cpuid::feature_information::ecx::aesni::mask = 0x02000000U
 
constexpr const auto x64::cpuid::feature_information::ecx::aesni::from = 25
 
constexpr const auto x64::cpuid::feature_information::ecx::aesni::name = "aesni"
 
constexpr const auto x64::cpuid::feature_information::ecx::xsave::mask = 0x04000000U
 
constexpr const auto x64::cpuid::feature_information::ecx::xsave::from = 26
 
constexpr const auto x64::cpuid::feature_information::ecx::xsave::name = "xsave"
 
constexpr const auto x64::cpuid::feature_information::ecx::osxsave::mask = 0x08000000U
 
constexpr const auto x64::cpuid::feature_information::ecx::osxsave::from = 27
 
constexpr const auto x64::cpuid::feature_information::ecx::osxsave::name = "osxsave"
 
constexpr const auto x64::cpuid::feature_information::ecx::avx::mask = 0x10000000U
 
constexpr const auto x64::cpuid::feature_information::ecx::avx::from = 28
 
constexpr const auto x64::cpuid::feature_information::ecx::avx::name = "avx"
 
constexpr const auto x64::cpuid::feature_information::ecx::f16c::mask = 0x20000000U
 
constexpr const auto x64::cpuid::feature_information::ecx::f16c::from = 29
 
constexpr const auto x64::cpuid::feature_information::ecx::f16c::name = "f16c"
 
constexpr const auto x64::cpuid::feature_information::ecx::rdrand::mask = 0x40000000U
 
constexpr const auto x64::cpuid::feature_information::ecx::rdrand::from = 30
 
constexpr const auto x64::cpuid::feature_information::ecx::rdrand::name = "rdrand"
 
constexpr const auto x64::cpuid::extended_feature_flags::addr = 0x00000007UL
 
constexpr const auto x64::cpuid::extended_feature_flags::name = "extended_feature_flags"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::fsgsbase::mask = 0x00000001UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::fsgsbase::from = 0
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::fsgsbase::name = "fsgsbase"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::ia32_tsc_adjust::mask = 0x00000002UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::ia32_tsc_adjust::from = 1
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::ia32_tsc_adjust::name = "ia32_tsc_adjust"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::sgx::mask = 0x00000004UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::sgx::from = 2
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::sgx::name = "sgx"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::bmi1::mask = 0x00000008UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::bmi1::from = 3
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::bmi1::name = "bmi1"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::hle::mask = 0x00000010UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::hle::from = 4
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::hle::name = "hle"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::avx2::mask = 0x00000020UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::avx2::from = 5
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::avx2::name = "avx2"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::fdp_excptn_only::mask = 0x00000040UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::fdp_excptn_only::from = 6
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::fdp_excptn_only::name = "fdp_excptn_only"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::smep::mask = 0x00000080UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::smep::from = 7
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::smep::name = "smep"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::bmi2::mask = 0x00000100UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::bmi2::from = 8
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::bmi2::name = "bmi2"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::enhanced_rep::mask = 0x00000200UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::enhanced_rep::from = 9
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::enhanced_rep::name = "enhanced_rep"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::invpcid::mask = 0x00000400UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::invpcid::from = 10
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::invpcid::name = "invpcid"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rtm::mask = 0x00000800UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rtm::from = 11
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rtm::name = "rtm"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rdt_m::mask = 0x00001000UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rdt_m::from = 12
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rdt_m::name = "rdt_m"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::depreciated_fpu_cs_ds::mask = 0x00002000UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::depreciated_fpu_cs_ds::from = 13
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::depreciated_fpu_cs_ds::name = "depreciated_fpu_cs_ds"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::mpx::mask = 0x00004000UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::mpx::from = 14
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::mpx::name = "mpx"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rdt_a::mask = 0x00008000UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rdt_a::from = 15
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rdt_a::name = "rdt_a"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rdseed::mask = 0x00040000UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rdseed::from = 18
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::rdseed::name = "rdseed"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::adx::mask = 0x00080000UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::adx::from = 19
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::adx::name = "adx"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::smap::mask = 0x00100000UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::smap::from = 20
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::smap::name = "smap"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::clflushopt::mask = 0x00800000UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::clflushopt::from = 23
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::clflushopt::name = "clflushopt"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::clwb::mask = 0x01000000UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::clwb::from = 24
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::clwb::name = "clwb"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::processor_trace::mask = 0x02000000UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::processor_trace::from = 25
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::processor_trace::name = "processor_trace"
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::sha::mask = 0x20000000UL
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::sha::from = 29
 
constexpr const auto x64::cpuid::extended_feature_flags::subleaf0::ebx::sha::name = "sha"
 
constexpr const auto x64::cpuid::arch_perf_monitoring::addr = 0x0000000AUL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::name = "arch_perf_monitoring"
 
constexpr const auto x64::cpuid::arch_perf_monitoring::eax::version_id::mask = 0x000000FFUL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::eax::version_id::from = 0UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::eax::version_id::name = "version_id"
 
constexpr const auto x64::cpuid::arch_perf_monitoring::eax::gppmc_count::mask = 0x0000FF00UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::eax::gppmc_count::from = 8UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::eax::gppmc_count::name = "gppmc_count"
 
constexpr const auto x64::cpuid::arch_perf_monitoring::eax::gppmc_bit_width::mask = 0x00FF0000UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::eax::gppmc_bit_width::from = 16UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::eax::gppmc_bit_width::name = "gppmc_bit_width"
 
constexpr const auto x64::cpuid::arch_perf_monitoring::eax::ebx_enumeration_length::mask = 0xFF000000UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::eax::ebx_enumeration_length::from = 24
 
constexpr const auto x64::cpuid::arch_perf_monitoring::eax::ebx_enumeration_length::name = "ebx_enumeration_length"
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::core_cycle_event::mask = 0x00000001UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::core_cycle_event::from = 0UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::core_cycle_event::name = "core_cycle_event"
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::instr_retired_event::mask = 0x00000002UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::instr_retired_event::from = 1UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::instr_retired_event::name = "instr_retired_event"
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::reference_cycles_event::mask = 0x00000004UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::reference_cycles_event::from = 2UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::reference_cycles_event::name = "reference_cycles_event"
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::llc_reference_event::mask = 0x00000008UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::llc_reference_event::from = 3UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::llc_reference_event::name = "llc_reference_event"
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::llc_misses_event::mask = 0x00000010UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::llc_misses_event::from = 4UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::llc_misses_event::name = "llc_misses_event"
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::branch_instr_retired_event::mask = 0x00000020UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::branch_instr_retired_event::from = 5UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::branch_instr_retired_event::name = "branch_instr_retired_event"
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::branch_mispredict_retired_event::mask = 0x00000040UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::branch_mispredict_retired_event::from = 6UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::ebx::branch_mispredict_retired_event::name = "branch_mispredict_retired_event"
 
constexpr const auto x64::cpuid::arch_perf_monitoring::edx::ffpmc_count::mask = 0x0000001FUL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::edx::ffpmc_count::from = 0
 
constexpr const auto x64::cpuid::arch_perf_monitoring::edx::ffpmc_count::name = "ffpmc_count"
 
constexpr const auto x64::cpuid::arch_perf_monitoring::edx::ffpmc_bit_width::mask = 0x00001FE0UL
 
constexpr const auto x64::cpuid::arch_perf_monitoring::edx::ffpmc_bit_width::from = 5
 
constexpr const auto x64::cpuid::arch_perf_monitoring::edx::ffpmc_bit_width::name = "ffpmc_bit_width"
 

Function Documentation

◆ __cpuid_eax()

uint32_t __cpuid_eax ( uint32_t  val)
noexcept

Definition at line 49 of file test_cpuid_x64.cpp.

◆ __cpuid_ebx()

uint32_t __cpuid_ebx ( uint32_t  val)
noexcept

Definition at line 53 of file test_cpuid_x64.cpp.

◆ __cpuid_ecx()

uint32_t __cpuid_ecx ( uint32_t  val)
noexcept

Definition at line 57 of file test_cpuid_x64.cpp.

◆ __cpuid_edx()

uint32_t __cpuid_edx ( uint32_t  val)
noexcept

Definition at line 61 of file test_cpuid_x64.cpp.

◆ __cpuid()

void __cpuid ( void *  eax,
void *  ebx,
void *  ecx,
void *  edx 
)
noexcept

Definition at line 65 of file test_cpuid_x64.cpp.