GNU Linux-libre 6.9.1-gnu
[releases.git] / tools / arch / x86 / kcpuid / cpuid.csv
1 # The basic row format is:
2 # LEAF, SUBLEAF, register_name, bits, short_name, long_description
3
4 # Leaf 00H
5          0,    0,  EAX,   31:0, max_basic_leafs, Max input value for supported subleafs
6
7 # Leaf 01H
8          1,    0,  EAX,    3:0, stepping, Stepping ID
9          1,    0,  EAX,    7:4, model, Model
10          1,    0,  EAX,   11:8, family, Family ID
11          1,    0,  EAX,  13:12, processor, Processor Type
12          1,    0,  EAX,  19:16, model_ext, Extended Model ID
13          1,    0,  EAX,  27:20, family_ext, Extended Family ID
14
15          1,    0,  EBX,    7:0, brand, Brand Index
16          1,    0,  EBX,   15:8, clflush_size, CLFLUSH line size (value * 8) in bytes
17          1,    0,  EBX,  23:16, max_cpu_id, Maxim number of addressable logic cpu in this package
18          1,    0,  EBX,  31:24, apic_id, Initial APIC ID
19
20          1,    0,  ECX,      0, sse3, Streaming SIMD Extensions 3(SSE3)
21          1,    0,  ECX,      1, pclmulqdq, PCLMULQDQ instruction supported
22          1,    0,  ECX,      2, dtes64, DS area uses 64-bit layout
23          1,    0,  ECX,      3, mwait, MONITOR/MWAIT supported
24          1,    0,  ECX,      4, ds_cpl, CPL Qualified Debug Store which allows for branch message storage qualified by CPL
25          1,    0,  ECX,      5, vmx, Virtual Machine Extensions supported
26          1,    0,  ECX,      6, smx, Safer Mode Extension supported
27          1,    0,  ECX,      7, eist, Enhanced Intel SpeedStep Technology
28          1,    0,  ECX,      8, tm2, Thermal Monitor 2
29          1,    0,  ECX,      9, ssse3, Supplemental Streaming SIMD Extensions 3 (SSSE3)
30          1,    0,  ECX,     10, l1_ctx_id, L1 data cache could be set to either adaptive mode or shared mode (check IA32_MISC_ENABLE bit 24 definition)
31          1,    0,  ECX,     11, sdbg, IA32_DEBUG_INTERFACE MSR for silicon debug supported
32          1,    0,  ECX,     12, fma, FMA extensions using YMM state supported
33          1,    0,  ECX,     13, cmpxchg16b, 'CMPXCHG16B - Compare and Exchange Bytes' supported
34          1,    0,  ECX,     14, xtpr_update, xTPR Update Control supported
35          1,    0,  ECX,     15, pdcm, Perfmon and Debug Capability present
36          1,    0,  ECX,     17, pcid, Process-Context Identifiers feature present
37          1,    0,  ECX,     18, dca, Prefetching data from a memory mapped device supported
38          1,    0,  ECX,     19, sse4_1, SSE4.1 feature present
39          1,    0,  ECX,     20, sse4_2, SSE4.2 feature present
40          1,    0,  ECX,     21, x2apic, x2APIC supported
41          1,    0,  ECX,     22, movbe, MOVBE instruction supported
42          1,    0,  ECX,     23, popcnt, POPCNT instruction supported
43          1,    0,  ECX,     24, tsc_deadline_timer, LAPIC supports one-shot operation using a TSC deadline value
44          1,    0,  ECX,     25, aesni, AESNI instruction supported
45          1,    0,  ECX,     26, xsave, XSAVE/XRSTOR processor extended states (XSETBV/XGETBV/XCR0)
46          1,    0,  ECX,     27, osxsave, OS has set CR4.OSXSAVE bit to enable XSETBV/XGETBV/XCR0
47          1,    0,  ECX,     28, avx, AVX instruction supported
48          1,    0,  ECX,     29, f16c, 16-bit floating-point conversion instruction supported
49          1,    0,  ECX,     30, rdrand, RDRAND instruction supported
50
51          1,    0,  EDX,      0, fpu, x87 FPU on chip
52          1,    0,  EDX,      1, vme, Virtual-8086 Mode Enhancement
53          1,    0,  EDX,      2, de, Debugging Extensions
54          1,    0,  EDX,      3, pse, Page Size Extensions
55          1,    0,  EDX,      4, tsc, Time Stamp Counter
56          1,    0,  EDX,      5, msr, RDMSR and WRMSR Support
57          1,    0,  EDX,      6, pae, Physical Address Extensions
58          1,    0,  EDX,      7, mce, Machine Check Exception
59          1,    0,  EDX,      8, cx8, CMPXCHG8B instr
60          1,    0,  EDX,      9, apic, APIC on Chip
61          1,    0,  EDX,     11, sep, SYSENTER and SYSEXIT instrs
62          1,    0,  EDX,     12, mtrr, Memory Type Range Registers
63          1,    0,  EDX,     13, pge, Page Global Bit
64          1,    0,  EDX,     14, mca, Machine Check Architecture
65          1,    0,  EDX,     15, cmov, Conditional Move Instrs
66          1,    0,  EDX,     16, pat, Page Attribute Table
67          1,    0,  EDX,     17, pse36, 36-Bit Page Size Extension
68          1,    0,  EDX,     18, psn, Processor Serial Number
69          1,    0,  EDX,     19, clflush, CLFLUSH instr
70 #         1,    0,  EDX,     20,
71          1,    0,  EDX,     21, ds, Debug Store
72          1,    0,  EDX,     22, acpi, Thermal Monitor and Software Controlled Clock Facilities
73          1,    0,  EDX,     23, mmx, Intel MMX Technology
74          1,    0,  EDX,     24, fxsr, XSAVE and FXRSTOR Instrs
75          1,    0,  EDX,     25, sse, SSE
76          1,    0,  EDX,     26, sse2, SSE2
77          1,    0,  EDX,     27, ss, Self Snoop
78          1,    0,  EDX,     28, hit, Max APIC IDs
79          1,    0,  EDX,     29, tm, Thermal Monitor
80 #         1,    0,  EDX,     30,
81          1,    0,  EDX,     31, pbe, Pending Break Enable
82
83 # Leaf 02H
84 # cache and TLB descriptor info
85
86 # Leaf 03H
87 # Precessor Serial Number, introduced on Pentium III, not valid for
88 # latest models
89
90 # Leaf 04H
91 # thread/core and cache topology
92          4,    0,  EAX,    4:0, cache_type, Cache type like instr/data or unified
93          4,    0,  EAX,    7:5, cache_level, Cache Level (starts at 1)
94          4,    0,  EAX,      8, cache_self_init, Cache Self Initialization
95          4,    0,  EAX,      9, fully_associate, Fully Associative cache
96 #         4,    0,  EAX,  13:10, resvd, resvd
97          4,    0,  EAX,  25:14, max_logical_id, Max number of addressable IDs for logical processors sharing the cache
98          4,    0,  EAX,  31:26, max_phy_id, Max number of addressable IDs for processors in phy package
99
100          4,    0,  EBX,   11:0, cache_linesize, Size of a cache line in bytes
101          4,    0,  EBX,  21:12, cache_partition, Physical Line partitions
102          4,    0,  EBX,  31:22, cache_ways, Ways of associativity
103          4,    0,  ECX,   31:0, cache_sets, Number of Sets - 1
104          4,    0,  EDX,      0, c_wbinvd, 1 means WBINVD/INVD is not ganranteed to act upon lower level caches of non-originating threads sharing this cache
105          4,    0,  EDX,      1, c_incl, Whether cache is inclusive of lower cache level
106          4,    0,  EDX,      2, c_comp_index, Complex Cache Indexing
107
108 # Leaf 05H
109 # MONITOR/MWAIT
110          5,    0,  EAX,   15:0, min_mon_size, Smallest monitor line size in bytes
111          5,    0,  EBX,   15:0, max_mon_size, Largest monitor line size in bytes
112          5,    0,  ECX,      0, mwait_ext, Enum of Monitor-Mwait extensions supported
113          5,    0,  ECX,      1, mwait_irq_break, Largest monitor line size in bytes
114          5,    0,  EDX,    3:0, c0_sub_stats, Number of C0* sub C-states supported using MWAIT
115          5,    0,  EDX,    7:4, c1_sub_stats, Number of C1* sub C-states supported using MWAIT
116          5,    0,  EDX,   11:8, c2_sub_stats, Number of C2* sub C-states supported using MWAIT
117          5,    0,  EDX,  15:12, c3_sub_stats, Number of C3* sub C-states supported using MWAIT
118          5,    0,  EDX,  19:16, c4_sub_stats, Number of C4* sub C-states supported using MWAIT
119          5,    0,  EDX,  23:20, c5_sub_stats, Number of C5* sub C-states supported using MWAIT
120          5,    0,  EDX,  27:24, c6_sub_stats, Number of C6* sub C-states supported using MWAIT
121          5,    0,  EDX,  31:28, c7_sub_stats, Number of C7* sub C-states supported using MWAIT
122
123 # Leaf 06H
124 # Thermal & Power Management
125
126          6,    0,  EAX,      0, dig_temp, Digital temperature sensor supported
127          6,    0,  EAX,      1, turbo, Intel Turbo Boost
128          6,    0,  EAX,      2, arat, Always running APIC timer
129 #        6,    0,  EAX,      3, resv, Reserved
130          6,    0,  EAX,      4, pln, Power limit notifications supported
131          6,    0,  EAX,      5, ecmd, Clock modulation duty cycle extension supported
132          6,    0,  EAX,      6, ptm, Package thermal management supported
133          6,    0,  EAX,      7, hwp, HWP base register
134          6,    0,  EAX,      8, hwp_notify, HWP notification
135          6,    0,  EAX,      9, hwp_act_window, HWP activity window
136          6,    0,  EAX,     10, hwp_energy, HWP energy performance preference
137          6,    0,  EAX,     11, hwp_pkg_req, HWP package level request
138 #        6,    0,  EAX,     12, resv, Reserved
139          6,    0,  EAX,     13, hdc, HDC base registers supported
140          6,    0,  EAX,     14, turbo3, Turbo Boost Max 3.0
141          6,    0,  EAX,     15, hwp_cap, Highest Performance change supported
142          6,    0,  EAX,     16, hwp_peci, HWP PECI override is supported
143          6,    0,  EAX,     17, hwp_flex, Flexible HWP is supported
144          6,    0,  EAX,     18, hwp_fast, Fast access mode for the IA32_HWP_REQUEST MSR is supported
145 #        6,    0,  EAX,     19, resv, Reserved
146          6,    0,  EAX,     20, hwp_ignr, Ignoring Idle Logical Processor HWP request is supported
147
148          6,    0,  EBX,    3:0, therm_irq_thresh, Number of Interrupt Thresholds in Digital Thermal Sensor
149          6,    0,  ECX,      0, aperfmperf, Presence of IA32_MPERF and IA32_APERF
150          6,    0,  ECX,      3, energ_bias, Performance-energy bias preference supported
151
152 # Leaf 07H
153 #       ECX == 0
154 # AVX512 refers to https://en.wikipedia.org/wiki/AVX-512
155 # XXX: Do we really need to enumerate each and every AVX512 sub features
156
157          7,    0,  EBX,      0, fsgsbase, RDFSBASE/RDGSBASE/WRFSBASE/WRGSBASE supported
158          7,    0,  EBX,      1, tsc_adjust, TSC_ADJUST MSR supported
159          7,    0,  EBX,      2, sgx, Software Guard Extensions
160          7,    0,  EBX,      3, bmi1, BMI1
161          7,    0,  EBX,      4, hle, Hardware Lock Elision
162          7,    0,  EBX,      5, avx2, AVX2
163 #        7,    0,  EBX,      6, fdp_excp_only, x87 FPU Data Pointer updated only on x87 exceptions
164          7,    0,  EBX,      7, smep, Supervisor-Mode Execution Prevention
165          7,    0,  EBX,      8, bmi2, BMI2
166          7,    0,  EBX,      9, rep_movsb, Enhanced REP MOVSB/STOSB
167          7,    0,  EBX,     10, invpcid, INVPCID instruction
168          7,    0,  EBX,     11, rtm, Restricted Transactional Memory
169          7,    0,  EBX,     12, rdt_m, Intel RDT Monitoring capability
170          7,    0,  EBX,     13, depc_fpu_cs_ds, Deprecates FPU CS and FPU DS
171          7,    0,  EBX,     14, mpx, Memory Protection Extensions
172          7,    0,  EBX,     15, rdt_a, Intel RDT Allocation capability
173          7,    0,  EBX,     16, avx512f, AVX512 Foundation instr
174          7,    0,  EBX,     17, avx512dq, AVX512 Double and Quadword AVX512 instr
175          7,    0,  EBX,     18, rdseed, RDSEED instr
176          7,    0,  EBX,     19, adx, ADX instr
177          7,    0,  EBX,     20, smap, Supervisor Mode Access Prevention
178          7,    0,  EBX,     21, avx512ifma, AVX512 Integer Fused Multiply Add
179 #        7,    0,  EBX,     22, resvd, resvd
180          7,    0,  EBX,     23, clflushopt, CLFLUSHOPT instr
181          7,    0,  EBX,     24, clwb, CLWB instr
182          7,    0,  EBX,     25, intel_pt, Intel Processor Trace instr
183          7,    0,  EBX,     26, avx512pf, Prefetch
184          7,    0,  EBX,     27, avx512er, AVX512 Exponent Reciproca instr
185          7,    0,  EBX,     28, avx512cd, AVX512 Conflict Detection instr
186          7,    0,  EBX,     29, sha, Intel Secure Hash Algorithm Extensions instr
187          7,    0,  EBX,     30, avx512bw, AVX512 Byte & Word instr
188          7,    0,  EBX,     31, avx512vl, AVX512 Vector Length Extentions (VL)
189          7,    0,  ECX,      0, prefetchwt1, X
190          7,    0,  ECX,      1, avx512vbmi, AVX512 Vector Byte Manipulation Instructions
191          7,    0,  ECX,      2, umip, User-mode Instruction Prevention
192
193          7,    0,  ECX,      3, pku, Protection Keys for User-mode pages
194          7,    0,  ECX,      4, ospke, CR4 PKE set to enable protection keys
195 #        7,    0,  ECX,   16:5, resvd, resvd
196          7,    0,  ECX,  21:17, mawau, The value of MAWAU used by the BNDLDX and BNDSTX instructions in 64-bit mode
197          7,    0,  ECX,     22, rdpid, RDPID and IA32_TSC_AUX
198 #        7,    0,  ECX,  29:23, resvd, resvd
199          7,    0,  ECX,     30, sgx_lc, SGX Launch Configuration
200 #        7,    0,  ECX,     31, resvd, resvd
201
202 # Leaf 08H
203 #
204
205
206 # Leaf 09H
207 # Direct Cache Access (DCA) information
208          9,    0,  ECX,   31:0, dca_cap, The value of IA32_PLATFORM_DCA_CAP
209
210 # Leaf 0AH
211 # Architectural Performance Monitoring
212 #
213 # Do we really need to print out the PMU related stuff?
214 # Does normal user really care about it?
215 #
216        0xA,    0,  EAX,    7:0, pmu_ver, Performance Monitoring Unit version
217        0xA,    0,  EAX,   15:8, pmu_gp_cnt_num, Numer of general-purose PMU counters per logical CPU
218        0xA,    0,  EAX,  23:16, pmu_cnt_bits, Bit wideth of PMU counter
219        0xA,    0,  EAX,  31:24, pmu_ebx_bits, Length of EBX bit vector to enumerate PMU events
220
221        0xA,    0,  EBX,      0, pmu_no_core_cycle_evt, Core cycle event not available
222        0xA,    0,  EBX,      1, pmu_no_instr_ret_evt, Instruction retired event not available
223        0xA,    0,  EBX,      2, pmu_no_ref_cycle_evt, Reference cycles event not available
224        0xA,    0,  EBX,      3, pmu_no_llc_ref_evt, Last-level cache reference event not available
225        0xA,    0,  EBX,      4, pmu_no_llc_mis_evt, Last-level cache misses event not available
226        0xA,    0,  EBX,      5, pmu_no_br_instr_ret_evt, Branch instruction retired event not available
227        0xA,    0,  EBX,      6, pmu_no_br_mispredict_evt, Branch mispredict retired event not available
228
229        0xA,    0,  ECX,    4:0, pmu_fixed_cnt_num, Performance Monitoring Unit version
230        0xA,    0,  ECX,   12:5, pmu_fixed_cnt_bits, Numer of PMU counters per logical CPU
231
232 # Leaf 0BH
233 # Extended Topology Enumeration Leaf
234 #
235
236        0xB,    0,  EAX,    4:0, id_shift, Number of bits to shift right on x2APIC ID to get a unique topology ID of the next level type
237        0xB,    0,  EBX,   15:0, cpu_nr, Number of logical processors at this level type
238        0xB,    0,  ECX,   15:8, lvl_type, 0-Invalid 1-SMT 2-Core
239        0xB,    0,  EDX,   31:0, x2apic_id, x2APIC ID the current logical processor
240
241
242 # Leaf 0DH
243 # Processor Extended State
244
245        0xD,    0,  EAX,      0, x87, X87 state
246        0xD,    0,  EAX,      1, sse, SSE state
247        0xD,    0,  EAX,      2, avx, AVX state
248        0xD,    0,  EAX,    4:3, mpx, MPX state
249        0xD,    0,  EAX,    7:5, avx512, AVX-512 state
250        0xD,    0,  EAX,      9, pkru, PKRU state
251
252        0xD,    0,  EBX,   31:0, max_sz_xcr0, Maximum size (bytes) required by enabled features in XCR0
253        0xD,    0,  ECX,   31:0, max_sz_xsave, Maximum size (bytes) of the XSAVE/XRSTOR save area
254
255        0xD,    1,  EAX,      0, xsaveopt, XSAVEOPT available
256        0xD,    1,  EAX,      1, xsavec, XSAVEC and compacted form supported
257        0xD,    1,  EAX,      2, xgetbv, XGETBV supported
258        0xD,    1,  EAX,      3, xsaves, XSAVES/XRSTORS and IA32_XSS supported
259
260        0xD,    1,  EBX,   31:0, max_sz_xcr0, Maximum size (bytes) required by enabled features in XCR0
261        0xD,    1,  ECX,      8, pt, PT state
262        0xD,    1,  ECX,      11, cet_usr, CET user state
263        0xD,    1,  ECX,      12, cet_supv, CET supervisor state
264        0xD,    1,  ECX,      13, hdc, HDC state
265        0xD,    1,  ECX,      16, hwp, HWP state
266
267 # Leaf 0FH
268 # Intel RDT Monitoring
269
270        0xF,    0,  EBX,   31:0, rmid_range, Maximum range (zero-based) of RMID within this physical processor of all types
271        0xF,    0,  EDX,      1, l3c_rdt_mon, L3 Cache RDT Monitoring supported
272
273        0xF,    1,  ECX,   31:0, rmid_range, Maximum range (zero-based) of RMID of this types
274        0xF,    1,  EDX,      0, l3c_ocp_mon, L3 Cache occupancy Monitoring supported
275        0xF,    1,  EDX,      1, l3c_tbw_mon, L3 Cache Total Bandwidth Monitoring supported
276        0xF,    1,  EDX,      2, l3c_lbw_mon, L3 Cache Local Bandwidth Monitoring supported
277
278 # Leaf 10H
279 # Intel RDT Allocation
280
281       0x10,    0,  EBX,      1, l3c_rdt_alloc, L3 Cache Allocation supported
282       0x10,    0,  EBX,      2, l2c_rdt_alloc, L2 Cache Allocation supported
283       0x10,    0,  EBX,      3, mem_bw_alloc, Memory Bandwidth Allocation supported
284
285
286 # Leaf 12H
287 # SGX Capability
288 #
289 # Some detailed SGX features not added yet
290
291       0x12,    0,  EAX,      0, sgx1, L3 Cache Allocation supported
292       0x12,    1,  EAX,      0, sgx2, L3 Cache Allocation supported
293
294
295 # Leaf 14H
296 # Intel Processor Tracer
297 #
298
299 # Leaf 15H
300 # Time Stamp Counter and Nominal Core Crystal Clock Information
301
302       0x15,    0,  EAX,   31:0, tsc_denominator, The denominator of the TSC/”core crystal clock” ratio
303       0x15,    0,  EBX,   31:0, tsc_numerator, The numerator of the TSC/”core crystal clock” ratio
304       0x15,    0,  ECX,   31:0, nom_freq, Nominal frequency of the core crystal clock in Hz
305
306 # Leaf 16H
307 # Processor Frequency Information
308
309       0x16,    0,  EAX,   15:0, cpu_base_freq, Processor Base Frequency in MHz
310       0x16,    0,  EBX,   15:0, cpu_max_freq, Maximum Frequency in MHz
311       0x16,    0,  ECX,   15:0, bus_freq, Bus (Reference) Frequency in MHz
312
313 # Leaf 17H
314 # System-On-Chip Vendor Attribute
315
316       0x17,    0,  EAX,   31:0, max_socid, Maximum input value of supported sub-leaf
317       0x17,    0,  EBX,   15:0, soc_vid, SOC Vendor ID
318       0x17,    0,  EBX,     16, std_vid, SOC Vendor ID is assigned via an industry standard scheme
319       0x17,    0,  ECX,   31:0, soc_pid, SOC Project ID assigned by vendor
320       0x17,    0,  EDX,   31:0, soc_sid, SOC Stepping ID
321
322 # Leaf 18H
323 # Deterministic Address Translation Parameters
324
325
326 # Leaf 19H
327 # Key Locker Leaf
328
329
330 # Leaf 1AH
331 # Hybrid Information
332
333       0x1A,    0,  EAX,  31:24, core_type, 20H-Intel_Atom 40H-Intel_Core
334
335
336 # Leaf 1FH
337 # V2 Extended Topology - A preferred superset to leaf 0BH
338
339
340 # According to SDM
341 # 40000000H - 4FFFFFFFH is invalid range
342
343 # Leaf 80000001H
344 # Extended Processor Signature and Feature Bits
345
346 0x80000001,    0,  EAX,  27:20, extfamily, Extended family
347 0x80000001,    0,  EAX,  19:16, extmodel, Extended model
348 0x80000001,    0,  EAX,   11:8, basefamily, Description of Family
349 0x80000001,    0,  EAX,   11:8, basemodel, Model numbers vary with product
350 0x80000001,    0,  EAX,    3:0, stepping, Processor stepping (revision) for a specific model
351
352 0x80000001,    0,  EBX,  31:28, pkgtype, Specifies the package type
353
354 0x80000001,    0,  ECX,      0, lahf_lm, LAHF/SAHF available in 64-bit mode
355 0x80000001,    0,  ECX,      1, cmplegacy, Core multi-processing legacy mode
356 0x80000001,    0,  ECX,      2, svm, Indicates support for: VMRUN, VMLOAD, VMSAVE, CLGI, VMMCALL, and INVLPGA
357 0x80000001,    0,  ECX,      3, extapicspace, Extended APIC register space
358 0x80000001,    0,  ECX,      4, altmovecr8, Indicates support for LOCK MOV CR0 means MOV CR8
359 0x80000001,    0,  ECX,      5, lzcnt, LZCNT
360 0x80000001,    0,  ECX,      6, sse4a, EXTRQ, INSERTQ, MOVNTSS, and MOVNTSD instruction support
361 0x80000001,    0,  ECX,      7, misalignsse, Misaligned SSE Mode
362 0x80000001,    0,  ECX,      8, prefetchw, PREFETCHW
363 0x80000001,    0,  ECX,      9, osvw, OS Visible Work-around support
364 0x80000001,    0,  ECX,     10, ibs, Instruction Based Sampling
365 0x80000001,    0,  ECX,     11, xop, Extended operation support
366 0x80000001,    0,  ECX,     12, skinit, SKINIT and STGI support
367 0x80000001,    0,  ECX,     13, wdt, Watchdog timer support
368 0x80000001,    0,  ECX,     15, lwp, Lightweight profiling support
369 0x80000001,    0,  ECX,     16, fma4, Four-operand FMA instruction support
370 0x80000001,    0,  ECX,     17, tce, Translation cache extension
371 0x80000001,    0,  ECX,     22, TopologyExtensions, Indicates support for Core::X86::Cpuid::CachePropEax0 and Core::X86::Cpuid::ExtApicId
372 0x80000001,    0,  ECX,     23, perfctrextcore, Indicates support for Core::X86::Msr::PERF_CTL0 - 5 and Core::X86::Msr::PERF_CTR
373 0x80000001,    0,  ECX,     24, perfctrextdf, Indicates support for Core::X86::Msr::DF_PERF_CTL and Core::X86::Msr::DF_PERF_CTR
374 0x80000001,    0,  ECX,     26, databreakpointextension, Indicates data breakpoint support for Core::X86::Msr::DR0_ADDR_MASK, Core::X86::Msr::DR1_ADDR_MASK, Core::X86::Msr::DR2_ADDR_MASK and Core::X86::Msr::DR3_ADDR_MASK
375 0x80000001,    0,  ECX,     27, perftsc, Performance time-stamp counter supported
376 0x80000001,    0,  ECX,     28, perfctrextllc, Indicates support for L3 performance counter extensions
377 0x80000001,    0,  ECX,     29, mwaitextended, MWAITX and MONITORX capability is supported
378 0x80000001,    0,  ECX,     30, admskextn, Indicates support for address mask extension (to 32 bits and to all 4 DRs) for instruction breakpoints
379
380 0x80000001,    0,  EDX,      0, fpu, x87 floating point unit on-chip
381 0x80000001,    0,  EDX,      1, vme, Virtual-mode enhancements
382 0x80000001,    0,  EDX,      2, de, Debugging extensions, IO breakpoints, CR4.DE
383 0x80000001,    0,  EDX,      3, pse, Page-size extensions (4 MB pages)
384 0x80000001,    0,  EDX,      4, tsc, Time stamp counter, RDTSC/RDTSCP instructions, CR4.TSD
385 0x80000001,    0,  EDX,      5, msr, Model-specific registers (MSRs), with RDMSR and WRMSR instructions
386 0x80000001,    0,  EDX,      6, pae, Physical-address extensions (PAE)
387 0x80000001,    0,  EDX,      7, mce, Machine Check Exception, CR4.MCE
388 0x80000001,    0,  EDX,      8, cmpxchg8b, CMPXCHG8B instruction
389 0x80000001,    0,  EDX,      9, apic, advanced programmable interrupt controller (APIC) exists and is enabled
390 0x80000001,    0,  EDX,     11, sysret, SYSCALL/SYSRET supported
391 0x80000001,    0,  EDX,     12, mtrr, Memory-type range registers
392 0x80000001,    0,  EDX,     13, pge, Page global extension, CR4.PGE
393 0x80000001,    0,  EDX,     14, mca, Machine check architecture, MCG_CAP
394 0x80000001,    0,  EDX,     15, cmov, Conditional move instructions, CMOV, FCOMI, FCMOV
395 0x80000001,    0,  EDX,     16, pat, Page attribute table
396 0x80000001,    0,  EDX,     17, pse36, Page-size extensions
397 0x80000001,    0,  EDX,     20, exec_dis, Execute Disable Bit available
398 0x80000001,    0,  EDX,     22, mmxext, AMD extensions to MMX instructions
399 0x80000001,    0,  EDX,     23, mmx, MMX instructions
400 0x80000001,    0,  EDX,     24, fxsr, FXSAVE and FXRSTOR instructions
401 0x80000001,    0,  EDX,     25, ffxsr, FXSAVE and FXRSTOR instruction optimizations
402 0x80000001,    0,  EDX,     26, 1gb_page, 1GB page supported
403 0x80000001,    0,  EDX,     27, rdtscp, RDTSCP and IA32_TSC_AUX are available
404 0x80000001,    0,  EDX,     29, lm, 64b Architecture supported
405 0x80000001,    0,  EDX,     30, threednowext, AMD extensions to 3DNow! instructions
406 0x80000001,    0,  EDX,     31, threednow, 3DNow! instructions
407
408 # Leaf 80000002H/80000003H/80000004H
409 # Processor Brand String
410
411 # Leaf 80000005H
412 # Reserved
413
414 # Leaf 80000006H
415 # Extended L2 Cache Features
416
417 0x80000006,    0,  ECX,    7:0, clsize, Cache Line size in bytes
418 0x80000006,    0,  ECX,  15:12, l2c_assoc, L2 Associativity
419 0x80000006,    0,  ECX,  31:16, csize, Cache size in 1K units
420
421
422 # Leaf 80000007H
423
424 0x80000007,    0,  EDX,      8, nonstop_tsc, Invariant TSC available
425
426
427 # Leaf 80000008H
428
429 0x80000008,    0,  EAX,    7:0, phy_adr_bits, Physical Address Bits
430 0x80000008,    0,  EAX,   15:8, lnr_adr_bits, Linear Address Bits
431 0x80000007,    0,  EBX,      9, wbnoinvd, WBNOINVD
432
433 # 0x8000001E
434 # EAX: Extended APIC ID
435 0x8000001E,     0, EAX,   31:0, extended_apic_id, Extended APIC ID
436 # EBX: Core Identifiers
437 0x8000001E,     0, EBX,    7:0, core_id, Identifies the logical core ID
438 0x8000001E,     0, EBX,   15:8, threads_per_core, The number of threads per core is threads_per_core + 1
439 # ECX: Node Identifiers
440 0x8000001E,     0, ECX,    7:0, node_id, Node ID
441 0x8000001E,     0, ECX,   10:8, nodes_per_processor, Nodes per processor { 0: 1 node, else reserved }
442
443 # 8000001F: AMD Secure Encryption
444 0x8000001F,     0, EAX,      0, sme,    Secure Memory Encryption
445 0x8000001F,     0, EAX,      1, sev,    Secure Encrypted Virtualization
446 0x8000001F,     0, EAX,      2, vmpgflush, VM Page Flush MSR
447 0x8000001F,     0, EAX,      3, seves, SEV Encrypted State
448 0x8000001F,     0, EBX,    5:0, c-bit, Page table bit number used to enable memory encryption
449 0x8000001F,     0, EBX,   11:6, mem_encrypt_physaddr_width, Reduction of physical address space in bits with SME enabled
450 0x8000001F,     0, ECX,   31:0, num_encrypted_guests, Maximum ASID value that may be used for an SEV-enabled guest
451 0x8000001F,     0, EDX,   31:0, minimum_sev_asid, Minimum ASID value that must be used for an SEV-enabled, SEV-ES-disabled guest