aboutsummaryrefslogtreecommitdiff
path: root/target-i386
diff options
context:
space:
mode:
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2005-04-23 17:46:55 +0000
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2005-04-23 17:46:55 +0000
commit8d9bfc2b48b74962a9ee698edff9b0d9a0671c36 (patch)
tree6f84ea79a568059d183f748b643006d39f1243ce /target-i386
parentc28e951fc797115eb7c79d31519215f5d79efea2 (diff)
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
Diffstat (limited to 'target-i386')
-rw-r--r--target-i386/cpu.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/target-i386/cpu.h b/target-i386/cpu.h
index d0157ce8d2..3549511106 100644
--- a/target-i386/cpu.h
+++ b/target-i386/cpu.h
@@ -258,6 +258,7 @@
#define CPUID_EXT2_SYSCALL (1 << 11)
#define CPUID_EXT2_NX (1 << 20)
+#define CPUID_EXT2_FFXSR (1 << 25)
#define CPUID_EXT2_LM (1 << 29)
#define EXCP00_DIVZ 0
@@ -464,9 +465,9 @@ typedef struct CPUX86State {
uint32_t sysenter_cs;
uint32_t sysenter_esp;
uint32_t sysenter_eip;
+ uint64_t efer;
+ uint64_t star;
#ifdef TARGET_X86_64
- target_ulong efer;
- target_ulong star;
target_ulong lstar;
target_ulong cstar;
target_ulong fmask;
@@ -510,13 +511,17 @@ typedef struct CPUX86State {
int singlestep_enabled;
/* processor features (e.g. for CPUID insn) */
+ uint32_t cpuid_level;
uint32_t cpuid_vendor1;
uint32_t cpuid_vendor2;
uint32_t cpuid_vendor3;
uint32_t cpuid_version;
uint32_t cpuid_features;
uint32_t cpuid_ext_features;
-
+ uint32_t cpuid_xlevel;
+ uint32_t cpuid_model[12];
+ uint32_t cpuid_ext2_features;
+
#ifdef USE_KQEMU
int kqemu_enabled;
#endif