X-Git-Url: http://git.liburcu.org/?p=urcu.git;a=blobdiff_plain;f=urcu-map.h;h=b55e304afe60af9933992b3e6be11a3ba96ac7c2;hp=eccaac2b17b620ac2d2c43b2c5e801c01e7e961e;hb=0376e7b2f8d26778ebc4750b34e718c062c92764;hpb=ef84facf4b0c23bd695ca9300055e3ffc9b56006 diff --git a/urcu-map.h b/urcu-map.h index eccaac2..b55e304 100644 --- a/urcu-map.h +++ b/urcu-map.h @@ -34,6 +34,10 @@ /* Mapping macros to allow multiple flavors in a single binary. */ +#if !defined(RCU_MEMBARRIER) && !defined(RCU_SIGNAL) && !defined(RCU_MB) +#define RCU_MB +#endif + #ifdef RCU_MEMBARRIER #define rcu_read_lock rcu_read_lock_memb @@ -60,6 +64,12 @@ #define free_all_cpu_call_rcu_data free_all_cpu_call_rcu_data_memb #define call_rcu call_rcu_memb +#define defer_rcu defer_rcu_memb +#define rcu_defer_register_thread rcu_defer_register_thread_memb +#define rcu_defer_unregister_thread rcu_defer_unregister_thread_memb +#define rcu_defer_barrier rcu_defer_barrier_memb +#define rcu_defer_barrier_thread rcu_defer_barrier_thread_memb + #elif defined(RCU_SIGNAL) #define rcu_read_lock rcu_read_lock_sig @@ -86,6 +96,12 @@ #define free_all_cpu_call_rcu_data free_all_cpu_call_rcu_data_sig #define call_rcu call_rcu_sig +#define defer_rcu defer_rcu_sig +#define rcu_defer_register_thread rcu_defer_register_thread_sig +#define rcu_defer_unregister_thread rcu_defer_unregister_thread_sig +#define rcu_defer_barrier rcu_defer_barrier_sig +#define rcu_defer_barrier_thread rcu_defer_barrier_thread_sig + #elif defined(RCU_MB) #define rcu_read_lock rcu_read_lock_mb @@ -112,6 +128,16 @@ #define free_all_cpu_call_rcu_data free_all_cpu_call_rcu_data_mb #define call_rcu call_rcu_mb +#define defer_rcu defer_rcu_mb +#define rcu_defer_register_thread rcu_defer_register_thread_mb +#define rcu_defer_unregister_thread rcu_defer_unregister_thread_mb +#define rcu_defer_barrier rcu_defer_barrier_mb +#define rcu_defer_barrier_thread rcu_defer_barrier_thread_mb + +#else + +#error "Undefined selection" + #endif #endif /* _URCU_MAP_H */