Revision 0573fbfc target-i386/cpu.h
b/target-i386/cpu.h | ||
---|---|---|
84 | 84 |
#define DESC_AVL_MASK (1 << 20) |
85 | 85 |
#define DESC_P_MASK (1 << 15) |
86 | 86 |
#define DESC_DPL_SHIFT 13 |
87 |
#define DESC_DPL_MASK (1 << DESC_DPL_SHIFT) |
|
87 | 88 |
#define DESC_S_MASK (1 << 12) |
88 | 89 |
#define DESC_TYPE_SHIFT 8 |
89 | 90 |
#define DESC_A_MASK (1 << 8) |
... | ... | |
149 | 150 |
#define HF_VM_SHIFT 17 /* must be same as eflags */ |
150 | 151 |
#define HF_HALTED_SHIFT 18 /* CPU halted */ |
151 | 152 |
#define HF_SMM_SHIFT 19 /* CPU in SMM mode */ |
153 |
#define HF_GIF_SHIFT 20 /* if set CPU takes interrupts */ |
|
154 |
#define HF_HIF_SHIFT 21 /* shadow copy of IF_MASK when in SVM */ |
|
152 | 155 |
|
153 | 156 |
#define HF_CPL_MASK (3 << HF_CPL_SHIFT) |
154 | 157 |
#define HF_SOFTMMU_MASK (1 << HF_SOFTMMU_SHIFT) |
... | ... | |
166 | 169 |
#define HF_OSFXSR_MASK (1 << HF_OSFXSR_SHIFT) |
167 | 170 |
#define HF_HALTED_MASK (1 << HF_HALTED_SHIFT) |
168 | 171 |
#define HF_SMM_MASK (1 << HF_SMM_SHIFT) |
172 |
#define HF_GIF_MASK (1 << HF_GIF_SHIFT) |
|
173 |
#define HF_HIF_MASK (1 << HF_HIF_SHIFT) |
|
169 | 174 |
|
170 | 175 |
#define CR0_PE_MASK (1 << 0) |
171 | 176 |
#define CR0_MP_MASK (1 << 1) |
... | ... | |
249 | 254 |
#define MSR_GSBASE 0xc0000101 |
250 | 255 |
#define MSR_KERNELGSBASE 0xc0000102 |
251 | 256 |
|
257 |
#define MSR_VM_HSAVE_PA 0xc0010117 |
|
258 |
|
|
252 | 259 |
/* cpuid_features bits */ |
253 | 260 |
#define CPUID_FP87 (1 << 0) |
254 | 261 |
#define CPUID_VME (1 << 1) |
... | ... | |
283 | 290 |
#define CPUID_EXT2_FFXSR (1 << 25) |
284 | 291 |
#define CPUID_EXT2_LM (1 << 29) |
285 | 292 |
|
293 |
#define CPUID_EXT3_SVM (1 << 2) |
|
294 |
|
|
286 | 295 |
#define EXCP00_DIVZ 0 |
287 | 296 |
#define EXCP01_SSTP 1 |
288 | 297 |
#define EXCP02_NMI 2 |
... | ... | |
489 | 498 |
uint32_t sysenter_eip; |
490 | 499 |
uint64_t efer; |
491 | 500 |
uint64_t star; |
501 |
|
|
502 |
target_phys_addr_t vm_hsave; |
|
503 |
target_phys_addr_t vm_vmcb; |
|
504 |
uint64_t intercept; |
|
505 |
uint16_t intercept_cr_read; |
|
506 |
uint16_t intercept_cr_write; |
|
507 |
uint16_t intercept_dr_read; |
|
508 |
uint16_t intercept_dr_write; |
|
509 |
uint32_t intercept_exceptions; |
|
510 |
|
|
492 | 511 |
#ifdef TARGET_X86_64 |
493 | 512 |
target_ulong lstar; |
494 | 513 |
target_ulong cstar; |
... | ... | |
530 | 549 |
uint32_t cpuid_xlevel; |
531 | 550 |
uint32_t cpuid_model[12]; |
532 | 551 |
uint32_t cpuid_ext2_features; |
552 |
uint32_t cpuid_ext3_features; |
|
533 | 553 |
uint32_t cpuid_apic_id; |
534 | 554 |
|
535 | 555 |
#ifdef USE_KQEMU |
... | ... | |
670 | 690 |
|
671 | 691 |
#include "cpu-all.h" |
672 | 692 |
|
693 |
#include "svm.h" |
|
694 |
|
|
673 | 695 |
#endif /* CPU_I386_H */ |
Also available in: Unified diff