Commit 8d9bfc2b48b74962a9ee698edff9b0d9a0671c36
1 parent
c28e951f
enable EFER usage in i386 emulation - more cpuid bits
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1372 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
8 additions
and
3 deletions
target-i386/cpu.h
| @@ -258,6 +258,7 @@ | @@ -258,6 +258,7 @@ | ||
| 258 | 258 | ||
| 259 | #define CPUID_EXT2_SYSCALL (1 << 11) | 259 | #define CPUID_EXT2_SYSCALL (1 << 11) |
| 260 | #define CPUID_EXT2_NX (1 << 20) | 260 | #define CPUID_EXT2_NX (1 << 20) |
| 261 | +#define CPUID_EXT2_FFXSR (1 << 25) | ||
| 261 | #define CPUID_EXT2_LM (1 << 29) | 262 | #define CPUID_EXT2_LM (1 << 29) |
| 262 | 263 | ||
| 263 | #define EXCP00_DIVZ 0 | 264 | #define EXCP00_DIVZ 0 |
| @@ -464,9 +465,9 @@ typedef struct CPUX86State { | @@ -464,9 +465,9 @@ typedef struct CPUX86State { | ||
| 464 | uint32_t sysenter_cs; | 465 | uint32_t sysenter_cs; |
| 465 | uint32_t sysenter_esp; | 466 | uint32_t sysenter_esp; |
| 466 | uint32_t sysenter_eip; | 467 | uint32_t sysenter_eip; |
| 468 | + uint64_t efer; | ||
| 469 | + uint64_t star; | ||
| 467 | #ifdef TARGET_X86_64 | 470 | #ifdef TARGET_X86_64 |
| 468 | - target_ulong efer; | ||
| 469 | - target_ulong star; | ||
| 470 | target_ulong lstar; | 471 | target_ulong lstar; |
| 471 | target_ulong cstar; | 472 | target_ulong cstar; |
| 472 | target_ulong fmask; | 473 | target_ulong fmask; |
| @@ -510,13 +511,17 @@ typedef struct CPUX86State { | @@ -510,13 +511,17 @@ typedef struct CPUX86State { | ||
| 510 | int singlestep_enabled; | 511 | int singlestep_enabled; |
| 511 | 512 | ||
| 512 | /* processor features (e.g. for CPUID insn) */ | 513 | /* processor features (e.g. for CPUID insn) */ |
| 514 | + uint32_t cpuid_level; | ||
| 513 | uint32_t cpuid_vendor1; | 515 | uint32_t cpuid_vendor1; |
| 514 | uint32_t cpuid_vendor2; | 516 | uint32_t cpuid_vendor2; |
| 515 | uint32_t cpuid_vendor3; | 517 | uint32_t cpuid_vendor3; |
| 516 | uint32_t cpuid_version; | 518 | uint32_t cpuid_version; |
| 517 | uint32_t cpuid_features; | 519 | uint32_t cpuid_features; |
| 518 | uint32_t cpuid_ext_features; | 520 | uint32_t cpuid_ext_features; |
| 519 | - | 521 | + uint32_t cpuid_xlevel; |
| 522 | + uint32_t cpuid_model[12]; | ||
| 523 | + uint32_t cpuid_ext2_features; | ||
| 524 | + | ||
| 520 | #ifdef USE_KQEMU | 525 | #ifdef USE_KQEMU |
| 521 | int kqemu_enabled; | 526 | int kqemu_enabled; |
| 522 | #endif | 527 | #endif |