clang 10.0.0git

Macros | Functions
cpuid.h File Reference

Go to the source code of this file.

## Macros
#define | signature_AMD_ebx 0x68747541
#define | signature_AMD_edx 0x69746e65
#define | signature_AMD_ecx 0x444d4163
#define | signature_CENTAUR_ebx 0x746e6543
#define | signature_CENTAUR_edx 0x48727561
#define | signature_CENTAUR_ecx 0x736c7561
#define | signature_CYRIX_ebx 0x69727943
#define | signature_CYRIX_edx 0x736e4978
#define | signature_CYRIX_ecx 0x64616574
#define | signature_INTEL_ebx 0x756e6547
#define | signature_INTEL_edx 0x49656e69
#define | signature_INTEL_ecx 0x6c65746e
#define | signature_TM1_ebx 0x6e617254
#define | signature_TM1_edx 0x74656d73
#define | signature_TM1_ecx 0x55504361
#define | signature_TM2_ebx 0x756e6547
#define | signature_TM2_edx 0x54656e69
#define | signature_TM2_ecx 0x3638784d
#define | signature_NSC_ebx 0x646f6547
#define | signature_NSC_edx 0x79622065
#define | signature_NSC_ecx 0x43534e20
#define | signature_NEXGEN_ebx 0x4778654e
#define | signature_NEXGEN_edx 0x72446e65
#define | signature_NEXGEN_ecx 0x6e657669
#define | signature_RISE_ebx 0x65736952
#define | signature_RISE_edx 0x65736952
#define | signature_RISE_ecx 0x65736952
#define | signature_SIS_ebx 0x20536953
#define | signature_SIS_edx 0x20536953
#define | signature_SIS_ecx 0x20536953
#define | signature_UMC_ebx 0x20434d55
#define | signature_UMC_edx 0x20434d55
#define | signature_UMC_ecx 0x20434d55
#define | signature_VIA_ebx 0x20414956
#define | signature_VIA_edx 0x20414956
#define | signature_VIA_ecx 0x20414956
#define | signature_VORTEX_ebx 0x74726f56
#define | signature_VORTEX_edx 0x36387865
#define | signature_VORTEX_ecx 0x436f5320
#define | bit_SSE3 0x00000001
#define | bit_PCLMULQDQ 0x00000002
#define | bit_PCLMUL bit_PCLMULQDQ /* for gcc compat */
#define | bit_DTES64 0x00000004
#define | bit_MONITOR 0x00000008
#define | bit_DSCPL 0x00000010
#define | bit_VMX 0x00000020
#define | bit_SMX 0x00000040
#define | bit_EIST 0x00000080
#define | bit_TM2 0x00000100
#define | bit_SSSE3 0x00000200
#define | bit_CNXTID 0x00000400
#define | bit_FMA 0x00001000
#define | bit_CMPXCHG16B 0x00002000
#define | bit_xTPR 0x00004000
#define | bit_PDCM 0x00008000
#define | bit_PCID 0x00020000
#define | bit_DCA 0x00040000
#define | bit_SSE41 0x00080000
#define | bit_SSE4_1 bit_SSE41 /* for gcc compat */
#define | bit_SSE42 0x00100000
#define | bit_SSE4_2 bit_SSE42 /* for gcc compat */
#define | bit_x2APIC 0x00200000
#define | bit_MOVBE 0x00400000
#define | bit_POPCNT 0x00800000
#define | bit_TSCDeadline 0x01000000
#define | bit_AESNI 0x02000000
#define | bit_AES bit_AESNI /* for gcc compat */
#define | bit_XSAVE 0x04000000
#define | bit_OSXSAVE 0x08000000
#define | bit_AVX 0x10000000
#define | bit_F16C 0x20000000
#define | bit_RDRND 0x40000000
#define | bit_FPU 0x00000001
#define | bit_VME 0x00000002
#define | bit_DE 0x00000004
#define | bit_PSE 0x00000008
#define | bit_TSC 0x00000010
#define | bit_MSR 0x00000020
#define | bit_PAE 0x00000040
#define | bit_MCE 0x00000080
#define | bit_CX8 0x00000100
#define | bit_CMPXCHG8B bit_CX8 /* for gcc compat */
#define | bit_APIC 0x00000200
#define | bit_SEP 0x00000800
#define | bit_MTRR 0x00001000
#define | bit_PGE 0x00002000
#define | bit_MCA 0x00004000
#define | bit_CMOV 0x00008000
#define | bit_PAT 0x00010000
#define | bit_PSE36 0x00020000
#define | bit_PSN 0x00040000
#define | bit_CLFSH 0x00080000
#define | bit_DS 0x00200000
#define | bit_ACPI 0x00400000
#define | bit_MMX 0x00800000
#define | bit_FXSR 0x01000000
#define | bit_FXSAVE bit_FXSR /* for gcc compat */
#define | bit_SSE 0x02000000
#define | bit_SSE2 0x04000000
#define | bit_SS 0x08000000
#define | bit_HTT 0x10000000
#define | bit_TM 0x20000000
#define | bit_PBE 0x80000000
#define | bit_FSGSBASE 0x00000001
#define | bit_SGX 0x00000004
#define | bit_BMI 0x00000008
#define | bit_HLE 0x00000010
#define | bit_AVX2 0x00000020
#define | bit_SMEP 0x00000080
#define | bit_BMI2 0x00000100
#define | bit_ENH_MOVSB 0x00000200
#define | bit_INVPCID 0x00000400
#define | bit_RTM 0x00000800
#define | bit_MPX 0x00004000
#define | bit_AVX512F 0x00010000
#define | bit_AVX512DQ 0x00020000
#define | bit_RDSEED 0x00040000
#define | bit_ADX 0x00080000
#define | bit_AVX512IFMA 0x00200000
#define | bit_CLFLUSHOPT 0x00800000
#define | bit_CLWB 0x01000000
#define | bit_AVX512PF 0x04000000
#define | bit_AVX512ER 0x08000000
#define | bit_AVX512CD 0x10000000
#define | bit_SHA 0x20000000
#define | bit_AVX512BW 0x40000000
#define | bit_AVX512VL 0x80000000
#define | bit_PREFTCHWT1 0x00000001
#define | bit_AVX512VBMI 0x00000002
#define | bit_PKU 0x00000004
#define | bit_OSPKE 0x00000010
#define | bit_WAITPKG 0x00000020
#define | bit_AVX512VBMI2 0x00000040
#define | bit_SHSTK 0x00000080
#define | bit_GFNI 0x00000100
#define | bit_VAES 0x00000200
#define | bit_VPCLMULQDQ 0x00000400
#define | bit_AVX512VNNI 0x00000800
#define | bit_AVX512BITALG 0x00001000
#define | bit_AVX512VPOPCNTDQ 0x00004000
#define | bit_RDPID 0x00400000
#define | bit_CLDEMOTE 0x02000000
#define | bit_MOVDIRI 0x08000000
#define | bit_MOVDIR64B 0x10000000
#define | bit_ENQCMD 0x20000000
#define | bit_AVX5124VNNIW 0x00000004
#define | bit_AVX5124FMAPS 0x00000008
#define | bit_PCONFIG 0x00040000
#define | bit_IBT 0x00100000
#define | bit_AVX512BF16 0x00000020
#define | bit_XSAVEOPT 0x00000001
#define | bit_XSAVEC 0x00000002
#define | bit_XSAVES 0x00000008
#define | bit_PTWRITE 0x00000010
#define | bit_LAHF_LM 0x00000001
#define | bit_ABM 0x00000020
#define | bit_LZCNT bit_ABM /* for gcc compat */
#define | bit_SSE4a 0x00000040
#define | bit_PRFCHW 0x00000100
#define | bit_XOP 0x00000800
#define | bit_LWP 0x00008000
#define | bit_FMA4 0x00010000
#define | bit_TBM 0x00200000
#define | bit_MWAITX 0x20000000
#define | bit_MMXEXT 0x00400000
#define | bit_LM 0x20000000
#define | bit_3DNOWP 0x40000000
#define | bit_3DNOW 0x80000000
#define | bit_CLZERO 0x00000001
#define | bit_WBNOINVD 0x00000200
#define | __cpuid(__leaf, __eax, __ebx, __ecx, __edx)
#define | __cpuid_count(__leaf, __count, __eax, __ebx, __ecx, __edx)

## Functions
static __inline int | __get_cpuid_max (unsigned int __leaf, unsigned int *__sig)
static __inline int | __get_cpuid (unsigned int __leaf, unsigned int *__eax, unsigned int *__ebx, unsigned int *__ecx, unsigned int *__edx)
static __inline int | __get_cpuid_count (unsigned int __leaf, unsigned int __subleaf, unsigned int *__eax, unsigned int *__ebx, unsigned int *__ecx, unsigned int *__edx)

## Macro Definition Documentation

## ◆ __cpuid

#define __cpuid | ( |  | __leaf,
|  |  | __eax,
|  |  | __ebx,
|  |  | __ecx,
|  |  | __edx
| ) |  |

Value:
__asm(" xchgq %%rbx,%q1\n" \
" cpuid\n" \
" xchgq %%rbx,%q1" \
: "=a"(__eax), "=r" (__ebx), "=c"(__ecx), "=d"(__edx) \
: "0"(__leaf))

Definition at line 232 of file cpuid.h.

Referenced by __get_cpuid(), and __get_cpuid_max().

## ◆ __cpuid_count

#define __cpuid_count | ( |  | __leaf,
|  |  | __count,
|  |  | __eax,
|  |  | __ebx,
|  |  | __ecx,
|  |  | __edx
| ) |  |

Value:
__asm(" xchgq %%rbx,%q1\n" \
" cpuid\n" \
" xchgq %%rbx,%q1" \
: "=a"(__eax), "=r" (__ebx), "=c"(__ecx), "=d"(__edx) \
: "0"(__leaf), "2"(__count))

Definition at line 239 of file cpuid.h.

Referenced by __get_cpuid_count().

## ◆ bit_3DNOW

#define bit_3DNOW 0x80000000

Definition at line 215 of file cpuid.h.

## ◆ bit_3DNOWP

#define bit_3DNOWP 0x40000000

Definition at line 214 of file cpuid.h.

## ◆ bit_ABM

#define bit_ABM 0x00000020

Definition at line 201 of file cpuid.h.

## ◆ bit_ACPI

#define bit_ACPI 0x00400000

Definition at line 125 of file cpuid.h.

## ◆ bit_ADX

#define bit_ADX 0x00080000

Definition at line 151 of file cpuid.h.

## ◆ bit_AES

#define bit_AES bit_AESNI /* for gcc compat */

Definition at line 96 of file cpuid.h.

## ◆ bit_AESNI

#define bit_AESNI 0x02000000

Definition at line 95 of file cpuid.h.

## ◆ bit_APIC

#define bit_APIC 0x00000200

Definition at line 114 of file cpuid.h.

## ◆ bit_AVX

#define bit_AVX 0x10000000

Definition at line 99 of file cpuid.h.

## ◆ bit_AVX2

#define bit_AVX2 0x00000020

Definition at line 141 of file cpuid.h.

## ◆ bit_AVX5124FMAPS

#define bit_AVX5124FMAPS 0x00000008

Definition at line 184 of file cpuid.h.

## ◆ bit_AVX5124VNNIW

#define bit_AVX5124VNNIW 0x00000004

Definition at line 183 of file cpuid.h.

## ◆ bit_AVX512BF16

#define bit_AVX512BF16 0x00000020

Definition at line 189 of file cpuid.h.

## ◆ bit_AVX512BITALG

#define bit_AVX512BITALG 0x00001000

Definition at line 174 of file cpuid.h.

## ◆ bit_AVX512BW

#define bit_AVX512BW 0x40000000

Definition at line 159 of file cpuid.h.

## ◆ bit_AVX512CD

#define bit_AVX512CD 0x10000000

Definition at line 157 of file cpuid.h.

## ◆ bit_AVX512DQ

#define bit_AVX512DQ 0x00020000

Definition at line 149 of file cpuid.h.

## ◆ bit_AVX512ER

#define bit_AVX512ER 0x08000000

Definition at line 156 of file cpuid.h.

## ◆ bit_AVX512F

#define bit_AVX512F 0x00010000

Definition at line 148 of file cpuid.h.

## ◆ bit_AVX512IFMA

#define bit_AVX512IFMA 0x00200000

Definition at line 152 of file cpuid.h.

## ◆ bit_AVX512PF

#define bit_AVX512PF 0x04000000

Definition at line 155 of file cpuid.h.

## ◆ bit_AVX512VBMI

#define bit_AVX512VBMI 0x00000002

Definition at line 164 of file cpuid.h.

## ◆ bit_AVX512VBMI2

#define bit_AVX512VBMI2 0x00000040

Definition at line 168 of file cpuid.h.

## ◆ bit_AVX512VL

#define bit_AVX512VL 0x80000000

Definition at line 160 of file cpuid.h.

## ◆ bit_AVX512VNNI

#define bit_AVX512VNNI 0x00000800

Definition at line 173 of file cpuid.h.

## ◆ bit_AVX512VPOPCNTDQ

#define bit_AVX512VPOPCNTDQ 0x00004000

Definition at line 175 of file cpuid.h.

## ◆ bit_BMI

#define bit_BMI 0x00000008

Definition at line 139 of file cpuid.h.

## ◆ bit_BMI2

#define bit_BMI2 0x00000100

Definition at line 143 of file cpuid.h.

## ◆ bit_CLDEMOTE

#define bit_CLDEMOTE 0x02000000

Definition at line 177 of file cpuid.h.

## ◆ bit_CLFLUSHOPT

#define bit_CLFLUSHOPT 0x00800000

Definition at line 153 of file cpuid.h.

## ◆ bit_CLFSH

#define bit_CLFSH 0x00080000

Definition at line 123 of file cpuid.h.

## ◆ bit_CLWB

#define bit_CLWB 0x01000000

Definition at line 154 of file cpuid.h.

## ◆ bit_CLZERO

#define bit_CLZERO 0x00000001

Definition at line 218 of file cpuid.h.

## ◆ bit_CMOV

#define bit_CMOV 0x00008000

Definition at line 119 of file cpuid.h.

## ◆ bit_CMPXCHG16B

#define bit_CMPXCHG16B 0x00002000

Definition at line 82 of file cpuid.h.

## ◆ bit_CMPXCHG8B

#define bit_CMPXCHG8B bit_CX8 /* for gcc compat */

Definition at line 113 of file cpuid.h.

## ◆ bit_CNXTID

#define bit_CNXTID 0x00000400

Definition at line 80 of file cpuid.h.

## ◆ bit_CX8

#define bit_CX8 0x00000100

Definition at line 112 of file cpuid.h.

## ◆ bit_DCA

#define bit_DCA 0x00040000

Definition at line 86 of file cpuid.h.

## ◆ bit_DE

#define bit_DE 0x00000004

Definition at line 106 of file cpuid.h.

## ◆ bit_DS

#define bit_DS 0x00200000

Definition at line 124 of file cpuid.h.

## ◆ bit_DSCPL

#define bit_DSCPL 0x00000010

Definition at line 74 of file cpuid.h.

## ◆ bit_DTES64

#define bit_DTES64 0x00000004

Definition at line 72 of file cpuid.h.

## ◆ bit_EIST

#define bit_EIST 0x00000080

Definition at line 77 of file cpuid.h.

## ◆ bit_ENH_MOVSB

#define bit_ENH_MOVSB 0x00000200

Definition at line 144 of file cpuid.h.

## ◆ bit_ENQCMD

#define bit_ENQCMD 0x20000000

Definition at line 180 of file cpuid.h.

## ◆ bit_F16C

#define bit_F16C 0x20000000

Definition at line 100 of file cpuid.h.

## ◆ bit_FMA

#define bit_FMA 0x00001000

Definition at line 81 of file cpuid.h.

## ◆ bit_FMA4

#define bit_FMA4 0x00010000

Definition at line 207 of file cpuid.h.

## ◆ bit_FPU

#define bit_FPU 0x00000001

Definition at line 104 of file cpuid.h.

## ◆ bit_FSGSBASE

#define bit_FSGSBASE 0x00000001

Definition at line 137 of file cpuid.h.

## ◆ bit_FXSAVE

#define bit_FXSAVE bit_FXSR /* for gcc compat */

Definition at line 128 of file cpuid.h.

## ◆ bit_FXSR

#define bit_FXSR 0x01000000

Definition at line 127 of file cpuid.h.

## ◆ bit_GFNI

#define bit_GFNI 0x00000100

Definition at line 170 of file cpuid.h.

## ◆ bit_HLE

#define bit_HLE 0x00000010

Definition at line 140 of file cpuid.h.

## ◆ bit_HTT

#define bit_HTT 0x10000000

Definition at line 132 of file cpuid.h.

## ◆ bit_IBT

#define bit_IBT 0x00100000

Definition at line 186 of file cpuid.h.

## ◆ bit_INVPCID

#define bit_INVPCID 0x00000400

Definition at line 145 of file cpuid.h.

## ◆ bit_LAHF_LM

#define bit_LAHF_LM 0x00000001

Definition at line 200 of file cpuid.h.

## ◆ bit_LM

#define bit_LM 0x20000000

Definition at line 213 of file cpuid.h.

## ◆ bit_LWP

#define bit_LWP 0x00008000

Definition at line 206 of file cpuid.h.

## ◆ bit_LZCNT

#define bit_LZCNT bit_ABM /* for gcc compat */

Definition at line 202 of file cpuid.h.

## ◆ bit_MCA

#define bit_MCA 0x00004000

Definition at line 118 of file cpuid.h.

## ◆ bit_MCE

#define bit_MCE 0x00000080

Definition at line 111 of file cpuid.h.

## ◆ bit_MMX

#define bit_MMX 0x00800000

Definition at line 126 of file cpuid.h.

## ◆ bit_MMXEXT

#define bit_MMXEXT 0x00400000

Definition at line 212 of file cpuid.h.

## ◆ bit_MONITOR

#define bit_MONITOR 0x00000008

Definition at line 73 of file cpuid.h.

## ◆ bit_MOVBE

#define bit_MOVBE 0x00400000

Definition at line 92 of file cpuid.h.

## ◆ bit_MOVDIR64B

#define bit_MOVDIR64B 0x10000000

Definition at line 179 of file cpuid.h.

## ◆ bit_MOVDIRI

#define bit_MOVDIRI 0x08000000

Definition at line 178 of file cpuid.h.

## ◆ bit_MPX

#define bit_MPX 0x00004000

Definition at line 147 of file cpuid.h.

## ◆ bit_MSR

#define bit_MSR 0x00000020

Definition at line 109 of file cpuid.h.

## ◆ bit_MTRR

#define bit_MTRR 0x00001000

Definition at line 116 of file cpuid.h.

## ◆ bit_MWAITX

#define bit_MWAITX 0x20000000

Definition at line 209 of file cpuid.h.

## ◆ bit_OSPKE

#define bit_OSPKE 0x00000010

Definition at line 166 of file cpuid.h.

## ◆ bit_OSXSAVE

#define bit_OSXSAVE 0x08000000

Definition at line 98 of file cpuid.h.

## ◆ bit_PAE

#define bit_PAE 0x00000040

Definition at line 110 of file cpuid.h.

## ◆ bit_PAT

#define bit_PAT 0x00010000

Definition at line 120 of file cpuid.h.

## ◆ bit_PBE

#define bit_PBE 0x80000000

Definition at line 134 of file cpuid.h.

## ◆ bit_PCID

#define bit_PCID 0x00020000

Definition at line 85 of file cpuid.h.

## ◆ bit_PCLMUL

#define bit_PCLMUL bit_PCLMULQDQ /* for gcc compat */

Definition at line 71 of file cpuid.h.

## ◆ bit_PCLMULQDQ

#define bit_PCLMULQDQ 0x00000002

Definition at line 70 of file cpuid.h.

## ◆ bit_PCONFIG

#define bit_PCONFIG 0x00040000

Definition at line 185 of file cpuid.h.

## ◆ bit_PDCM

#define bit_PDCM 0x00008000

Definition at line 84 of file cpuid.h.

## ◆ bit_PGE

#define bit_PGE 0x00002000

Definition at line 117 of file cpuid.h.

## ◆ bit_PKU

#define bit_PKU 0x00000004

Definition at line 165 of file cpuid.h.

## ◆ bit_POPCNT

#define bit_POPCNT 0x00800000

Definition at line 93 of file cpuid.h.

## ◆ bit_PREFTCHWT1

#define bit_PREFTCHWT1 0x00000001

Definition at line 163 of file cpuid.h.

## ◆ bit_PRFCHW

#define bit_PRFCHW 0x00000100

Definition at line 204 of file cpuid.h.

## ◆ bit_PSE

#define bit_PSE 0x00000008

Definition at line 107 of file cpuid.h.

## ◆ bit_PSE36

#define bit_PSE36 0x00020000

Definition at line 121 of file cpuid.h.

## ◆ bit_PSN

#define bit_PSN 0x00040000

Definition at line 122 of file cpuid.h.

## ◆ bit_PTWRITE

#define bit_PTWRITE 0x00000010

Definition at line 197 of file cpuid.h.

## ◆ bit_RDPID

#define bit_RDPID 0x00400000

Definition at line 176 of file cpuid.h.

## ◆ bit_RDRND

#define bit_RDRND 0x40000000

Definition at line 101 of file cpuid.h.

## ◆ bit_RDSEED

#define bit_RDSEED 0x00040000

Definition at line 150 of file cpuid.h.

## ◆ bit_RTM

#define bit_RTM 0x00000800

Definition at line 146 of file cpuid.h.

## ◆ bit_SEP

#define bit_SEP 0x00000800

Definition at line 115 of file cpuid.h.

## ◆ bit_SGX

#define bit_SGX 0x00000004

Definition at line 138 of file cpuid.h.

## ◆ bit_SHA

#define bit_SHA 0x20000000

Definition at line 158 of file cpuid.h.

## ◆ bit_SHSTK

#define bit_SHSTK 0x00000080

Definition at line 169 of file cpuid.h.

## ◆ bit_SMEP

#define bit_SMEP 0x00000080

Definition at line 142 of file cpuid.h.

## ◆ bit_SMX

#define bit_SMX 0x00000040

Definition at line 76 of file cpuid.h.

## ◆ bit_SS

#define bit_SS 0x08000000

Definition at line 131 of file cpuid.h.

## ◆ bit_SSE

#define bit_SSE 0x02000000

Definition at line 129 of file cpuid.h.

## ◆ bit_SSE2

#define bit_SSE2 0x04000000

Definition at line 130 of file cpuid.h.

## ◆ bit_SSE3

#define bit_SSE3 0x00000001

Definition at line 69 of file cpuid.h.

## ◆ bit_SSE41

#define bit_SSE41 0x00080000

Definition at line 87 of file cpuid.h.

## ◆ bit_SSE42

#define bit_SSE42 0x00100000

Definition at line 89 of file cpuid.h.

## ◆ bit_SSE4_1

#define bit_SSE4_1 bit_SSE41 /* for gcc compat */

Definition at line 88 of file cpuid.h.

## ◆ bit_SSE4_2

#define bit_SSE4_2 bit_SSE42 /* for gcc compat */

Definition at line 90 of file cpuid.h.

## ◆ bit_SSE4a

#define bit_SSE4a 0x00000040

Definition at line 203 of file cpuid.h.

## ◆ bit_SSSE3

#define bit_SSSE3 0x00000200

Definition at line 79 of file cpuid.h.

## ◆ bit_TBM

#define bit_TBM 0x00200000

Definition at line 208 of file cpuid.h.

## ◆ bit_TM

#define bit_TM 0x20000000

Definition at line 133 of file cpuid.h.

## ◆ bit_TM2

#define bit_TM2 0x00000100

Definition at line 78 of file cpuid.h.

## ◆ bit_TSC

#define bit_TSC 0x00000010

Definition at line 108 of file cpuid.h.

## ◆ bit_TSCDeadline

#define bit_TSCDeadline 0x01000000

Definition at line 94 of file cpuid.h.

## ◆ bit_VAES

#define bit_VAES 0x00000200

Definition at line 171 of file cpuid.h.

## ◆ bit_VME

#define bit_VME 0x00000002

Definition at line 105 of file cpuid.h.

## ◆ bit_VMX

#define bit_VMX 0x00000020

Definition at line 75 of file cpuid.h.

## ◆ bit_VPCLMULQDQ

#define bit_VPCLMULQDQ 0x00000400

Definition at line 172 of file cpuid.h.

## ◆ bit_WAITPKG

#define bit_WAITPKG 0x00000020

Definition at line 167 of file cpuid.h.

## ◆ bit_WBNOINVD

#define bit_WBNOINVD 0x00000200

Definition at line 219 of file cpuid.h.

## ◆ bit_x2APIC

#define bit_x2APIC 0x00200000

Definition at line 91 of file cpuid.h.

## ◆ bit_XOP

#define bit_XOP 0x00000800

Definition at line 205 of file cpuid.h.

## ◆ bit_XSAVE

#define bit_XSAVE 0x04000000

Definition at line 97 of file cpuid.h.

## ◆ bit_XSAVEC

#define bit_XSAVEC 0x00000002

Definition at line 193 of file cpuid.h.

## ◆ bit_XSAVEOPT

#define bit_XSAVEOPT 0x00000001

Definition at line 192 of file cpuid.h.

## ◆ bit_XSAVES

#define bit_XSAVES 0x00000008

Definition at line 194 of file cpuid.h.

## ◆ bit_xTPR

#define bit_xTPR 0x00004000

Definition at line 83 of file cpuid.h.

## ◆ signature_AMD_ebx

#define signature_AMD_ebx 0x68747541

Definition at line 16 of file cpuid.h.

## ◆ signature_AMD_ecx

#define signature_AMD_ecx 0x444d4163

Definition at line 18 of file cpuid.h.

## ◆ signature_AMD_edx

#define signature_AMD_edx 0x69746e65

Definition at line 17 of file cpuid.h.

## ◆ signature_CENTAUR_ebx

#define signature_CENTAUR_ebx 0x746e6543

Definition at line 20 of file cpuid.h.

## ◆ signature_CENTAUR_ecx

#define signature_CENTAUR_ecx 0x736c7561

Definition at line 22 of file cpuid.h.

## ◆ signature_CENTAUR_edx

#define signature_CENTAUR_edx 0x48727561

Definition at line 21 of file cpuid.h.

## ◆ signature_CYRIX_ebx

#define signature_CYRIX_ebx 0x69727943

Definition at line 24 of file cpuid.h.

## ◆ signature_CYRIX_ecx

#define signature_CYRIX_ecx 0x64616574

Definition at line 26 of file cpuid.h.

## ◆ signature_CYRIX_edx

#define signature_CYRIX_edx 0x736e4978

Definition at line 25 of file cpuid.h.

## ◆ signature_INTEL_ebx

#define signature_INTEL_ebx 0x756e6547

Definition at line 28 of file cpuid.h.

## ◆ signature_INTEL_ecx

#define signature_INTEL_ecx 0x6c65746e

Definition at line 30 of file cpuid.h.

## ◆ signature_INTEL_edx

#define signature_INTEL_edx 0x49656e69

Definition at line 29 of file cpuid.h.

## ◆ signature_NEXGEN_ebx

#define signature_NEXGEN_ebx 0x4778654e

Definition at line 44 of file cpuid.h.

## ◆ signature_NEXGEN_ecx

#define signature_NEXGEN_ecx 0x6e657669

Definition at line 46 of file cpuid.h.

## ◆ signature_NEXGEN_edx

#define signature_NEXGEN_edx 0x72446e65

Definition at line 45 of file cpuid.h.

## ◆ signature_NSC_ebx

#define signature_NSC_ebx 0x646f6547

Definition at line 40 of file cpuid.h.

## ◆ signature_NSC_ecx

#define signature_NSC_ecx 0x43534e20

Definition at line 42 of file cpuid.h.

## ◆ signature_NSC_edx

#define signature_NSC_edx 0x79622065

Definition at line 41 of file cpuid.h.

## ◆ signature_RISE_ebx

#define signature_RISE_ebx 0x65736952

Definition at line 48 of file cpuid.h.

## ◆ signature_RISE_ecx

#define signature_RISE_ecx 0x65736952

Definition at line 50 of file cpuid.h.

## ◆ signature_RISE_edx

#define signature_RISE_edx 0x65736952

Definition at line 49 of file cpuid.h.

## ◆ signature_SIS_ebx

#define signature_SIS_ebx 0x20536953

Definition at line 52 of file cpuid.h.

## ◆ signature_SIS_ecx

#define signature_SIS_ecx 0x20536953

Definition at line 54 of file cpuid.h.

## ◆ signature_SIS_edx

#define signature_SIS_edx 0x20536953

Definition at line 53 of file cpuid.h.

## ◆ signature_TM1_ebx

#define signature_TM1_ebx 0x6e617254

Definition at line 32 of file cpuid.h.

## ◆ signature_TM1_ecx

#define signature_TM1_ecx 0x55504361

Definition at line 34 of file cpuid.h.

## ◆ signature_TM1_edx

#define signature_TM1_edx 0x74656d73

Definition at line 33 of file cpuid.h.

## ◆ signature_TM2_ebx

#define signature_TM2_ebx 0x756e6547

Definition at line 36 of file cpuid.h.

## ◆ signature_TM2_ecx

#define signature_TM2_ecx 0x3638784d

Definition at line 38 of file cpuid.h.

## ◆ signature_TM2_edx

#define signature_TM2_edx 0x54656e69

Definition at line 37 of file cpuid.h.

## ◆ signature_UMC_ebx

#define signature_UMC_ebx 0x20434d55

Definition at line 56 of file cpuid.h.

## ◆ signature_UMC_ecx

#define signature_UMC_ecx 0x20434d55

Definition at line 58 of file cpuid.h.

## ◆ signature_UMC_edx

#define signature_UMC_edx 0x20434d55

Definition at line 57 of file cpuid.h.

## ◆ signature_VIA_ebx

#define signature_VIA_ebx 0x20414956

Definition at line 60 of file cpuid.h.

## ◆ signature_VIA_ecx

#define signature_VIA_ecx 0x20414956

Definition at line 62 of file cpuid.h.

## ◆ signature_VIA_edx

#define signature_VIA_edx 0x20414956

Definition at line 61 of file cpuid.h.

## ◆ signature_VORTEX_ebx

#define signature_VORTEX_ebx 0x74726f56

Definition at line 64 of file cpuid.h.

## ◆ signature_VORTEX_ecx

#define signature_VORTEX_ecx 0x436f5320

Definition at line 66 of file cpuid.h.

## ◆ signature_VORTEX_edx

#define signature_VORTEX_edx 0x36387865

Definition at line 65 of file cpuid.h.

## Function Documentation

## ◆ __get_cpuid()

static __inline int __get_cpuid | ( | unsigned int | __leaf,
|  | unsigned int * | __eax,
|  | unsigned int * | __ebx,
|  | unsigned int * | __ecx,
|  | unsigned int * | __edx
| ) |  |
| static

Definition at line 277 of file cpuid.h.

References __cpuid, and __get_cpuid_max().

## ◆ __get_cpuid_count()

static __inline int __get_cpuid_count | ( | unsigned int | __leaf,
|  | unsigned int | __subleaf,
|  | unsigned int * | __eax,
|  | unsigned int * | __ebx,
|  | unsigned int * | __ecx,
|  | unsigned int * | __edx
| ) |  |
| static

Definition at line 290 of file cpuid.h.

References __cpuid_count, and __get_cpuid_max().

## ◆ __get_cpuid_max()

static __inline int __get_cpuid_max | ( | unsigned int | __leaf,
|  | unsigned int * | __sig
| ) |  |
| static

Definition at line 247 of file cpuid.h.

References __cpuid.

Referenced by __get_cpuid(), and __get_cpuid_count().