r4122 - trunk/birnet



Author: timj
Date: 2006-12-03 18:58:07 -0500 (Sun, 03 Dec 2006)
New Revision: 4122

Modified:
   trunk/birnet/ChangeLog
   trunk/birnet/birnetcdefs.h
   trunk/birnet/birnetcpu.cc
Log:
Sun Dec  3 20:09:58 2006  Tim Janik  <timj gtk org>

        * birnetcdefs.h: added x86_sse4 to BirnetCPUInfo.

        * birnetcpu.cc (get_x86_cpu_features): detect x86_sse4 bit of CPUID.




Modified: trunk/birnet/ChangeLog
===================================================================
--- trunk/birnet/ChangeLog	2006-12-03 20:27:33 UTC (rev 4121)
+++ trunk/birnet/ChangeLog	2006-12-03 23:58:07 UTC (rev 4122)
@@ -1,3 +1,9 @@
+Sun Dec  3 20:09:58 2006  Tim Janik  <timj gtk org>
+
+	* birnetcdefs.h: added x86_sse4 to BirnetCPUInfo.
+
+	* birnetcpu.cc (get_x86_cpu_features): detect x86_sse4 bit of CPUID.
+
 Tue Nov 28 01:20:57 2006  Tim Janik  <timj gtk org>
 
 	* birnetthreadimpl.cc: do not provide chain/unchain functions after 

Modified: trunk/birnet/birnetcdefs.h
===================================================================
--- trunk/birnet/birnetcdefs.h	2006-12-03 20:27:33 UTC (rev 4121)
+++ trunk/birnet/birnetcdefs.h	2006-12-03 23:58:07 UTC (rev 4122)
@@ -209,9 +209,9 @@
   /* CPU Vendor ID */
   const char *cpu_vendor;
   /* CPU features on X86 */
-  uint x86_fpu : 1, x86_tsc    : 1, x86_htt   : 1;
+  uint x86_fpu : 1, x86_ssesys : 1, x86_tsc   : 1, x86_htt      : 1;
   uint x86_mmx : 1, x86_mmxext : 1, x86_3dnow : 1, x86_3dnowext : 1;
-  uint x86_sse : 1, x86_sse2   : 1, x86_sse3  : 1, x86_ssesys   : 1;
+  uint x86_sse : 1, x86_sse2   : 1, x86_sse3  : 1, x86_sse4     : 1;
 } BirnetCPUInfo;
 
 /* --- Thread info --- */

Modified: trunk/birnet/birnetcpu.cc
===================================================================
--- trunk/birnet/birnetcpu.cc	2006-12-03 20:27:33 UTC (rev 4121)
+++ trunk/birnet/birnetcpu.cc	2006-12-03 23:58:07 UTC (rev 4122)
@@ -155,6 +155,8 @@
       x86_cpuid (1, eax, ebx, ecx, edx);
       if (ecx & (1 << 0))
         ci->x86_sse3 = true;
+      if (ecx & (1 << 9))
+        ci->x86_sse4 = true;
       if (edx & (1 << 0))
         ci->x86_fpu = true;
       if (edx & (1 << 4))
@@ -277,6 +279,8 @@
     g_string_append_printf (sflags, " SSE2");
   if (cpu_info.x86_sse3)
     g_string_append_printf (sflags, " SSE3");
+  if (cpu_info.x86_sse4)
+    g_string_append_printf (sflags, " SSE4");
   if (cpu_info.x86_ssesys)
     g_string_append_printf (sflags, " SSESYS");
   /* 3DNOW flags */




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]