
Query information about the processor. More...
Classes | |
union | Reg |
struct | Reg.__unnamed__ |
Enumerations | |
enum | Function { HIGHEST_FUNCTION_PARAMETER = 0x0, MANUFACTURER_ID = 0x0, PROCESSOR_INFO = 0x1, FEATURE_BITS = 0x1, CACHE_INFORMATION = 0x2, PROCESSOR_SERIAL_NUMBER = 0x3, HIGHEST_EXTENDED_FUNCTION = 0x80000000, EXTENDED_PROCESSOR_INFO = 0x80000001, EXTENDED_FEATURE_BITS = 0x80000001, PROCESSOR_BRAND_STRING_1 = 0x80000002, PROCESSOR_BRAND_STRING_2 = 0x80000003, PROCESSOR_BRAND_STRING_3 = 0x80000004, ADVANCED_POWER_MANAGEMENT = 0x80000007, ADDRESS_SIZES = 0x80000008 } |
enum | FeatureECX { FEATURE_SSE3 = 1 << 0, FEATURE_PCLMUL = 1 << 1, FEATURE_DTES64 = 1 << 2, FEATURE_MONITOR = 1 << 3, FEATURE_DS_CPL = 1 << 4, FEATURE_VMX = 1 << 5, FEATURE_SMX = 1 << 6, FEATURE_EST = 1 << 7, FEATURE_TM2 = 1 << 8, FEATURE_SSSE3 = 1 << 9, FEATURE_CID = 1 << 10, FEATURE_SDBG = 1 << 11, FEATURE_FMA = 1 << 12, FEATURE_CX16 = 1 << 13, FEATURE_ETPRD = 1 << 14, FEATURE_PDCM = 1 << 15, FEATURE_PCIDE = 1 << 17, FEATURE_DCA = 1 << 18, FEATURE_SSE4_1 = 1 << 19, FEATURE_SSE4_2 = 1 << 20, FEATURE_X2APIC = 1 << 21, FEATURE_MOVBE = 1 << 22, FEATURE_POPCNT = 1 << 23, FEATURE_TSC_DEADLINE = 1 << 24, FEATURE_AES = 1 << 25, FEATURE_XSAVE = 1 << 26, FEATURE_OSXSAVE = 1 << 27, FEATURE_AVX = 1 << 28, FEATURE_F16C = 1 << 29, FEATURE_RDRND = 1 << 30, FEATURE_HYPERVISOR = 1 << 31 } |
enum | FeatureEDX { FEATURE_FPU = 1 << 0, FEATURE_VME = 1 << 1, FEATURE_DE = 1 << 2, FEATURE_PSE = 1 << 3, FEATURE_TSC = 1 << 4, FEATURE_MSR = 1 << 5, FEATURE_PAE = 1 << 6, FEATURE_MCE = 1 << 7, FEATURE_CX8 = 1 << 8, FEATURE_APIC = 1 << 9, FEATURE_SEP = 1 << 11, FEATURE_MTRR = 1 << 12, FEATURE_PGE = 1 << 13, FEATURE_MCA = 1 << 14, FEATURE_CMOV = 1 << 15, FEATURE_PAT = 1 << 16, FEATURE_PSE36 = 1 << 17, FEATURE_PSN = 1 << 18, FEATURE_CLF = 1 << 19, FEATURE_DTES = 1 << 21, FEATURE_ACPI = 1 << 22, FEATURE_MMX = 1 << 23, FEATURE_FXSR = 1 << 24, FEATURE_SSE = 1 << 25, FEATURE_SSE2 = 1 << 26, FEATURE_SS = 1 << 27, FEATURE_HTT = 1 << 28, FEATURE_TM1 = 1 << 29, FEATURE_IA64 = 1 << 30, FEATURE_PBE = 1 << 31 } |
enum | ExtendedFeatureEDX { EXTENDED_FEATURE_FPU = 1 << 0, EXTENDED_FEATURE_VME = 1 << 1, EXTENDED_FEATURE_DE = 1 << 2, EXTENDED_FEATURE_PSE = 1 << 3, EXTENDED_FEATURE_TSC = 1 << 4, EXTENDED_FEATURE_MSR = 1 << 5, EXTENDED_FEATURE_PAE = 1 << 6, EXTENDED_FEATURE_MCE = 1 << 7, EXTENDED_FEATURE_CX8 = 1 << 8, EXTENDED_FEATURE_APIC = 1 << 9, EXTENDED_FEATURE_SYSCALL = 1 << 11, EXTENDED_FEATURE_MTRR = 1 << 12, EXTENDED_FEATURE_PGE = 1 << 13, EXTENDED_FEATURE_MCA = 1 << 14, EXTENDED_FEATURE_CMOV = 1 << 15, EXTENDED_FEATURE_PAT = 1 << 16, EXTENDED_FEATURE_PSE36 = 1 << 17, EXTENDED_FEATURE_MP = 1 << 19, EXTENDED_FEATURE_NX = 1 << 20, EXTENDED_FEATURE_MMXEXT = 1 << 22, EXTENDED_FEATURE_MMX = 1 << 23, EXTENDED_FEATURE_FXSR = 1 << 24, EXTENDED_FEATURE_FXSR_OPT = 1 << 25, EXTENDED_FEATURE_PDPE1GB = 1 << 26, EXTENDED_FEATURE_RDTSCP = 1 << 27, EXTENDED_FEATURE_LM = 1 << 29, EXTENDED_FEATURE_3DNOWEXT = 1 << 30, EXTENDED_FEATURE_3DNOW = 1 << 31 } |
Functions | |
Reg | get (Function eax) |
bool | has (enum FeatureECX feature) |
bool | has (enum FeatureEDX feature) |
bool | has (enum ExtendedFeatureEDX feature) |
Query information about the processor.
cpuid
instruction, which can return information about the processor. It should therefor not be confused with functionality to retrieve the ID of the current CPU (core)! union CPUID::Reg |
Class Members | ||
---|---|---|
struct Reg | __unnamed__ | |
char | value[16] |
enum CPUID::Function |
enum CPUID::FeatureECX |
enum CPUID::FeatureEDX |