3 #ifndef CDSUNIT_MAP_DEFS_H
4 #define CDSUNIT_MAP_DEFS_H
6 #define CDSUNIT_DECLARE_StdMap \
7 CDSUNIT_DECLARE_TEST(StdMap_Spin) \
8 CDSUNIT_DECLARE_TEST(StdHashMap_Spin)
9 #define CDSUNIT_DEFINE_StdMap(IMPL, C) \
10 TEST_MAP(IMPL, C, StdMap_Spin) \
11 TEST_MAP(IMPL, C, StdHashMap_Spin)
12 #define CDSUNIT_TEST_StdMap \
13 CPPUNIT_TEST(StdMap_Spin) \
14 CPPUNIT_TEST(StdHashMap_Spin) \
16 #ifdef CDS_URCU_SIGNAL_HANDLING_ENABLED
17 # define CDSUNIT_DECLARE_MichaelMap_RCU_signal \
18 CDSUNIT_DECLARE_TEST(MichaelMap_RCU_SHB_cmp_stdAlloc) \
19 CDSUNIT_DECLARE_TEST(MichaelMap_RCU_SHB_less_michaelAlloc) \
20 CDSUNIT_DECLARE_TEST(MichaelMap_RCU_SHT_cmp_stdAlloc) \
21 CDSUNIT_DECLARE_TEST(MichaelMap_RCU_SHT_less_michaelAlloc) \
22 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_RCU_SHB_cmp_stdAlloc) \
23 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_RCU_SHB_less_michaelAlloc) \
24 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_RCU_SHT_cmp_stdAlloc) \
25 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_RCU_SHT_less_michaelAlloc)
27 # define CDSUNIT_DEFINE_MichaelMap_RCU_signal(IMPL, C) \
28 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_RCU_SHB_cmp_stdAlloc) \
29 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_RCU_SHB_less_michaelAlloc) \
30 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_RCU_SHT_cmp_stdAlloc) \
31 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_RCU_SHT_less_michaelAlloc) \
32 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_Lazy_RCU_SHB_cmp_stdAlloc) \
33 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_Lazy_RCU_SHB_less_michaelAlloc) \
34 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_Lazy_RCU_SHT_cmp_stdAlloc) \
35 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_Lazy_RCU_SHT_less_michaelAlloc)
37 # define CDSUNIT_TEST_MichaelMap_RCU_signal \
38 CPPUNIT_TEST(MichaelMap_RCU_SHB_cmp_stdAlloc) \
39 CPPUNIT_TEST(MichaelMap_RCU_SHB_less_michaelAlloc) \
40 CPPUNIT_TEST(MichaelMap_RCU_SHT_cmp_stdAlloc) \
41 CPPUNIT_TEST(MichaelMap_RCU_SHT_less_michaelAlloc) \
42 CPPUNIT_TEST(MichaelMap_Lazy_RCU_SHB_cmp_stdAlloc) \
43 CPPUNIT_TEST(MichaelMap_Lazy_RCU_SHB_less_michaelAlloc) \
44 CPPUNIT_TEST(MichaelMap_Lazy_RCU_SHT_cmp_stdAlloc) \
45 CPPUNIT_TEST(MichaelMap_Lazy_RCU_SHT_less_michaelAlloc)
48 # define CDSUNIT_DECLARE_MichaelMap_RCU_signal
49 # define CDSUNIT_DEFINE_MichaelMap_RCU_signal(IMPL, C)
50 # define CDSUNIT_TEST_MichaelMap_RCU_signal
54 #define CDSUNIT_DECLARE_MichaelMap \
55 CDSUNIT_DECLARE_TEST(MichaelMap_HP_cmp_stdAlloc) \
56 CDSUNIT_DECLARE_TEST(MichaelMap_HP_less_michaelAlloc) \
57 CDSUNIT_DECLARE_TEST(MichaelMap_DHP_cmp_stdAlloc) \
58 CDSUNIT_DECLARE_TEST(MichaelMap_DHP_less_michaelAlloc) \
59 CDSUNIT_DECLARE_TEST(MichaelMap_RCU_GPI_cmp_stdAlloc) \
60 CDSUNIT_DECLARE_TEST(MichaelMap_RCU_GPI_less_michaelAlloc) \
61 CDSUNIT_DECLARE_TEST(MichaelMap_RCU_GPB_cmp_stdAlloc) \
62 CDSUNIT_DECLARE_TEST(MichaelMap_RCU_GPB_less_michaelAlloc) \
63 CDSUNIT_DECLARE_TEST(MichaelMap_RCU_GPT_cmp_stdAlloc) \
64 CDSUNIT_DECLARE_TEST(MichaelMap_RCU_GPT_less_michaelAlloc) \
65 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_HP_cmp_stdAlloc) \
66 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_HP_less_michaelAlloc) \
67 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_DHP_cmp_stdAlloc) \
68 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_DHP_less_michaelAlloc) \
69 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_RCU_GPI_cmp_stdAlloc) \
70 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_RCU_GPI_less_michaelAlloc) \
71 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_RCU_GPB_cmp_stdAlloc) \
72 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_RCU_GPB_less_michaelAlloc) \
73 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_RCU_GPT_cmp_stdAlloc) \
74 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_RCU_GPT_less_michaelAlloc)\
75 CDSUNIT_DECLARE_MichaelMap_RCU_signal
77 #define CDSUNIT_DEFINE_MichaelMap( IMPL, C ) \
78 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_HP_cmp_stdAlloc) \
79 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_HP_less_michaelAlloc) \
80 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_DHP_cmp_stdAlloc) \
81 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_DHP_less_michaelAlloc) \
82 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_RCU_GPI_cmp_stdAlloc) \
83 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_RCU_GPI_less_michaelAlloc) \
84 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_RCU_GPB_cmp_stdAlloc) \
85 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_RCU_GPB_less_michaelAlloc) \
86 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_RCU_GPT_cmp_stdAlloc) \
87 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_RCU_GPT_less_michaelAlloc) \
88 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_Lazy_HP_cmp_stdAlloc) \
89 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_Lazy_HP_less_michaelAlloc) \
90 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_Lazy_DHP_cmp_stdAlloc) \
91 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_Lazy_DHP_less_michaelAlloc) \
92 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_Lazy_RCU_GPI_cmp_stdAlloc) \
93 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_Lazy_RCU_GPI_less_michaelAlloc) \
94 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_Lazy_RCU_GPB_cmp_stdAlloc) \
95 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_Lazy_RCU_GPB_less_michaelAlloc) \
96 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_Lazy_RCU_GPT_cmp_stdAlloc) \
97 TEST_MAP_EXTRACT(IMPL, C, MichaelMap_Lazy_RCU_GPT_less_michaelAlloc)\
98 CDSUNIT_DEFINE_MichaelMap_RCU_signal( IMPL, C )
100 #define CDSUNIT_TEST_MichaelMap \
101 CPPUNIT_TEST(MichaelMap_HP_cmp_stdAlloc) \
102 CPPUNIT_TEST(MichaelMap_HP_less_michaelAlloc) \
103 CPPUNIT_TEST(MichaelMap_DHP_cmp_stdAlloc) \
104 CPPUNIT_TEST(MichaelMap_DHP_less_michaelAlloc) \
105 CPPUNIT_TEST(MichaelMap_RCU_GPI_cmp_stdAlloc) \
106 CPPUNIT_TEST(MichaelMap_RCU_GPI_less_michaelAlloc) \
107 CPPUNIT_TEST(MichaelMap_RCU_GPB_cmp_stdAlloc) \
108 CPPUNIT_TEST(MichaelMap_RCU_GPB_less_michaelAlloc) \
109 CPPUNIT_TEST(MichaelMap_RCU_GPT_cmp_stdAlloc) \
110 CPPUNIT_TEST(MichaelMap_RCU_GPT_less_michaelAlloc) \
111 CPPUNIT_TEST(MichaelMap_Lazy_HP_cmp_stdAlloc) \
112 CPPUNIT_TEST(MichaelMap_Lazy_HP_less_michaelAlloc) \
113 CPPUNIT_TEST(MichaelMap_Lazy_DHP_cmp_stdAlloc) \
114 CPPUNIT_TEST(MichaelMap_Lazy_DHP_less_michaelAlloc) \
115 CPPUNIT_TEST(MichaelMap_Lazy_RCU_GPI_cmp_stdAlloc) \
116 CPPUNIT_TEST(MichaelMap_Lazy_RCU_GPI_less_michaelAlloc) \
117 CPPUNIT_TEST(MichaelMap_Lazy_RCU_GPB_cmp_stdAlloc) \
118 CPPUNIT_TEST(MichaelMap_Lazy_RCU_GPB_less_michaelAlloc) \
119 CPPUNIT_TEST(MichaelMap_Lazy_RCU_GPT_cmp_stdAlloc) \
120 CPPUNIT_TEST(MichaelMap_Lazy_RCU_GPT_less_michaelAlloc)\
121 CDSUNIT_TEST_MichaelMap_RCU_signal
123 #define CDSUNIT_DECLARE_MichaelMap_nogc \
124 CDSUNIT_DECLARE_TEST(MichaelMap_NOGC_cmp_stdAlloc) \
125 CDSUNIT_DECLARE_TEST(MichaelMap_NOGC_less_michaelAlloc) \
126 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_NOGC_cmp_stdAlloc) \
127 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_NOGC_unord_stdAlloc) \
128 CDSUNIT_DECLARE_TEST(MichaelMap_Lazy_NOGC_less_michaelAlloc)
130 #define CDSUNIT_DEFINE_MichaelMap_nogc( IMPL, C ) \
131 TEST_MAP(IMPL, C, MichaelMap_NOGC_cmp_stdAlloc) \
132 TEST_MAP(IMPL, C, MichaelMap_NOGC_less_michaelAlloc) \
133 TEST_MAP(IMPL, C, MichaelMap_Lazy_NOGC_cmp_stdAlloc) \
134 TEST_MAP(IMPL, C, MichaelMap_Lazy_NOGC_unord_stdAlloc) \
135 TEST_MAP(IMPL, C, MichaelMap_Lazy_NOGC_less_michaelAlloc)
137 #define CDSUNIT_TEST_MichaelMap_nogc \
138 CPPUNIT_TEST(MichaelMap_NOGC_cmp_stdAlloc) \
139 CPPUNIT_TEST(MichaelMap_NOGC_less_michaelAlloc) \
140 CPPUNIT_TEST(MichaelMap_Lazy_NOGC_cmp_stdAlloc) \
141 CPPUNIT_TEST(MichaelMap_Lazy_NOGC_unord_stdAlloc) \
142 CPPUNIT_TEST(MichaelMap_Lazy_NOGC_less_michaelAlloc) \
144 #ifdef CDS_URCU_SIGNAL_HANDLING_ENABLED
145 # define CDSUNIT_DECLARE_SplitList_RCU_signal \
146 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_SHB_dyn_cmp)\
147 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_SHB_dyn_cmp_stat)\
148 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_SHB_st_cmp)\
149 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_SHB_dyn_less)\
150 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_SHB_st_less)\
151 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_SHB_st_less_stat)\
152 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_SHT_dyn_cmp)\
153 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_SHT_dyn_cmp_stat)\
154 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_SHT_st_cmp)\
155 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_SHT_dyn_less)\
156 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_SHT_st_less)\
157 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_SHT_st_less_stat)\
158 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_SHB_dyn_cmp)\
159 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_SHB_dyn_cmp_stat)\
160 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_SHB_st_cmp)\
161 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_SHB_dyn_less)\
162 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_SHB_st_less)\
163 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_SHB_st_less_stat)\
164 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_SHT_dyn_cmp)\
165 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_SHT_dyn_cmp_stat)\
166 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_SHT_st_cmp)\
167 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_SHT_dyn_less)\
168 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_SHT_st_less)\
169 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_SHT_st_less_stat)
171 # define CDSUNIT_DEFINE_SplitList_RCU_signal( IMPL, C ) \
172 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_SHB_dyn_cmp)\
173 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_SHB_dyn_cmp_stat)\
174 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_SHB_st_cmp)\
175 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_SHB_dyn_less)\
176 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_SHB_st_less)\
177 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_SHB_st_less_stat)\
178 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_SHT_dyn_cmp)\
179 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_SHT_dyn_cmp_stat)\
180 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_SHT_st_cmp)\
181 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_SHT_dyn_less)\
182 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_SHT_st_less)\
183 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_SHT_st_less_stat)\
184 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_SHB_dyn_cmp)\
185 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_SHB_dyn_cmp_stat)\
186 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_SHB_st_cmp)\
187 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_SHB_dyn_less)\
188 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_SHB_st_less)\
189 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_SHB_st_less_stat)\
190 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_SHT_dyn_cmp)\
191 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_SHT_dyn_cmp_stat)\
192 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_SHT_st_cmp)\
193 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_SHT_dyn_less)\
194 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_SHT_st_less)\
195 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_SHT_st_less_stat)
197 # define CDSUNIT_TEST_SplitList_RCU_signal \
198 CPPUNIT_TEST(SplitList_Michael_RCU_SHB_dyn_cmp)\
199 CPPUNIT_TEST(SplitList_Michael_RCU_SHB_dyn_cmp_stat)\
200 CPPUNIT_TEST(SplitList_Michael_RCU_SHB_st_cmp)\
201 CPPUNIT_TEST(SplitList_Michael_RCU_SHB_dyn_less)\
202 CPPUNIT_TEST(SplitList_Michael_RCU_SHB_st_less)\
203 CPPUNIT_TEST(SplitList_Michael_RCU_SHB_st_less_stat)\
204 CPPUNIT_TEST(SplitList_Michael_RCU_SHT_dyn_cmp)\
205 CPPUNIT_TEST(SplitList_Michael_RCU_SHT_dyn_cmp_stat)\
206 CPPUNIT_TEST(SplitList_Michael_RCU_SHT_st_cmp)\
207 CPPUNIT_TEST(SplitList_Michael_RCU_SHT_dyn_less)\
208 CPPUNIT_TEST(SplitList_Michael_RCU_SHT_st_less)\
209 CPPUNIT_TEST(SplitList_Michael_RCU_SHT_st_less_stat)\
210 CPPUNIT_TEST(SplitList_Lazy_RCU_SHB_dyn_cmp)\
211 CPPUNIT_TEST(SplitList_Lazy_RCU_SHB_dyn_cmp_stat)\
212 CPPUNIT_TEST(SplitList_Lazy_RCU_SHB_st_cmp)\
213 CPPUNIT_TEST(SplitList_Lazy_RCU_SHB_dyn_less)\
214 CPPUNIT_TEST(SplitList_Lazy_RCU_SHB_st_less)\
215 CPPUNIT_TEST(SplitList_Lazy_RCU_SHB_st_less_stat)\
216 CPPUNIT_TEST(SplitList_Lazy_RCU_SHT_dyn_cmp)\
217 CPPUNIT_TEST(SplitList_Lazy_RCU_SHT_dyn_cmp_stat)\
218 CPPUNIT_TEST(SplitList_Lazy_RCU_SHT_st_cmp)\
219 CPPUNIT_TEST(SplitList_Lazy_RCU_SHT_dyn_less)\
220 CPPUNIT_TEST(SplitList_Lazy_RCU_SHT_st_less)\
221 CPPUNIT_TEST(SplitList_Lazy_RCU_SHT_st_less_stat)
224 # define CDSUNIT_DECLARE_SplitList_RCU_signal
225 # define CDSUNIT_DEFINE_SplitList_RCU_signal( IMPL, C )
226 # define CDSUNIT_TEST_SplitList_RCU_signal
229 #define CDSUNIT_DECLARE_SplitList \
230 CDSUNIT_DECLARE_TEST(SplitList_Michael_HP_dyn_cmp)\
231 CDSUNIT_DECLARE_TEST(SplitList_Michael_HP_dyn_cmp_stat)\
232 CDSUNIT_DECLARE_TEST(SplitList_Michael_HP_st_cmp)\
233 CDSUNIT_DECLARE_TEST(SplitList_Michael_HP_dyn_less)\
234 CDSUNIT_DECLARE_TEST(SplitList_Michael_HP_st_less)\
235 CDSUNIT_DECLARE_TEST(SplitList_Michael_HP_st_less_stat)\
236 CDSUNIT_DECLARE_TEST(SplitList_Michael_DHP_dyn_cmp)\
237 CDSUNIT_DECLARE_TEST(SplitList_Michael_DHP_dyn_cmp_stat)\
238 CDSUNIT_DECLARE_TEST(SplitList_Michael_DHP_st_cmp)\
239 CDSUNIT_DECLARE_TEST(SplitList_Michael_DHP_dyn_less)\
240 CDSUNIT_DECLARE_TEST(SplitList_Michael_DHP_st_less)\
241 CDSUNIT_DECLARE_TEST(SplitList_Michael_DHP_st_less_stat)\
242 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPI_dyn_cmp)\
243 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPI_dyn_cmp_stat)\
244 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPI_st_cmp)\
245 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPI_dyn_less)\
246 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPI_st_less)\
247 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPI_st_less_stat)\
248 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPB_dyn_cmp)\
249 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPB_dyn_cmp_stat)\
250 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPB_st_cmp)\
251 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPB_dyn_less)\
252 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPB_st_less)\
253 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPB_st_less_stat)\
254 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPT_dyn_cmp)\
255 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPT_dyn_cmp_stat)\
256 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPT_st_cmp)\
257 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPT_dyn_less)\
258 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPT_st_less)\
259 CDSUNIT_DECLARE_TEST(SplitList_Michael_RCU_GPT_st_less_stat)\
260 CDSUNIT_DECLARE_TEST(SplitList_Lazy_HP_dyn_cmp)\
261 CDSUNIT_DECLARE_TEST(SplitList_Lazy_HP_dyn_cmp_stat)\
262 CDSUNIT_DECLARE_TEST(SplitList_Lazy_HP_st_cmp)\
263 CDSUNIT_DECLARE_TEST(SplitList_Lazy_HP_dyn_less)\
264 CDSUNIT_DECLARE_TEST(SplitList_Lazy_HP_st_less)\
265 CDSUNIT_DECLARE_TEST(SplitList_Lazy_HP_st_less_stat)\
266 CDSUNIT_DECLARE_TEST(SplitList_Lazy_DHP_dyn_cmp)\
267 CDSUNIT_DECLARE_TEST(SplitList_Lazy_DHP_dyn_cmp_stat)\
268 CDSUNIT_DECLARE_TEST(SplitList_Lazy_DHP_st_cmp)\
269 CDSUNIT_DECLARE_TEST(SplitList_Lazy_DHP_dyn_less)\
270 CDSUNIT_DECLARE_TEST(SplitList_Lazy_DHP_st_less)\
271 CDSUNIT_DECLARE_TEST(SplitList_Lazy_DHP_st_less_stat)\
272 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPI_dyn_cmp)\
273 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPI_dyn_cmp_stat)\
274 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPI_st_cmp)\
275 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPI_dyn_less)\
276 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPI_st_less)\
277 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPI_st_less_stat)\
278 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPB_dyn_cmp)\
279 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPB_dyn_cmp_stat)\
280 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPB_st_cmp)\
281 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPB_dyn_less)\
282 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPB_st_less)\
283 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPB_st_less_stat)\
284 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPT_dyn_cmp)\
285 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPT_dyn_cmp_stat)\
286 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPT_st_cmp)\
287 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPT_dyn_less)\
288 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPT_st_less)\
289 CDSUNIT_DECLARE_TEST(SplitList_Lazy_RCU_GPT_st_less_stat)\
290 CDSUNIT_DECLARE_SplitList_RCU_signal
292 #define CDSUNIT_DEFINE_SplitList( IMPL, C ) \
293 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_HP_dyn_cmp)\
294 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_HP_dyn_cmp_stat)\
295 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_HP_st_cmp)\
296 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_HP_dyn_less)\
297 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_HP_st_less)\
298 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_HP_st_less_stat)\
299 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_DHP_dyn_cmp)\
300 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_DHP_dyn_cmp_stat)\
301 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_DHP_st_cmp)\
302 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_DHP_dyn_less)\
303 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_DHP_st_less)\
304 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_DHP_st_less_stat)\
305 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPI_dyn_cmp)\
306 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPI_dyn_cmp_stat)\
307 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPI_st_cmp)\
308 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPI_dyn_less)\
309 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPI_st_less)\
310 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPI_st_less_stat)\
311 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPB_dyn_cmp)\
312 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPB_dyn_cmp_stat)\
313 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPB_st_cmp)\
314 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPB_dyn_less)\
315 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPB_st_less)\
316 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPB_st_less_stat)\
317 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPT_dyn_cmp)\
318 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPT_dyn_cmp_stat)\
319 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPT_st_cmp)\
320 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPT_dyn_less)\
321 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPT_st_less)\
322 TEST_MAP_EXTRACT(IMPL, C, SplitList_Michael_RCU_GPT_st_less_stat)\
323 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_HP_dyn_cmp)\
324 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_HP_dyn_cmp_stat)\
325 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_HP_st_cmp)\
326 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_HP_dyn_less)\
327 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_HP_st_less)\
328 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_HP_st_less_stat)\
329 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_DHP_dyn_cmp)\
330 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_DHP_dyn_cmp_stat)\
331 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_DHP_st_cmp)\
332 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_DHP_dyn_less)\
333 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_DHP_st_less)\
334 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_DHP_st_less_stat)\
335 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPI_dyn_cmp)\
336 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPI_dyn_cmp_stat)\
337 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPI_st_cmp)\
338 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPI_dyn_less)\
339 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPI_st_less)\
340 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPI_st_less_stat)\
341 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPB_dyn_cmp)\
342 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPB_dyn_cmp_stat)\
343 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPB_st_cmp)\
344 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPB_dyn_less)\
345 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPB_st_less)\
346 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPB_st_less_stat)\
347 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPT_dyn_cmp)\
348 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPT_dyn_cmp_stat)\
349 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPT_st_cmp)\
350 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPT_dyn_less)\
351 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPT_st_less)\
352 TEST_MAP_EXTRACT(IMPL, C, SplitList_Lazy_RCU_GPT_st_less_stat)\
353 CDSUNIT_DEFINE_SplitList_RCU_signal( IMPL, C )
355 #define CDSUNIT_TEST_SplitList \
356 CPPUNIT_TEST(SplitList_Michael_HP_dyn_cmp)\
357 CPPUNIT_TEST(SplitList_Michael_HP_dyn_cmp_stat)\
358 CPPUNIT_TEST(SplitList_Michael_HP_st_cmp)\
359 CPPUNIT_TEST(SplitList_Michael_HP_dyn_less)\
360 CPPUNIT_TEST(SplitList_Michael_HP_st_less)\
361 CPPUNIT_TEST(SplitList_Michael_HP_st_less_stat)\
362 CPPUNIT_TEST(SplitList_Michael_DHP_dyn_cmp)\
363 CPPUNIT_TEST(SplitList_Michael_DHP_dyn_cmp_stat)\
364 CPPUNIT_TEST(SplitList_Michael_DHP_st_cmp)\
365 CPPUNIT_TEST(SplitList_Michael_DHP_dyn_less)\
366 CPPUNIT_TEST(SplitList_Michael_DHP_st_less)\
367 CPPUNIT_TEST(SplitList_Michael_DHP_st_less_stat)\
368 CPPUNIT_TEST(SplitList_Michael_RCU_GPI_dyn_cmp)\
369 CPPUNIT_TEST(SplitList_Michael_RCU_GPI_dyn_cmp_stat)\
370 CPPUNIT_TEST(SplitList_Michael_RCU_GPI_st_cmp)\
371 CPPUNIT_TEST(SplitList_Michael_RCU_GPI_dyn_less)\
372 CPPUNIT_TEST(SplitList_Michael_RCU_GPI_st_less)\
373 CPPUNIT_TEST(SplitList_Michael_RCU_GPI_st_less_stat)\
374 CPPUNIT_TEST(SplitList_Michael_RCU_GPB_dyn_cmp)\
375 CPPUNIT_TEST(SplitList_Michael_RCU_GPB_dyn_cmp_stat)\
376 CPPUNIT_TEST(SplitList_Michael_RCU_GPB_st_cmp)\
377 CPPUNIT_TEST(SplitList_Michael_RCU_GPB_dyn_less)\
378 CPPUNIT_TEST(SplitList_Michael_RCU_GPB_st_less)\
379 CPPUNIT_TEST(SplitList_Michael_RCU_GPB_st_less_stat)\
380 CPPUNIT_TEST(SplitList_Michael_RCU_GPT_dyn_cmp)\
381 CPPUNIT_TEST(SplitList_Michael_RCU_GPT_dyn_cmp_stat)\
382 CPPUNIT_TEST(SplitList_Michael_RCU_GPT_st_cmp)\
383 CPPUNIT_TEST(SplitList_Michael_RCU_GPT_dyn_less)\
384 CPPUNIT_TEST(SplitList_Michael_RCU_GPT_st_less)\
385 CPPUNIT_TEST(SplitList_Michael_RCU_GPT_st_less_stat)\
386 CPPUNIT_TEST(SplitList_Lazy_HP_dyn_cmp)\
387 CPPUNIT_TEST(SplitList_Lazy_HP_dyn_cmp_stat)\
388 CPPUNIT_TEST(SplitList_Lazy_HP_st_cmp)\
389 CPPUNIT_TEST(SplitList_Lazy_HP_dyn_less)\
390 CPPUNIT_TEST(SplitList_Lazy_HP_st_less)\
391 CPPUNIT_TEST(SplitList_Lazy_HP_st_less_stat)\
392 CPPUNIT_TEST(SplitList_Lazy_DHP_dyn_cmp)\
393 CPPUNIT_TEST(SplitList_Lazy_DHP_dyn_cmp_stat)\
394 CPPUNIT_TEST(SplitList_Lazy_DHP_st_cmp)\
395 CPPUNIT_TEST(SplitList_Lazy_DHP_dyn_less)\
396 CPPUNIT_TEST(SplitList_Lazy_DHP_st_less)\
397 CPPUNIT_TEST(SplitList_Lazy_DHP_st_less_stat)\
398 CPPUNIT_TEST(SplitList_Lazy_RCU_GPI_dyn_cmp)\
399 CPPUNIT_TEST(SplitList_Lazy_RCU_GPI_dyn_cmp_stat)\
400 CPPUNIT_TEST(SplitList_Lazy_RCU_GPI_st_cmp)\
401 CPPUNIT_TEST(SplitList_Lazy_RCU_GPI_dyn_less)\
402 CPPUNIT_TEST(SplitList_Lazy_RCU_GPI_st_less)\
403 CPPUNIT_TEST(SplitList_Lazy_RCU_GPI_st_less_stat)\
404 CPPUNIT_TEST(SplitList_Lazy_RCU_GPB_dyn_cmp)\
405 CPPUNIT_TEST(SplitList_Lazy_RCU_GPB_dyn_cmp_stat)\
406 CPPUNIT_TEST(SplitList_Lazy_RCU_GPB_st_cmp)\
407 CPPUNIT_TEST(SplitList_Lazy_RCU_GPB_dyn_less)\
408 CPPUNIT_TEST(SplitList_Lazy_RCU_GPB_st_less)\
409 CPPUNIT_TEST(SplitList_Lazy_RCU_GPB_st_less_stat)\
410 CPPUNIT_TEST(SplitList_Lazy_RCU_GPT_dyn_cmp)\
411 CPPUNIT_TEST(SplitList_Lazy_RCU_GPT_dyn_cmp_stat)\
412 CPPUNIT_TEST(SplitList_Lazy_RCU_GPT_st_cmp)\
413 CPPUNIT_TEST(SplitList_Lazy_RCU_GPT_dyn_less)\
414 CPPUNIT_TEST(SplitList_Lazy_RCU_GPT_st_less)\
415 CPPUNIT_TEST(SplitList_Lazy_RCU_GPT_st_less_stat)\
416 CDSUNIT_TEST_SplitList_RCU_signal
418 #define CDSUNIT_DECLARE_SplitList_nogc \
419 CDSUNIT_DECLARE_TEST(SplitList_Michael_NOGC_dyn_cmp)\
420 CDSUNIT_DECLARE_TEST(SplitList_Michael_NOGC_st_cmp)\
421 CDSUNIT_DECLARE_TEST(SplitList_Michael_NOGC_dyn_less)\
422 CDSUNIT_DECLARE_TEST(SplitList_Michael_NOGC_st_less)\
423 CDSUNIT_DECLARE_TEST(SplitList_Lazy_NOGC_dyn_cmp)\
424 CDSUNIT_DECLARE_TEST(SplitList_Lazy_NOGC_st_cmp)\
425 CDSUNIT_DECLARE_TEST(SplitList_Lazy_NOGC_dyn_less)\
426 CDSUNIT_DECLARE_TEST(SplitList_Lazy_NOGC_st_less)
428 #define CDSUNIT_DEFINE_SplitList_nogc( IMPL, C ) \
429 TEST_MAP(IMPL, C, SplitList_Michael_NOGC_dyn_cmp)\
430 TEST_MAP(IMPL, C, SplitList_Michael_NOGC_st_cmp)\
431 TEST_MAP(IMPL, C, SplitList_Michael_NOGC_dyn_less)\
432 TEST_MAP(IMPL, C, SplitList_Michael_NOGC_st_less)\
433 TEST_MAP(IMPL, C, SplitList_Lazy_NOGC_dyn_cmp)\
434 TEST_MAP(IMPL, C, SplitList_Lazy_NOGC_st_cmp)\
435 TEST_MAP(IMPL, C, SplitList_Lazy_NOGC_dyn_less)\
436 TEST_MAP(IMPL, C, SplitList_Lazy_NOGC_st_less)
438 #define CDSUNIT_TEST_SplitList_nogc \
439 CPPUNIT_TEST(SplitList_Michael_NOGC_dyn_cmp)\
440 CPPUNIT_TEST(SplitList_Michael_NOGC_st_cmp)\
441 CPPUNIT_TEST(SplitList_Michael_NOGC_dyn_less)\
442 CPPUNIT_TEST(SplitList_Michael_NOGC_st_less)\
443 CPPUNIT_TEST(SplitList_Lazy_NOGC_dyn_cmp)\
444 CPPUNIT_TEST(SplitList_Lazy_NOGC_st_cmp)\
445 CPPUNIT_TEST(SplitList_Lazy_NOGC_dyn_less)\
446 CPPUNIT_TEST(SplitList_Lazy_NOGC_st_less)
448 #ifdef CDS_URCU_SIGNAL_HANDLING_ENABLED
449 # define CDSUNIT_DECLARE_SkipListMap_RCU_signal \
450 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_shb_less_pascal)\
451 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_shb_cmp_pascal_stat)\
452 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_shb_less_xorshift)\
453 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_shb_cmp_xorshift_stat)\
454 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_sht_less_pascal)\
455 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_sht_cmp_pascal_stat)\
456 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_sht_less_xorshift)\
457 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_sht_cmp_xorshift_stat)
459 # define CDSUNIT_DEFINE_SkipListMap_RCU_signal( IMPL, C ) \
460 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_shb_less_pascal)\
461 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_shb_cmp_pascal_stat)\
462 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_shb_less_xorshift)\
463 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_shb_cmp_xorshift_stat)\
464 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_sht_less_pascal)\
465 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_sht_cmp_pascal_stat)\
466 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_sht_less_xorshift)\
467 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_sht_cmp_xorshift_stat)
469 # define CDSUNIT_TEST_SkipListMap_RCU_signal \
470 CPPUNIT_TEST(SkipListMap_rcu_shb_less_pascal)\
471 CPPUNIT_TEST(SkipListMap_rcu_shb_cmp_pascal_stat)\
472 CPPUNIT_TEST(SkipListMap_rcu_shb_less_xorshift)\
473 CPPUNIT_TEST(SkipListMap_rcu_shb_cmp_xorshift_stat)\
474 CPPUNIT_TEST(SkipListMap_rcu_sht_less_pascal)\
475 CPPUNIT_TEST(SkipListMap_rcu_sht_cmp_pascal_stat)\
476 CPPUNIT_TEST(SkipListMap_rcu_sht_less_xorshift)\
477 CPPUNIT_TEST(SkipListMap_rcu_sht_cmp_xorshift_stat)
480 # define CDSUNIT_DECLARE_SkipListMap_RCU_signal
481 # define CDSUNIT_DEFINE_SkipListMap_RCU_signal( IMPL, C )
482 # define CDSUNIT_TEST_SkipListMap_RCU_signal
485 #define CDSUNIT_DECLARE_SkipListMap \
486 CDSUNIT_DECLARE_TEST(SkipListMap_hp_less_pascal)\
487 CDSUNIT_DECLARE_TEST(SkipListMap_hp_cmp_pascal_stat)\
488 CDSUNIT_DECLARE_TEST(SkipListMap_hp_less_xorshift)\
489 CDSUNIT_DECLARE_TEST(SkipListMap_hp_cmp_xorshift_stat)\
490 CDSUNIT_DECLARE_TEST(SkipListMap_dhp_less_pascal)\
491 CDSUNIT_DECLARE_TEST(SkipListMap_dhp_cmp_pascal_stat)\
492 CDSUNIT_DECLARE_TEST(SkipListMap_dhp_less_xorshift)\
493 CDSUNIT_DECLARE_TEST(SkipListMap_dhp_cmp_xorshift_stat)\
494 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_gpi_less_pascal)\
495 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_gpi_cmp_pascal_stat)\
496 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_gpi_less_xorshift)\
497 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_gpi_cmp_xorshift_stat)\
498 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_gpb_less_pascal)\
499 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_gpb_cmp_pascal_stat)\
500 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_gpb_less_xorshift)\
501 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_gpb_cmp_xorshift_stat)\
502 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_gpt_less_pascal)\
503 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_gpt_cmp_pascal_stat)\
504 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_gpt_less_xorshift)\
505 CDSUNIT_DECLARE_TEST(SkipListMap_rcu_gpt_cmp_xorshift_stat)\
506 CDSUNIT_DECLARE_SkipListMap_RCU_signal
508 #define CDSUNIT_DEFINE_SkipListMap( IMPL, C ) \
509 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_hp_less_pascal)\
510 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_hp_cmp_pascal_stat)\
511 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_hp_less_xorshift)\
512 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_hp_cmp_xorshift_stat)\
513 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_dhp_less_pascal)\
514 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_dhp_cmp_pascal_stat)\
515 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_dhp_less_xorshift)\
516 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_dhp_cmp_xorshift_stat)\
517 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_gpi_less_pascal)\
518 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_gpi_cmp_pascal_stat)\
519 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_gpi_less_xorshift)\
520 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_gpi_cmp_xorshift_stat)\
521 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_gpb_less_pascal)\
522 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_gpb_cmp_pascal_stat)\
523 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_gpb_less_xorshift)\
524 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_gpb_cmp_xorshift_stat)\
525 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_gpt_less_pascal)\
526 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_gpt_cmp_pascal_stat)\
527 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_gpt_less_xorshift)\
528 TEST_MAP_NOLF_EXTRACT(IMPL, C, SkipListMap_rcu_gpt_cmp_xorshift_stat)\
529 CDSUNIT_DEFINE_SkipListMap_RCU_signal( IMPL, C )
531 #define CDSUNIT_TEST_SkipListMap \
532 CPPUNIT_TEST(SkipListMap_hp_less_pascal)\
533 CPPUNIT_TEST(SkipListMap_hp_cmp_pascal_stat)\
534 CPPUNIT_TEST(SkipListMap_hp_less_xorshift)\
535 CPPUNIT_TEST(SkipListMap_hp_cmp_xorshift_stat)\
536 CPPUNIT_TEST(SkipListMap_dhp_less_pascal)\
537 CPPUNIT_TEST(SkipListMap_dhp_cmp_pascal_stat)\
538 CPPUNIT_TEST(SkipListMap_dhp_less_xorshift)\
539 CPPUNIT_TEST(SkipListMap_dhp_cmp_xorshift_stat)\
540 CPPUNIT_TEST(SkipListMap_rcu_gpi_less_pascal)\
541 CPPUNIT_TEST(SkipListMap_rcu_gpi_cmp_pascal_stat)\
542 CPPUNIT_TEST(SkipListMap_rcu_gpi_less_xorshift)\
543 CPPUNIT_TEST(SkipListMap_rcu_gpi_cmp_xorshift_stat)\
544 CPPUNIT_TEST(SkipListMap_rcu_gpb_less_pascal)\
545 CPPUNIT_TEST(SkipListMap_rcu_gpb_cmp_pascal_stat)\
546 CPPUNIT_TEST(SkipListMap_rcu_gpb_less_xorshift)\
547 CPPUNIT_TEST(SkipListMap_rcu_gpb_cmp_xorshift_stat)\
548 CPPUNIT_TEST(SkipListMap_rcu_gpt_less_pascal)\
549 CPPUNIT_TEST(SkipListMap_rcu_gpt_cmp_pascal_stat)\
550 CPPUNIT_TEST(SkipListMap_rcu_gpt_less_xorshift)\
551 CPPUNIT_TEST(SkipListMap_rcu_gpt_cmp_xorshift_stat)\
552 CDSUNIT_TEST_SkipListMap_RCU_signal
554 #define CDSUNIT_DECLARE_SkipListMap_nogc \
555 CDSUNIT_DECLARE_TEST(SkipListMap_nogc_less_pascal)\
556 CDSUNIT_DECLARE_TEST(SkipListMap_nogc_cmp_pascal_stat)\
557 CDSUNIT_DECLARE_TEST(SkipListMap_nogc_less_xorshift)\
558 CDSUNIT_DECLARE_TEST(SkipListMap_nogc_cmp_xorshift_stat)
560 #define CDSUNIT_DEFINE_SkipListMap_nogc( IMPL, C ) \
561 TEST_MAP_NOLF(IMPL, C, SkipListMap_nogc_less_pascal)\
562 TEST_MAP_NOLF(IMPL, C, SkipListMap_nogc_cmp_pascal_stat)\
563 TEST_MAP_NOLF(IMPL, C, SkipListMap_nogc_less_xorshift)\
564 TEST_MAP_NOLF(IMPL, C, SkipListMap_nogc_cmp_xorshift_stat)
566 #define CDSUNIT_TEST_SkipListMap_nogc \
567 CPPUNIT_TEST(SkipListMap_nogc_less_pascal)\
568 CPPUNIT_TEST(SkipListMap_nogc_cmp_pascal_stat)\
569 CPPUNIT_TEST(SkipListMap_nogc_less_xorshift)\
570 CPPUNIT_TEST(SkipListMap_nogc_cmp_xorshift_stat)
572 #ifdef CDS_URCU_SIGNAL_HANDLING_ENABLED
573 # define CDSUNIT_DECLARE_EllenBinTreeMap_RCU_signal \
574 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_rcu_shb)\
575 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_rcu_shb_stat)\
576 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_rcu_sht)\
577 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_rcu_sht_stat)
579 # define CDSUNIT_DEFINE_EllenBinTreeMap_RCU_signal( IMPL, C ) \
580 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_rcu_shb)\
581 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_rcu_shb_stat)\
582 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_rcu_sht)\
583 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_rcu_sht_stat)
585 # define CDSUNIT_TEST_EllenBinTreeMap_RCU_signal \
586 CPPUNIT_TEST(EllenBinTreeMap_rcu_shb)\
587 CPPUNIT_TEST(EllenBinTreeMap_rcu_shb_stat)\
588 CPPUNIT_TEST(EllenBinTreeMap_rcu_sht)\
589 CPPUNIT_TEST(EllenBinTreeMap_rcu_sht_stat)
591 # define CDSUNIT_DECLARE_EllenBinTreeMap_RCU_signal
592 # define CDSUNIT_DEFINE_EllenBinTreeMap_RCU_signal( IMPL, C )
593 # define CDSUNIT_TEST_EllenBinTreeMap_RCU_signal
596 #define CDSUNIT_DECLARE_EllenBinTreeMap \
597 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_hp)\
598 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_hp_yield)\
599 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_hp_stat)\
600 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_dhp)\
601 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_dhp_yield)\
602 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_dhp_stat)\
603 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_rcu_gpi)\
604 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_rcu_gpi_stat)\
605 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_rcu_gpb)\
606 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_rcu_gpb_yield)\
607 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_rcu_gpb_stat)\
608 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_rcu_gpt)\
609 CDSUNIT_DECLARE_TEST(EllenBinTreeMap_rcu_gpt_stat)\
610 CDSUNIT_DECLARE_EllenBinTreeMap_RCU_signal
612 #define CDSUNIT_DEFINE_EllenBinTreeMap( IMPL, C ) \
613 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_hp)\
614 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_hp_yield)\
615 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_hp_stat)\
616 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_dhp)\
617 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_dhp_yield)\
618 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_dhp_stat)\
619 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_rcu_gpi)\
620 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_rcu_gpi_stat)\
621 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_rcu_gpb)\
622 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_rcu_gpb_yield)\
623 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_rcu_gpb_stat)\
624 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_rcu_gpt)\
625 TEST_MAP_NOLF_EXTRACT(IMPL, C, EllenBinTreeMap_rcu_gpt_stat)\
626 CDSUNIT_DEFINE_EllenBinTreeMap_RCU_signal( IMPL, C )
628 #define CDSUNIT_TEST_EllenBinTreeMap \
629 CPPUNIT_TEST(EllenBinTreeMap_hp)\
630 CPPUNIT_TEST(EllenBinTreeMap_hp_yield)\
631 CPPUNIT_TEST(EllenBinTreeMap_hp_stat)\
632 CPPUNIT_TEST(EllenBinTreeMap_dhp)\
633 CPPUNIT_TEST(EllenBinTreeMap_dhp_yield)\
634 CPPUNIT_TEST(EllenBinTreeMap_dhp_stat)\
635 CPPUNIT_TEST(EllenBinTreeMap_rcu_gpi)\
636 CPPUNIT_TEST(EllenBinTreeMap_rcu_gpi_stat)\
637 CPPUNIT_TEST(EllenBinTreeMap_rcu_gpb)\
638 CPPUNIT_TEST(EllenBinTreeMap_rcu_gpb_yield)\
639 CPPUNIT_TEST(EllenBinTreeMap_rcu_gpb_stat)\
640 CPPUNIT_TEST(EllenBinTreeMap_rcu_gpt)\
641 CPPUNIT_TEST(EllenBinTreeMap_rcu_gpt_stat)\
642 CDSUNIT_TEST_EllenBinTreeMap_RCU_signal
644 #ifdef CDS_URCU_SIGNAL_HANDLING_ENABLED
645 # define CDSUNIT_DECLARE_BronsonAVLTreeMap_RCU_signal \
646 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_shb_less) \
647 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_sht_less) \
648 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_shb_cmp_stat) \
649 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_sht_cmp_stat) \
650 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_shb_less_pool_simple) \
651 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_sht_less_pool_simple) \
652 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_shb_less_pool_simple_stat) \
653 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_sht_less_pool_simple_stat) \
654 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_shb_less_pool_lazy) \
655 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_sht_less_pool_lazy) \
656 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_shb_less_pool_lazy_stat) \
657 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_sht_less_pool_lazy_stat) \
658 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_shb_less_pool_bounded) \
659 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_sht_less_pool_bounded) \
660 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_shb_less_pool_bounded_stat) \
661 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_sht_less_pool_bounded_stat) \
663 # define CDSUNIT_DEFINE_BronsonAVLTreeMap_RCU_signal(IMPL, C) \
664 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_shb_less) \
665 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_sht_less) \
666 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_shb_cmp_stat) \
667 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_sht_cmp_stat) \
668 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_shb_less_pool_simple) \
669 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_sht_less_pool_simple) \
670 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_shb_less_pool_simple_stat) \
671 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_sht_less_pool_simple_stat) \
672 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_shb_less_pool_lazy) \
673 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_sht_less_pool_lazy) \
674 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_shb_less_pool_lazy_stat) \
675 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_sht_less_pool_lazy_stat) \
676 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_shb_less_pool_bounded) \
677 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_sht_less_pool_bounded) \
678 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_shb_less_pool_bounded_stat) \
679 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_sht_less_pool_bounded_stat) \
681 # define CDSUNIT_TEST_BronsonAVLTreeMap_RCU_signal \
682 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_shb_less) \
683 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_sht_less) \
684 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_shb_cmp_stat) \
685 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_sht_cmp_stat) \
686 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_shb_less_pool_simple) \
687 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_shb_less_pool_simple_stat) \
688 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_sht_less_pool_simple) \
689 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_sht_less_pool_simple_stat) \
690 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_shb_less_pool_lazy) \
691 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_shb_less_pool_lazy_stat) \
692 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_sht_less_pool_lazy) \
693 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_sht_less_pool_lazy_stat) \
694 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_shb_less_pool_bounded) \
695 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_shb_less_pool_bounded_stat) \
696 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_sht_less_pool_bounded) \
697 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_sht_less_pool_bounded_stat) \
700 # define CDSUNIT_DECLARE_BronsonAVLTreeMap_RCU_signal
701 # define CDSUNIT_DEFINE_BronsonAVLTreeMap_RCU_signal(IMPL, C)
702 # define CDSUNIT_TEST_BronsonAVLTreeMap_RCU_signal
705 #define CDSUNIT_DECLARE_BronsonAVLTreeMap \
706 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpi_less)\
707 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpb_less)\
708 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpt_less)\
709 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpi_cmp_stat)\
710 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpb_cmp_stat)\
711 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpt_cmp_stat)\
712 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpi_less_pool_simple)\
713 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpb_less_pool_simple)\
714 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpt_less_pool_simple)\
715 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpi_less_pool_simple_stat)\
716 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpb_less_pool_simple_stat)\
717 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpt_less_pool_simple_stat)\
718 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpi_less_pool_lazy)\
719 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpb_less_pool_lazy)\
720 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpt_less_pool_lazy)\
721 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpi_less_pool_lazy_stat)\
722 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpb_less_pool_lazy_stat)\
723 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpt_less_pool_lazy_stat)\
724 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpi_less_pool_bounded)\
725 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpb_less_pool_bounded)\
726 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpt_less_pool_bounded)\
727 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpi_less_pool_bounded_stat)\
728 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpb_less_pool_bounded_stat)\
729 CDSUNIT_DECLARE_TEST(BronsonAVLTreeMap_rcu_gpt_less_pool_bounded_stat)\
730 CDSUNIT_DECLARE_BronsonAVLTreeMap_RCU_signal
732 #define CDSUNIT_DEFINE_BronsonAVLTreeMap( IMPL, C ) \
733 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpi_less)\
734 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpb_less)\
735 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpt_less)\
736 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpi_cmp_stat)\
737 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpb_cmp_stat)\
738 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpt_cmp_stat)\
739 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpi_less_pool_simple)\
740 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpb_less_pool_simple)\
741 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpt_less_pool_simple)\
742 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpi_less_pool_simple_stat)\
743 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpb_less_pool_simple_stat)\
744 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpt_less_pool_simple_stat)\
745 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpi_less_pool_lazy)\
746 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpb_less_pool_lazy)\
747 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpt_less_pool_lazy)\
748 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpi_less_pool_lazy_stat)\
749 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpb_less_pool_lazy_stat)\
750 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpt_less_pool_lazy_stat)\
751 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpi_less_pool_bounded)\
752 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpb_less_pool_bounded)\
753 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpt_less_pool_bounded)\
754 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpi_less_pool_bounded_stat)\
755 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpb_less_pool_bounded_stat)\
756 TEST_MAP_NOLF_EXTRACT(IMPL, C, BronsonAVLTreeMap_rcu_gpt_less_pool_bounded_stat)\
757 CDSUNIT_DEFINE_BronsonAVLTreeMap_RCU_signal( IMPL, C )
759 #define CDSUNIT_TEST_BronsonAVLTreeMap \
760 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpi_less)\
761 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpi_cmp_stat)\
762 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpb_less)\
763 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpb_cmp_stat)\
764 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpt_less)\
765 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpt_cmp_stat)\
766 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpi_less_pool_simple)\
767 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpi_less_pool_simple_stat)\
768 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpb_less_pool_simple)\
769 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpb_less_pool_simple_stat)\
770 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpt_less_pool_simple)\
771 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpt_less_pool_simple_stat)\
772 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpi_less_pool_lazy)\
773 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpi_less_pool_lazy_stat)\
774 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpb_less_pool_lazy)\
775 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpb_less_pool_lazy_stat)\
776 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpt_less_pool_lazy)\
777 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpt_less_pool_lazy_stat)\
778 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpi_less_pool_bounded)\
779 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpi_less_pool_bounded_stat)\
780 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpb_less_pool_bounded)\
781 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpb_less_pool_bounded_stat)\
782 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpt_less_pool_bounded)\
783 CPPUNIT_TEST(BronsonAVLTreeMap_rcu_gpt_less_pool_bounded_stat)\
784 CDSUNIT_TEST_BronsonAVLTreeMap_RCU_signal
786 #define CDSUNIT_DECLARE_StripedMap_common \
787 CDSUNIT_DECLARE_TEST(StripedMap_list) \
788 CDSUNIT_DECLARE_TEST(StripedMap_map) \
789 CDSUNIT_DECLARE_TEST(StripedMap_hashmap) \
790 CDSUNIT_DECLARE_TEST(StripedMap_boost_unordered_map)
792 #define CDSUNIT_DEFINE_StripedMap_common( IMPL, C ) \
793 TEST_MAP(IMPL, C, StripedMap_list) \
794 TEST_MAP(IMPL, C, StripedMap_map) \
795 TEST_MAP(IMPL, C, StripedMap_hashmap) \
796 TEST_MAP(IMPL, C, StripedMap_boost_unordered_map)
798 #define CDSUNIT_TEST_StripedMap_common \
799 CPPUNIT_TEST(StripedMap_list) \
800 CPPUNIT_TEST(StripedMap_map) \
801 CPPUNIT_TEST(StripedMap_hashmap) \
802 CPPUNIT_TEST(StripedMap_boost_unordered_map)
804 #if BOOST_VERSION >= 104800
805 # define CDSUNIT_DECLARE_StripedMap_boost_container \
806 CDSUNIT_DECLARE_TEST(StripedMap_boost_list) \
807 CDSUNIT_DECLARE_TEST(StripedMap_slist) \
808 CDSUNIT_DECLARE_TEST(StripedMap_boost_map)
809 # define CDSUNIT_DEFINE_StripedMap_boost_container( IMPL, C ) \
810 TEST_MAP(IMPL, C, StripedMap_boost_list) \
811 TEST_MAP(IMPL, C, StripedMap_slist) \
812 TEST_MAP(IMPL, C, StripedMap_boost_map)
813 # define CDSUNIT_TEST_StripedMap_boost_container \
814 CPPUNIT_TEST(StripedMap_boost_list) \
815 CPPUNIT_TEST(StripedMap_slist) \
816 CPPUNIT_TEST(StripedMap_boost_map)
818 # define CDSUNIT_DECLARE_StripedMap_boost_container
819 # define CDSUNIT_DEFINE_StripedMap_boost_container( IMPL, C )
820 # define CDSUNIT_TEST_StripedMap_boost_container
823 #if BOOST_VERSION >= 104800 && defined(CDS_UNIT_MAP_TYPES_ENABLE_BOOST_FLAT_CONTAINERS)
824 # define CDSUNIT_DECLARE_StripedMap_boost_flat_container \
825 CDSUNIT_DECLARE_TEST(StripedMap_boost_flat_map)
826 # define CDSUNIT_DEFINE_StripedMap_boost_flat_container( IMPL, C ) \
827 TEST_MAP(IMPL, C, StripedMap_boost_flat_map)
828 # define CDSUNIT_TEST_StripedMap_boost_flat_container \
829 CPPUNIT_TEST(StripedMap_boost_flat_map)
831 # define CDSUNIT_DECLARE_StripedMap_boost_flat_container
832 # define CDSUNIT_DEFINE_StripedMap_boost_flat_container( IMPL, C )
833 # define CDSUNIT_TEST_StripedMap_boost_flat_container
836 #define CDSUNIT_DECLARE_StripedMap \
837 CDSUNIT_DECLARE_StripedMap_common \
838 CDSUNIT_DECLARE_StripedMap_boost_container \
839 CDSUNIT_DECLARE_StripedMap_boost_flat_container
840 #define CDSUNIT_DEFINE_StripedMap( IMPL, C ) \
841 CDSUNIT_DEFINE_StripedMap_common( IMPL, C ) \
842 CDSUNIT_DEFINE_StripedMap_boost_container( IMPL, C ) \
843 CDSUNIT_DEFINE_StripedMap_boost_flat_container( IMPL, C )
844 #define CDSUNIT_TEST_StripedMap \
845 CDSUNIT_TEST_StripedMap_common \
846 CDSUNIT_TEST_StripedMap_boost_container \
847 CDSUNIT_TEST_StripedMap_boost_flat_container
851 #define CDSUNIT_DECLARE_RefinableMap_common \
852 CDSUNIT_DECLARE_TEST(RefinableMap_list) \
853 CDSUNIT_DECLARE_TEST(RefinableMap_map) \
854 CDSUNIT_DECLARE_TEST(RefinableMap_hashmap) \
855 CDSUNIT_DECLARE_TEST(RefinableMap_boost_unordered_map)
856 #define CDSUNIT_DEFINE_RefinableMap_common( IMPL, C ) \
857 TEST_MAP(IMPL, C, RefinableMap_list) \
858 TEST_MAP(IMPL, C, RefinableMap_map) \
859 TEST_MAP(IMPL, C, RefinableMap_hashmap) \
860 TEST_MAP(IMPL, C, RefinableMap_boost_unordered_map)
861 #define CDSUNIT_TEST_RefinableMap_common \
862 CPPUNIT_TEST(RefinableMap_list) \
863 CPPUNIT_TEST(RefinableMap_map) \
864 CPPUNIT_TEST(RefinableMap_hashmap) \
865 CPPUNIT_TEST(RefinableMap_boost_unordered_map)
867 #if BOOST_VERSION >= 104800
868 # define CDSUNIT_DECLARE_RefinableMap_boost_container \
869 CDSUNIT_DECLARE_TEST(RefinableMap_boost_list) \
870 CDSUNIT_DECLARE_TEST(RefinableMap_slist) \
871 CDSUNIT_DECLARE_TEST(RefinableMap_boost_map)
872 # define CDSUNIT_DEFINE_RefinableMap_boost_container( IMPL, C ) \
873 TEST_MAP(IMPL, C, RefinableMap_boost_list) \
874 TEST_MAP(IMPL, C, RefinableMap_slist) \
875 TEST_MAP(IMPL, C, RefinableMap_boost_map)
876 # define CDSUNIT_TEST_RefinableMap_boost_container \
877 CPPUNIT_TEST(RefinableMap_boost_list) \
878 CPPUNIT_TEST(RefinableMap_slist) \
879 CPPUNIT_TEST(RefinableMap_boost_map)
881 # define CDSUNIT_DECLARE_RefinableMap_boost_container
882 # define CDSUNIT_DEFINE_RefinableMap_boost_container( IMPL, C )
883 # define CDSUNIT_TEST_RefinableMap_boost_container
886 #if BOOST_VERSION >= 104800 && defined(CDS_UNIT_MAP_TYPES_ENABLE_BOOST_FLAT_CONTAINERS)
887 # define CDSUNIT_DECLARE_RefinableMap_boost_flat_container \
888 CDSUNIT_DECLARE_TEST(RefinableMap_boost_flat_map)
889 # define CDSUNIT_DEFINE_RefinableMap_boost_flat_container( IMPL, C ) \
890 TEST_MAP( IMPL, C, RefinableMap_boost_flat_map)
891 # define CDSUNIT_TEST_RefinableMap_boost_flat_container \
892 CPPUNIT_TEST(RefinableMap_boost_flat_map)
894 # define CDSUNIT_DECLARE_RefinableMap_boost_flat_container
895 # define CDSUNIT_DEFINE_RefinableMap_boost_flat_container( IMPL, C )
896 # define CDSUNIT_TEST_RefinableMap_boost_flat_container
899 #define CDSUNIT_DECLARE_RefinableMap \
900 CDSUNIT_DECLARE_RefinableMap_common \
901 CDSUNIT_DECLARE_RefinableMap_boost_container \
902 CDSUNIT_DECLARE_RefinableMap_boost_flat_container
903 #define CDSUNIT_DEFINE_RefinableMap( IMPL, C ) \
904 CDSUNIT_DEFINE_RefinableMap_common( IMPL, C ) \
905 CDSUNIT_DEFINE_RefinableMap_boost_container( IMPL, C ) \
906 CDSUNIT_DEFINE_RefinableMap_boost_flat_container( IMPL, C )
907 #define CDSUNIT_TEST_RefinableMap \
908 CDSUNIT_TEST_RefinableMap_common \
909 CDSUNIT_TEST_RefinableMap_boost_container \
910 CDSUNIT_TEST_RefinableMap_boost_flat_container
912 #define CDSUNIT_DECLARE_CuckooMap \
913 CDSUNIT_DECLARE_TEST(CuckooStripedMap_list_unord)\
914 CDSUNIT_DECLARE_TEST(CuckooStripedMap_list_ord)\
915 CDSUNIT_DECLARE_TEST(CuckooStripedMap_vector_unord)\
916 CDSUNIT_DECLARE_TEST(CuckooStripedMap_vector_ord)\
917 CDSUNIT_DECLARE_TEST(CuckooStripedMap_list_unord_stat)\
918 CDSUNIT_DECLARE_TEST(CuckooStripedMap_list_ord_stat)\
919 CDSUNIT_DECLARE_TEST(CuckooStripedMap_vector_unord_stat)\
920 CDSUNIT_DECLARE_TEST(CuckooStripedMap_vector_ord_stat)\
921 CDSUNIT_DECLARE_TEST(CuckooRefinableMap_list_unord)\
922 CDSUNIT_DECLARE_TEST(CuckooRefinableMap_list_ord)\
923 CDSUNIT_DECLARE_TEST(CuckooRefinableMap_vector_unord)\
924 CDSUNIT_DECLARE_TEST(CuckooRefinableMap_vector_ord) \
925 CDSUNIT_DECLARE_TEST(CuckooRefinableMap_list_unord_stat)\
926 CDSUNIT_DECLARE_TEST(CuckooRefinableMap_list_ord_stat)\
927 CDSUNIT_DECLARE_TEST(CuckooRefinableMap_vector_unord_stat)\
928 CDSUNIT_DECLARE_TEST(CuckooRefinableMap_vector_ord_stat) \
929 CDSUNIT_DECLARE_TEST(CuckooStripedMap_list_unord_storehash)\
930 CDSUNIT_DECLARE_TEST(CuckooStripedMap_list_ord_storehash)\
931 CDSUNIT_DECLARE_TEST(CuckooStripedMap_vector_unord_storehash)\
932 CDSUNIT_DECLARE_TEST(CuckooStripedMap_vector_ord_storehash)\
933 CDSUNIT_DECLARE_TEST(CuckooRefinableMap_list_unord_storehash)\
934 CDSUNIT_DECLARE_TEST(CuckooRefinableMap_list_ord_storehash)\
935 CDSUNIT_DECLARE_TEST(CuckooRefinableMap_vector_unord_storehash)\
936 CDSUNIT_DECLARE_TEST(CuckooRefinableMap_vector_ord_storehash)
938 #define CDSUNIT_DEFINE_CuckooMap( IMPL, C ) \
939 TEST_MAP(IMPL, C, CuckooStripedMap_list_unord)\
940 TEST_MAP(IMPL, C, CuckooStripedMap_list_ord)\
941 TEST_MAP(IMPL, C, CuckooStripedMap_vector_unord)\
942 TEST_MAP(IMPL, C, CuckooStripedMap_vector_ord)\
943 TEST_MAP(IMPL, C, CuckooStripedMap_list_unord_stat)\
944 TEST_MAP(IMPL, C, CuckooStripedMap_list_ord_stat)\
945 TEST_MAP(IMPL, C, CuckooStripedMap_vector_unord_stat)\
946 TEST_MAP(IMPL, C, CuckooStripedMap_vector_ord_stat)\
947 TEST_MAP(IMPL, C, CuckooRefinableMap_list_unord)\
948 TEST_MAP(IMPL, C, CuckooRefinableMap_list_ord)\
949 TEST_MAP(IMPL, C, CuckooRefinableMap_vector_unord)\
950 TEST_MAP(IMPL, C, CuckooRefinableMap_vector_ord) \
951 TEST_MAP(IMPL, C, CuckooRefinableMap_list_unord_stat)\
952 TEST_MAP(IMPL, C, CuckooRefinableMap_list_ord_stat)\
953 TEST_MAP(IMPL, C, CuckooRefinableMap_vector_unord_stat)\
954 TEST_MAP(IMPL, C, CuckooRefinableMap_vector_ord_stat) \
955 TEST_MAP(IMPL, C, CuckooStripedMap_list_unord_storehash)\
956 TEST_MAP(IMPL, C, CuckooStripedMap_list_ord_storehash)\
957 TEST_MAP(IMPL, C, CuckooStripedMap_vector_unord_storehash)\
958 TEST_MAP(IMPL, C, CuckooStripedMap_vector_ord_storehash)\
959 TEST_MAP(IMPL, C, CuckooRefinableMap_list_unord_storehash)\
960 TEST_MAP(IMPL, C, CuckooRefinableMap_list_ord_storehash)\
961 TEST_MAP(IMPL, C, CuckooRefinableMap_vector_unord_storehash)\
962 TEST_MAP(IMPL, C, CuckooRefinableMap_vector_ord_storehash)
964 #define CDSUNIT_TEST_CuckooMap \
965 CPPUNIT_TEST(CuckooStripedMap_list_unord)\
966 CPPUNIT_TEST(CuckooStripedMap_list_unord_stat)\
967 CPPUNIT_TEST(CuckooStripedMap_list_unord_storehash)\
968 CPPUNIT_TEST(CuckooStripedMap_list_ord)\
969 CPPUNIT_TEST(CuckooStripedMap_list_ord_stat)\
970 CPPUNIT_TEST(CuckooStripedMap_list_ord_storehash)\
971 CPPUNIT_TEST(CuckooStripedMap_vector_unord)\
972 CPPUNIT_TEST(CuckooStripedMap_vector_unord_stat)\
973 CPPUNIT_TEST(CuckooStripedMap_vector_unord_storehash)\
974 CPPUNIT_TEST(CuckooStripedMap_vector_ord)\
975 CPPUNIT_TEST(CuckooStripedMap_vector_ord_stat)\
976 CPPUNIT_TEST(CuckooStripedMap_vector_ord_storehash)\
977 CPPUNIT_TEST(CuckooRefinableMap_list_unord)\
978 CPPUNIT_TEST(CuckooRefinableMap_list_unord_stat)\
979 CPPUNIT_TEST(CuckooRefinableMap_list_unord_storehash)\
980 CPPUNIT_TEST(CuckooRefinableMap_list_ord)\
981 CPPUNIT_TEST(CuckooRefinableMap_list_ord_stat)\
982 CPPUNIT_TEST(CuckooRefinableMap_list_ord_storehash)\
983 CPPUNIT_TEST(CuckooRefinableMap_vector_unord)\
984 CPPUNIT_TEST(CuckooRefinableMap_vector_unord_stat)\
985 CPPUNIT_TEST(CuckooRefinableMap_vector_unord_storehash)\
986 CPPUNIT_TEST(CuckooRefinableMap_vector_ord)\
987 CPPUNIT_TEST(CuckooRefinableMap_vector_ord_stat)\
988 CPPUNIT_TEST(CuckooRefinableMap_vector_ord_storehash)
990 #endif // #ifndef CDSUNIT_MAP_DEFS_H