$NetBSD: patch-au,v 1.1.1.1 2004/07/17 23:49:26 dmcmahill Exp $

--- src/include/uttypes.h.orig	Mon Dec 29 16:45:59 2003
+++ src/include/uttypes.h
@@ -146,13 +146,7 @@ typedef struct {char val;} *utU32ArrayRe
 // todo Prefetch: put in create functions where initialization are done.
 --------------------------------------------------------------------------------------------------*/
 
-#if (defined(_WINDOWS) || defined(_WIN32))
-#define utLikely(x)          (x)               /* unknown if ms c compiler supports this */
-#define utUnlikely(x)        (x)
-#define utExpected(x,y)      (x)
-#define utPrefetchRead(x)    (x)
-#define utPrefetchWrite(x)   (x)
-#else
+#if defined(__GNUC__) && __GNUC__ > 3
 #define utLikely(x)          __builtin_expect((x),1)    /* assumes gcc version >= 3.0 */
 #define utUnlikely(x)        __builtin_expect((x),0)
 #define utExpected(x,y)      __builtin_expect((x),(y))
@@ -160,6 +154,12 @@ typedef struct {char val;} *utU32ArrayRe
 #define utPrefetchRead(x)    __builtin_prefetch((x), 0) 
 #define utPrefetchWrite(x)   __builtin_prefetch((x), 1) 
 /* also add markers for functions that never return (exit, error) using __attribute__ */
+#else
+#define utLikely(x)          (x)               /* unknown if ms c compiler supports this */
+#define utUnlikely(x)        (x)
+#define utExpected(x,y)      (x)
+#define utPrefetchRead(x)    (x)
+#define utPrefetchWrite(x)   (x)
 #endif
 #define utPrefetch(x)        utPrefetchRead(x)           
 
