changeset 3403:c4ca766a2d05

added cpuStepping to CpuCaps struct (needed win32.c)
author alex
date Sun, 09 Dec 2001 17:03:04 +0000
parents 5d3cbbf63d18
children 1261ff74abd9
files cpudetect.c cpudetect.h
diffstat 2 files changed, 7 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/cpudetect.c	Sun Dec 09 16:56:23 2001 +0000
+++ b/cpudetect.c	Sun Dec 09 17:03:04 2001 +0000
@@ -73,7 +73,7 @@
 	("movl %%ebx, %%esi\n\t"
          "cpuid\n\t"
          "xchgl %%ebx, %%esi"
-         : "=a" (p[0]), "=S" (p[1]),
+         : "=a" (p[0]), "=S" (p[1]), 
            "=c" (p[2]), "=d" (p[3])
          : "0" (ax));
 #endif
@@ -101,7 +101,7 @@
 		do_cpuid(0x00000001, regs2);
 
 		tmpstr=GetCpuFriendlyName(regs, regs2);
-		printf("CPU: %s\n",tmpstr);
+		printf("CPU: %s ",tmpstr);
 		free(tmpstr);
 
 		caps->cpuType=(regs2[0] >> 8)&0xf;
@@ -109,6 +109,9 @@
 		    // use extended family (P4, IA64)
 		    caps->cpuType=8+((regs2[0]>>20)&255);
 		}
+		caps->cpuStepping=regs2[0] & 0xf;
+		printf("(Type: %d, Stepping: %d)\n",
+		    caps->cpuType, caps->cpuStepping);
 
 		// general feature flags:
 		caps->hasMMX  = (regs2[3] & (1 << 23 )) >> 23; // 0x0800000
@@ -347,6 +350,7 @@
 void GetCpuCaps( CpuCaps *caps)
 {
 	caps->cpuType=0;
+	caps->cpuStepping=0;
 	caps->hasMMX=0;
 	caps->hasMMX2=0;
 	caps->has3DNow=0;
--- a/cpudetect.h	Sun Dec 09 16:56:23 2001 +0000
+++ b/cpudetect.h	Sun Dec 09 17:03:04 2001 +0000
@@ -8,6 +8,7 @@
 
 typedef struct cpucaps_s {
 	int cpuType;
+	int cpuStepping;
 	int hasMMX;
 	int hasMMX2;
 	int has3DNow;