[Mesa-dev] [PATCH] util: fix wrong shift val for a cpu feature detect
Maxence Le Doré
maxence.ledore at gmail.com
Wed Mar 6 17:39:19 PST 2013
While I was trying to understand how cpu features detection works, I
noticed that every was coherent except for the TSC ( Time Stamp
Counter). I found many pages on the net that suggest that the right
value for the corresponding shift would be 4 and not 8. Even the
commented bitfields that represent the bit flag for each cpu feature
seems to suggest that.
From 17adc106ce2718343dd17750c928137441ef3086 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Maxence=20Le=20Dor=C3=A9?= <maxence.ledore at gmail.com>
Date: Thu, 7 Mar 2013 02:30:03 +0100
Subject: [PATCH] util: fix wrong shift val for a cpu feature detect
---
src/gallium/auxiliary/util/u_cpu_detect.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/gallium/auxiliary/util/u_cpu_detect.c
b/src/gallium/auxiliary/util/u_cpu_detect.c
index d7f0be4..0328051 100644
--- a/src/gallium/auxiliary/util/u_cpu_detect.c
+++ b/src/gallium/auxiliary/util/u_cpu_detect.c
@@ -270,7 +270,7 @@ util_cpu_detect(void)
util_cpu_caps.x86_cpu_type = 8 + ((regs2[0] >> 20) &
255); /* use extended family (P4, IA64) */
/* general feature flags */
- util_cpu_caps.has_tsc = (regs2[3] >> 8) & 1; /* 0x0000010 */
+ util_cpu_caps.has_tsc = (regs2[3] >> 4) & 1; /* 0x0000010 */
util_cpu_caps.has_mmx = (regs2[3] >> 23) & 1; /* 0x0800000 */
util_cpu_caps.has_sse = (regs2[3] >> 25) & 1; /* 0x2000000 */
util_cpu_caps.has_sse2 = (regs2[3] >> 26) & 1; /* 0x4000000 */
--
1.7.9.5
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20130307/353d70ea/attachment-0001.html>
More information about the mesa-dev
mailing list