Freddie Tilley : ntdll: Detect more cpu features in get_cpuinfo.

Alexandre Julliard julliard at winehq.org
Mon Jan 25 11:21:02 CST 2010


Module: wine
Branch: master
Commit: 323b36f52121b093ef65cea536787cd1328cda7a
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=323b36f52121b093ef65cea536787cd1328cda7a

Author: Freddie Tilley <freddie.tilley at gmail.com>
Date:   Sat Jan 23 11:09:28 2010 +0100

ntdll: Detect more cpu features in get_cpuinfo.

---

 dlls/ntdll/nt.c |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/dlls/ntdll/nt.c b/dlls/ntdll/nt.c
index 5cc4877..fdcc163 100644
--- a/dlls/ntdll/nt.c
+++ b/dlls/ntdll/nt.c
@@ -845,10 +845,13 @@ static inline void get_cpuinfo(SYSTEM_CPU_INFORMATION* info)
             info->Level = 3;
             break;
         }
-        user_shared_data->ProcessorFeatures[PF_FLOATING_POINT_EMULATED]     = !(regs2[3] & 1);
-        user_shared_data->ProcessorFeatures[PF_RDTSC_INSTRUCTION_AVAILABLE] = (regs2[3] & (1 << 4 )) >> 4;
-        user_shared_data->ProcessorFeatures[PF_COMPARE_EXCHANGE_DOUBLE]     = (regs2[3] & (1 << 8 )) >> 8;
-        user_shared_data->ProcessorFeatures[PF_MMX_INSTRUCTIONS_AVAILABLE]  = (regs2[3] & (1 << 23)) >> 23;
+        user_shared_data->ProcessorFeatures[PF_FLOATING_POINT_EMULATED]       = !(regs2[3] & 1);
+        user_shared_data->ProcessorFeatures[PF_RDTSC_INSTRUCTION_AVAILABLE]   = (regs2[3] & (1 << 4 )) >> 4;
+        user_shared_data->ProcessorFeatures[PF_PAE_ENABLED]                   = (regs2[3] & (1 << 6 )) >> 6;
+        user_shared_data->ProcessorFeatures[PF_COMPARE_EXCHANGE_DOUBLE]       = (regs2[3] & (1 << 8 )) >> 8;
+        user_shared_data->ProcessorFeatures[PF_MMX_INSTRUCTIONS_AVAILABLE]    = (regs2[3] & (1 << 23)) >> 23;
+        user_shared_data->ProcessorFeatures[PF_XMMI_INSTRUCTIONS_AVAILABLE]   = (regs2[3] & (1 << 25)) >> 25;
+        user_shared_data->ProcessorFeatures[PF_XMMI64_INSTRUCTIONS_AVAILABLE] = (regs2[3] & (1 << 26)) >> 26;
 
         if (regs[1] == AUTH && regs[3] == ENTI && regs[2] == CAMD)
         {




More information about the wine-cvs mailing list