Refactor liburcu to support many flavors per compile unit
[urcu.git] / include / urcu / map / urcu-memb.h
1 /*
2 * urcu/map/urcu-memb.h
3 *
4 * Userspace RCU header -- name mapping to allow multiple flavors to be
5 * used in the same executable.
6 *
7 * Copyright (c) 2009 Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
8 * Copyright (c) 2009 Paul E. McKenney, IBM Corporation.
9 *
10 * LGPL-compatible code should include this header with :
11 *
12 * #define _LGPL_SOURCE
13 * #include <urcu.h>
14 *
15 * This library is free software; you can redistribute it and/or
16 * modify it under the terms of the GNU Lesser General Public
17 * License as published by the Free Software Foundation; either
18 * version 2.1 of the License, or (at your option) any later version.
19 *
20 * This library is distributed in the hope that it will be useful,
21 * but WITHOUT ANY WARRANTY; without even the implied warranty of
22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
23 * Lesser General Public License for more details.
24 *
25 * You should have received a copy of the GNU Lesser General Public
26 * License along with this library; if not, write to the Free Software
27 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
28 *
29 * IBM's contributions to this file may be relicensed under LGPLv2 or later.
30 */
31
32 #define rcu_read_lock urcu_memb_read_lock
33 #define _rcu_read_lock _urcu_memb_read_lock
34 #define rcu_read_unlock urcu_memb_read_unlock
35 #define _rcu_read_unlock _urcu_memb_read_unlock
36 #define rcu_read_ongoing urcu_memb_read_ongoing
37 #define _rcu_read_ongoing _urcu_memb_read_ongoing
38 #define rcu_quiescent_state urcu_memb_quiescent_state
39 #define _rcu_quiescent_state _urcu_memb_quiescent_state
40 #define rcu_thread_offline urcu_memb_thread_offline
41 #define rcu_thread_online urcu_memb_thread_online
42 #define rcu_register_thread urcu_memb_register_thread
43 #define rcu_unregister_thread urcu_memb_unregister_thread
44 #define rcu_init urcu_memb_init
45 #define rcu_exit urcu_memb_exit
46 #define synchronize_rcu urcu_memb_synchronize_rcu
47 #define rcu_reader urcu_memb_reader
48 #define rcu_gp urcu_memb_gp
49
50 #define get_cpu_call_rcu_data urcu_memb_get_cpu_call_rcu_data
51 #define get_call_rcu_thread urcu_memb_get_call_rcu_thread
52 #define create_call_rcu_data urcu_memb_create_call_rcu_data
53 #define set_cpu_call_rcu_data urcu_memb_set_cpu_call_rcu_data
54 #define get_default_call_rcu_data urcu_memb_get_default_call_rcu_data
55 #define get_call_rcu_data urcu_memb_get_call_rcu_data
56 #define get_thread_call_rcu_data urcu_memb_get_thread_call_rcu_data
57 #define set_thread_call_rcu_data urcu_memb_set_thread_call_rcu_data
58 #define create_all_cpu_call_rcu_data urcu_memb_create_all_cpu_call_rcu_data
59 #define free_all_cpu_call_rcu_data urcu_memb_free_all_cpu_call_rcu_data
60 #define call_rcu urcu_memb_call_rcu
61 #define call_rcu_data_free urcu_memb_call_rcu_data_free
62 #define call_rcu_before_fork urcu_memb_call_rcu_before_fork
63 #define call_rcu_after_fork_parent urcu_memb_call_rcu_after_fork_parent
64 #define call_rcu_after_fork_child urcu_memb_call_rcu_after_fork_child
65 #define rcu_barrier urcu_memb_barrier
66
67 #define defer_rcu urcu_memb_defer_rcu
68 #define rcu_defer_register_thread urcu_memb_defer_register_thread
69 #define rcu_defer_unregister_thread urcu_memb_defer_unregister_thread
70 #define rcu_defer_barrier urcu_memb_defer_barrier
71 #define rcu_defer_barrier_thread urcu_memb_defer_barrier_thread
72 #define rcu_defer_exit urcu_memb_defer_exit
73
74 #define rcu_flavor urcu_memb_flavor
75
76 #define urcu_register_rculfhash_atfork \
77 urcu_memb_register_rculfhash_atfork
78 #define urcu_unregister_rculfhash_atfork \
79 urcu_memb_unregister_rculfhash_atfork
80
81
82 /* Aliases for ABI(6) compat */
83
84 #define alias_rcu_flavor rcu_flavor_memb
85
86 /* src/urcu.c */
87 #define alias_rcu_read_lock rcu_read_lock_memb
88 #define alias_rcu_read_unlock rcu_read_unlock_memb
89 #define alias_rcu_read_ongoing rcu_read_ongoing_memb
90 #define alias_rcu_register_thread rcu_register_thread_memb
91 #define alias_rcu_unregister_thread rcu_unregister_thread_memb
92 #define alias_rcu_init rcu_init_memb
93 #define alias_synchronize_rcu synchronize_rcu_memb
94 #define alias_rcu_reader rcu_reader_memb
95 #define alias_rcu_gp rcu_gp_memb
96
97 /* src/urcu-call-rcu-impl.h */
98 #define alias_get_cpu_call_rcu_data get_cpu_call_rcu_data_memb
99 #define alias_get_call_rcu_thread get_call_rcu_thread_memb
100 #define alias_create_call_rcu_data create_call_rcu_data_memb
101 #define alias_set_cpu_call_rcu_data set_cpu_call_rcu_data_memb
102 #define alias_get_default_call_rcu_data get_default_call_rcu_data_memb
103 #define alias_get_call_rcu_data get_call_rcu_data_memb
104 #define alias_get_thread_call_rcu_data get_thread_call_rcu_data_memb
105 #define alias_set_thread_call_rcu_data set_thread_call_rcu_data_memb
106 #define alias_create_all_cpu_call_rcu_data \
107 create_all_cpu_call_rcu_data_memb
108 #define alias_free_all_cpu_call_rcu_data \
109 free_all_cpu_call_rcu_data_memb
110 #define alias_call_rcu call_rcu_memb
111 #define alias_call_rcu_data_free call_rcu_data_free_memb
112 #define alias_call_rcu_before_fork call_rcu_before_fork_memb
113 #define alias_call_rcu_after_fork_parent \
114 call_rcu_after_fork_parent_memb
115 #define alias_call_rcu_after_fork_child call_rcu_after_fork_child_memb
116 #define alias_rcu_barrier rcu_barrier_memb
117
118 #define alias_urcu_register_rculfhash_atfork \
119 urcu_register_rculfhash_atfork_memb
120 #define alias_urcu_unregister_rculfhash_atfork \
121 urcu_unregister_rculfhash_atfork_memb
122
123 /* src/urcu-defer-impl.h */
124 #define alias_defer_rcu defer_rcu_memb
125 #define alias_rcu_defer_register_thread rcu_defer_register_thread_memb
126 #define alias_rcu_defer_unregister_thread \
127 rcu_defer_unregister_thread_memb
128 #define alias_rcu_defer_barrier rcu_defer_barrier_memb
129 #define alias_rcu_defer_barrier_thread rcu_defer_barrier_thread_memb
130 #define alias_rcu_defer_exit rcu_defer_exit_memb
This page took 0.030924 seconds and 4 git commands to generate.