add support for likely()/unlikely() type macros
authorLennart Poettering <lennart@poettering.net>
Fri, 9 Nov 2007 01:28:56 +0000 (01:28 +0000)
committerLennart Poettering <lennart@poettering.net>
Fri, 9 Nov 2007 01:28:56 +0000 (01:28 +0000)
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@2032 fefdeb5f-60dc-0310-8127-8f9354f1896f

src/pulsecore/gccmacro.h

index e9f0d09..ecdc057 100644 (file)
@@ -60,7 +60,7 @@
 #endif
 
 #ifndef PA_GCC_PURE
-#ifdef __GNUCC__
+#ifdef __GNUC__
 #define PA_GCC_PURE __attribute__ ((pure))
 #else
 /** This function's return value depends only the arguments list and global state **/
@@ -69,7 +69,7 @@
 #endif
 
 #ifndef PA_GCC_CONST
-#ifdef __GNUCC__
+#ifdef __GNUC__
 #define PA_GCC_CONST __attribute__ ((const))
 #else
 /** This function's return value depends only the arguments list (stricter version of PA_GCC_PURE) **/
 #endif
 #endif
 
+#ifndef PA_LIKELY
+#ifdef __GNUC__
+#define PA_LIKELY(x) __builtin_expect((x),1)
+#define PA_UNLIKELY(x) __builtin_expect((x),0)
+#else
+#define PA_LIKELY(x) (x)
+#define PA_UNLIKELY(x) (x)
+#endif
+#endif
+
 #endif