
From: Albert Cahalan <albert@users.sourceforge.net>

1. allows likely() and unlikely() to work for pointers

2. fixes likely() (in C, any non-zero value is true)



 25-akpm/include/linux/compiler.h |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff -puN include/linux/compiler.h~likely-unlikely-fix include/linux/compiler.h
--- 25/include/linux/compiler.h~likely-unlikely-fix	Mon Aug 11 11:53:35 2003
+++ 25-akpm/include/linux/compiler.h	Mon Aug 11 11:53:35 2003
@@ -24,8 +24,8 @@
 #define __builtin_expect(x, expected_value) (x)
 #endif
 
-#define likely(x)	__builtin_expect((x),1)
-#define unlikely(x)	__builtin_expect((x),0)
+#define likely(x)	__builtin_expect(!!(x), 1)
+#define unlikely(x)	__builtin_expect(!!(x), 0)
 
 /*
  * Allow us to mark functions as 'deprecated' and have gcc emit a nice

_
