include/winternl.h: Fix CPU_FEATURE_3DNOW bit mask
James Eder
jimportal at gmail.com
Thu Sep 6 10:23:13 CDT 2012
This was verified with XP running in qemu-kvm on a machine with an AMD
processor.
I created a test program which calls NtQuerySystemInformation to get a
SYSTEM_CPU_INFORMATION structure and then print the FeatureSet member.
The VM was first launched with "qemu-kvm -cpu host ..." to pass all
available CPUID features from the host to the guest. Then, the VM was
launched with "qemu-kvm -cpu host,-3dnow ..." to pass all features but
disable 3dnow. Comparing the results from the two test program runs, only
one bit changed. From this information it was possible to derive the
correct bit mask for the CPU_FEATURE_3DNOW preprocessor macro.
---
include/winternl.h | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/include/winternl.h b/include/winternl.h
index bcf18f5..79078f0 100644
--- a/include/winternl.h
+++ b/include/winternl.h
@@ -1146,8 +1146,7 @@ typedef struct _SYSTEM_CPU_INFORMATION {
#define CPU_FEATURE_FXSR 0x00000800 /* FXSAVE and FXSTORE instructions */
#define CPU_FEATURE_SEP 0x00001000 /* SYSENTER and SYSEXIT instructions */
#define CPU_FEATURE_SSE 0x00002000 /* SSE extensions (ext. MMX) */
-#define CPU_FEATURE_3DNOW 0x00008000 /* 3DNOW instructions available
- (FIXME: needs to be confirmed) */
+#define CPU_FEATURE_3DNOW 0x00004000 /* 3DNOW instructions available */
#define CPU_FEATURE_SSE2 0x00010000 /* SSE2 extensions (XMMI64) */
#define CPU_FEATURE_DS 0x00020000 /* Debug Store */
#define CPU_FEATURE_HTT 0x00040000 /* Hyper Threading Technology */
--
1.7.12
More information about the wine-patches
mailing list