uatomic compat: complete i386 support
[urcu.git] / urcu / arch_x86.h
index 66b27d5574df9d0b90820e0020282ec79616167f..f137a16d841c48e3c663a645286137ffe2114a04 100644 (file)
  */
 
 #include <urcu/compiler.h>
+#include <urcu/config.h>
 
-/* Assume P4 or newer */
-#define CONFIG_HAVE_FENCE 1
 #define CONFIG_HAVE_MEM_COHERENCY
 
 #define CACHE_LINE_SIZE        128
 
-#ifndef BITS_PER_LONG
-#define BITS_PER_LONG  (__SIZEOF_LONG__ * 8)
-#endif
-
-#ifdef CONFIG_HAVE_FENCE
+#ifdef CONFIG_URCU_HAVE_FENCE
 #define mb()    asm volatile("mfence":::"memory")
 #define rmb()   asm volatile("lfence":::"memory")
 #define wmb()   asm volatile("sfence"::: "memory")
 #define rmc()  barrier()
 #define wmc()  barrier()
 
-/* Assume SMP machine, given we don't have this information */
-#define CONFIG_SMP 1
-
-#ifdef CONFIG_SMP
+#ifdef CONFIG_URCU_SMP
 #define smp_mb()       mb()
 #define smp_rmb()      rmb()
 #define smp_wmb()      wmb()
This page took 0.031598 seconds and 4 git commands to generate.