]> mj.ucw.cz Git - libucw.git/commitdiff
Enable prefetching on some more CPU's.
authorMartin Mares <mj@ucw.cz>
Mon, 11 Sep 2006 19:05:16 +0000 (21:05 +0200)
committerMartin Mares <mj@ucw.cz>
Mon, 11 Sep 2006 19:05:16 +0000 (21:05 +0200)
lib/prefetch.h

index 8c97906d8630f85ca4435f146483edc16aae025a..776fc6a6a002e5883fed64d0a82a553085c13470 100644 (file)
@@ -1,7 +1,7 @@
 /*
  *     UCW Library -- Prefetch
  *
- *     (c) 1997--2005 Martin Mares <mj@ucw.cz>
+ *     (c) 1997--2006 Martin Mares <mj@ucw.cz>
  *
  *     This software may be freely distributed and used according to the terms
  *     of the GNU Lesser General Public License.
 #ifndef _UCW_PREFETCH_H
 #define _UCW_PREFETCH_H
 
-#if defined(__pentium4)
-
-#define HAVE_PREFETCH
-static inline void prefetch(void *addr)
-{
-  asm volatile ("prefetcht0 %0" : : "m" (*(byte*)addr));
-}
-
-#elif defined(__k6)
+#if defined(__k6)
   /* K6 doesn't have prefetches */
 
-#elif defined(__athlon) || defined(__i686)
+#elif defined(__athlon) || defined(__k8) || \
+      defined(__i686) || \\
+      defined(__pentium4) || defined(__prescott) || defined(__nocona)
 
 #define HAVE_PREFETCH
 static inline void prefetch(void *addr)