centralize definition of BITS_PER_LONG
[urcu.git] / urcu / compiler.h
index 4dd89ea212285e664e2cd3c35e796a9af1d73d1e..5b7bb305b2de83b1828171f506d7241d3c692d03 100644 (file)
@@ -23,7 +23,7 @@
 #define likely(x)      __builtin_expect(!!(x), 1)
 #define unlikely(x)    __builtin_expect(!!(x), 0)
 
-#define        barrier()       asm volatile("" : : : "memory");
+#define        barrier()       asm volatile("" : : : "memory")
 
 /*
  * Instruct the compiler to perform only a single access to a variable
  */
 #define ACCESS_ONCE(x) (*(volatile typeof(x) *)&x)
 
+#ifndef max
+#define max(a,b) ((a)>(b)?(a):(b))
+#endif
+
+#ifndef min
+#define min(a,b) ((a)<(b)?(a):(b))
+#endif
+
+#if defined(__SIZEOF_LONG__)
+#define BITS_PER_LONG  (__SIZEOF_LONG__ * 8)
+#elif defined(_LP64)
+#define BITS_PER_LONG  64
+#else
+#define BITS_PER_LONG  32
+#endif
+
 #endif /* _URCU_COMPILER_H */
This page took 0.022242 seconds and 4 git commands to generate.