f97eaa804c381d9fe979e863364080776a0a5deb
[c11concurrency-benchmarks.git] / silo / masstree / config.h
1 /* config.h.  Generated from config.h.in by configure.  */
2 /* config.h.in.  Generated from configure.ac by autoheader.  */
3
4 #ifndef MASSTREE_CONFIG_H_INCLUDED
5 #define MASSTREE_CONFIG_H_INCLUDED 1
6
7 /* Define if building universal (internal helper macro) */
8 /* #undef AC_APPLE_UNIVERSAL_BUILD */
9
10 /* Assumed size of a cache line. */
11 #define CACHE_LINE_SIZE 64
12
13 /* Define to enable debugging assertions. */
14 /* #undef ENABLE_ASSERTIONS */
15
16 /* Define to enable invariant assertions. */
17 #define ENABLE_INVARIANTS 0
18
19 /* Define to enable precondition assertions. */
20 #define ENABLE_PRECONDITIONS 0
21
22 /* Define to 1 if you have the `clock_gettime' function. */
23 #define HAVE_CLOCK_GETTIME 1
24
25 /* Define if the C++ compiler understands 'auto'. */
26 #define HAVE_CXX_AUTO 1
27
28 /* Define if the C++ compiler understands constexpr. */
29 #define HAVE_CXX_CONSTEXPR 1
30
31 /* Define if the C++ compiler understands rvalue references. */
32 #define HAVE_CXX_RVALUE_REFERENCES 1
33
34 /* Define if the C++ compiler understands static_assert. */
35 #define HAVE_CXX_STATIC_ASSERT 1
36
37 /* Define if the C++ compiler understands template alias. */
38 #define HAVE_CXX_TEMPLATE_ALIAS 1
39
40 /* Define to 1 if you have the declaration of `clock_gettime', and to 0 if you
41    don't. */
42 #define HAVE_DECL_CLOCK_GETTIME 1
43
44 /* Define to 1 if you have the declaration of `getline', and to 0 if you
45    don't. */
46 #define HAVE_DECL_GETLINE 1
47
48 /* Define to 1 if you have the <execinfo.h> header file. */
49 #define HAVE_EXECINFO_H 1
50
51 /* Define if you are using libflow for malloc. */
52 /* #undef HAVE_FLOW_MALLOC */
53
54 /* Define if you are using libhoard for malloc. */
55 /* #undef HAVE_HOARD_MALLOC */
56
57 /* Define if int64_t and long are the same type. */
58 #define HAVE_INT64_T_IS_LONG 1
59
60 /* Define if int64_t and long long are the same type. */
61 /* #undef HAVE_INT64_T_IS_LONG_LONG */
62
63 /* Define to 1 if you have the <inttypes.h> header file. */
64 #define HAVE_INTTYPES_H 1
65
66 /* Define if you are using libjemalloc for malloc. */
67 #define HAVE_JEMALLOC 1
68
69 /* Define if you have libnuma. */
70 #define HAVE_LIBNUMA 1
71
72 /* Define to 1 if the system has the type `long long'. */
73 #define HAVE_LONG_LONG 1
74
75 /* Define if MADV_HUGEPAGE is supported. */
76 #define HAVE_MADV_HUGEPAGE 1
77
78 /* Define if MAP_HUGETLB is supported. */
79 #define HAVE_MAP_HUGETLB 1
80
81 /* Define if memory debugging support is enabled. */
82 /* #undef HAVE_MEMDEBUG */
83
84 /* Define to 1 if you have the <memory.h> header file. */
85 #define HAVE_MEMORY_H 1
86
87 /* Define to 1 if you have the <numa.h> header file. */
88 #define HAVE_NUMA_H 1
89
90 /* Define if off_t and long are the same type. */
91 #define HAVE_OFF_T_IS_LONG 1
92
93 /* Define if off_t and long long are the same type. */
94 /* #undef HAVE_OFF_T_IS_LONG_LONG */
95
96 /* Define if size_t and unsigned are the same type. */
97 /* #undef HAVE_SIZE_T_IS_UNSIGNED */
98
99 /* Define if size_t and unsigned long are the same type. */
100 #define HAVE_SIZE_T_IS_UNSIGNED_LONG 1
101
102 /* Define if size_t and unsigned long long are the same type. */
103 /* #undef HAVE_SIZE_T_IS_UNSIGNED_LONG_LONG */
104
105 /* Define to 1 if you have the <stdint.h> header file. */
106 #define HAVE_STDINT_H 1
107
108 /* Define to 1 if you have the <stdlib.h> header file. */
109 #define HAVE_STDLIB_H 1
110
111 /* Define if you have std::hash. */
112 #define HAVE_STD_HASH 1
113
114 /* Define if you have the std::is_rvalue_reference template. */
115 #define HAVE_STD_IS_RVALUE_REFERENCE 1
116
117 /* Define if you have the std::is_trivially_copyable template. */
118 #define HAVE_STD_IS_TRIVIALLY_COPYABLE 1
119
120 /* Define to 1 if you have the <strings.h> header file. */
121 #define HAVE_STRINGS_H 1
122
123 /* Define to 1 if you have the <string.h> header file. */
124 #define HAVE_STRING_H 1
125
126 /* Define if superpage support is enabled. */
127 #define HAVE_SUPERPAGE 1
128
129 /* Define to 1 if you have the <sys/epoll.h> header file. */
130 #define HAVE_SYS_EPOLL_H 1
131
132 /* Define to 1 if you have the <sys/stat.h> header file. */
133 #define HAVE_SYS_STAT_H 1
134
135 /* Define to 1 if you have the <sys/types.h> header file. */
136 #define HAVE_SYS_TYPES_H 1
137
138 /* Define if you are using libtcmalloc for malloc. */
139 /* #undef HAVE_TCMALLOC */
140
141 /* Define to 1 if you have the <time.h> header file. */
142 #define HAVE_TIME_H 1
143
144 /* Define to 1 if you have the <type_traits> header file. */
145 #define HAVE_TYPE_TRAITS 1
146
147 /* Define if unaligned accesses are OK. */
148 #define HAVE_UNALIGNED_ACCESS 1
149
150 /* Define to 1 if you have the <unistd.h> header file. */
151 #define HAVE_UNISTD_H 1
152
153 /* Define if you have the __builtin_clz builtin. */
154 #define HAVE___BUILTIN_CLZ 1
155
156 /* Define if you have the __builtin_clzl builtin. */
157 #define HAVE___BUILTIN_CLZL 1
158
159 /* Define if you have the __builtin_clzll builtin. */
160 #define HAVE___BUILTIN_CLZLL 1
161
162 /* Define if you have the __builtin_ctz builtin. */
163 #define HAVE___BUILTIN_CTZ 1
164
165 /* Define if you have the __builtin_ctzl builtin. */
166 #define HAVE___BUILTIN_CTZL 1
167
168 /* Define if you have the __builtin_ctzll builtin. */
169 #define HAVE___BUILTIN_CTZLL 1
170
171 /* Define if you have the __has_trivial_copy compiler intrinsic. */
172 #define HAVE___HAS_TRIVIAL_COPY 1
173
174 /* Define if you have the __sync_add_and_fetch builtin. */
175 #define HAVE___SYNC_ADD_AND_FETCH 1
176
177 /* Define if you have the __sync_add_and_fetch_8 builtin. */
178 #define HAVE___SYNC_ADD_AND_FETCH_8 1
179
180 /* Define if you have the __sync_bool_compare_and_swap builtin. */
181 #define HAVE___SYNC_BOOL_COMPARE_AND_SWAP 1
182
183 /* Define if you have the __sync_bool_compare_and_swap_8 builtin. */
184 #define HAVE___SYNC_BOOL_COMPARE_AND_SWAP_8 1
185
186 /* Define if you have the __sync_fetch_and_add builtin. */
187 #define HAVE___SYNC_FETCH_AND_ADD 1
188
189 /* Define if you have the __sync_fetch_and_add_8 builtin. */
190 #define HAVE___SYNC_FETCH_AND_ADD_8 1
191
192 /* Define if you have the __sync_fetch_and_or builtin. */
193 #define HAVE___SYNC_FETCH_AND_OR 1
194
195 /* Define if you have the __sync_fetch_and_or_8 builtin. */
196 #define HAVE___SYNC_FETCH_AND_OR_8 1
197
198 /* Define if you have the __sync_lock_release_set builtin. */
199 #define HAVE___SYNC_LOCK_RELEASE_SET 1
200
201 /* Define if you have the __sync_lock_test_and_set builtin. */
202 #define HAVE___SYNC_LOCK_TEST_AND_SET 1
203
204 /* Define if you have the __sync_lock_test_and_set_val builtin. */
205 #define HAVE___SYNC_LOCK_TEST_AND_SET_VAL 1
206
207 /* Define if you have the __sync_or_and_fetch builtin. */
208 #define HAVE___SYNC_OR_AND_FETCH 1
209
210 /* Define if you have the __sync_or_and_fetch_8 builtin. */
211 #define HAVE___SYNC_OR_AND_FETCH_8 1
212
213 /* Define if you have the __sync_synchronize builtin. */
214 #define HAVE___SYNC_SYNCHRONIZE 1
215
216 /* Define if you have the __sync_val_compare_and_swap builtin. */
217 #define HAVE___SYNC_VAL_COMPARE_AND_SWAP 1
218
219 /* Define if you have the __sync_val_compare_and_swap_8 builtin. */
220 #define HAVE___SYNC_VAL_COMPARE_AND_SWAP_8 1
221
222 /* Maximum key length */
223 #define MASSTREE_MAXKEYLEN 1024
224
225 /* Define if the default row type is value_timed_array. */
226 /* #undef MASSTREE_ROW_TYPE_ARRAY */
227
228 /* Define if the default row type is value_timed_array_ver. */
229 /* #undef MASSTREE_ROW_TYPE_ARRAY_VER */
230
231 /* Define if the default row type is value_timed_bag. */
232 #define MASSTREE_ROW_TYPE_BAG 1
233
234 /* Define if the default row type is value_timed_str. */
235 /* #undef MASSTREE_ROW_TYPE_STR */
236
237 /* Define to the address where bug reports for this package should be sent. */
238 #define PACKAGE_BUGREPORT ""
239
240 /* Define to the full name of this package. */
241 #define PACKAGE_NAME "masstree-beta"
242
243 /* Define to the full name and version of this package. */
244 #define PACKAGE_STRING "masstree-beta 0.1"
245
246 /* Define to the one symbol short name of this package. */
247 #define PACKAGE_TARNAME "masstree-beta"
248
249 /* Define to the home page for this package. */
250 #define PACKAGE_URL ""
251
252 /* Define to the version of this package. */
253 #define PACKAGE_VERSION "0.1"
254
255 /* The size of `int', as computed by sizeof. */
256 #define SIZEOF_INT 4
257
258 /* The size of `long', as computed by sizeof. */
259 #define SIZEOF_LONG 8
260
261 /* The size of `long long', as computed by sizeof. */
262 #define SIZEOF_LONG_LONG 8
263
264 /* The size of `short', as computed by sizeof. */
265 #define SIZEOF_SHORT 2
266
267 /* The size of `void *', as computed by sizeof. */
268 #define SIZEOF_VOID_P 8
269
270 /* Define to 1 if you have the ANSI C header files. */
271 #define STDC_HEADERS 1
272
273 /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
274    significant byte first (like Motorola and SPARC, unlike Intel). */
275 #if defined AC_APPLE_UNIVERSAL_BUILD
276 # if defined __BIG_ENDIAN__
277 #  define WORDS_BIGENDIAN 1
278 # endif
279 #else
280 # ifndef WORDS_BIGENDIAN
281 /* #  undef WORDS_BIGENDIAN */
282 # endif
283 #endif
284
285 /* Define if WORDS_BIGENDIAN has been set. */
286 #define WORDS_BIGENDIAN_SET 1
287
288 #if !FORCE_ENABLE_ASSERTIONS && !ENABLE_ASSERTIONS
289 # define NDEBUG 1
290 #endif
291
292 /** @brief Assert macro that always runs. */
293 extern void fail_always_assert(const char* file, int line, const char* assertion, const char* message = 0) __attribute__((noreturn));
294 #define always_assert(x, ...) do { if (!(x)) fail_always_assert(__FILE__, __LINE__, #x, ## __VA_ARGS__); } while (0)
295 #define mandatory_assert always_assert
296
297 /** @brief Assert macro for invariants.
298
299     masstree_invariant(x) is executed if --enable-invariants or
300     --enable-assertions. */
301 extern void fail_masstree_invariant(const char* file, int line, const char* assertion, const char* message = 0) __attribute__((noreturn));
302 #if FORCE_ENABLE_ASSERTIONS || (!defined(ENABLE_INVARIANTS) && ENABLE_ASSERTIONS) || ENABLE_INVARIANTS
303 #define masstree_invariant(x, ...) do { if (!(x)) fail_masstree_invariant(__FILE__, __LINE__, #x, ## __VA_ARGS__); } while (0)
304 #else
305 #define masstree_invariant(x, ...) do { } while (0)
306 #endif
307
308 /** @brief Assert macro for preconditions.
309
310     masstree_precondition(x) is executed if --enable-preconditions or
311     --enable-assertions. */
312 extern void fail_masstree_precondition(const char* file, int line, const char* assertion, const char* message = 0) __attribute__((noreturn));
313 #if FORCE_ENABLE_ASSERTIONS || (!defined(ENABLE_PRECONDITIONS) && ENABLE_ASSERTIONS) || ENABLE_PRECONDITIONS
314 #define masstree_precondition(x, ...) do { if (!(x)) fail_masstree_precondition(__FILE__, __LINE__, #x, ## __VA_ARGS__); } while (0)
315 #else
316 #define masstree_precondition(x, ...) do { } while (0)
317 #endif
318
319 #ifndef invariant
320 #define invariant masstree_invariant
321 #endif
322 #ifndef precondition
323 #define precondition masstree_precondition
324 #endif
325
326 #endif