23 #include "dtool_config.h"
26 #if defined(_WIN32) || defined(_WIN64)
43 #pragma warning (disable : 4231)
45 #pragma warning (disable : 4786)
47 #pragma warning (disable : 4251)
49 #pragma warning (disable : 4503)
51 #pragma warning (disable : 4305)
53 #pragma warning (disable : 4250)
55 #pragma warning (disable : 4355)
57 #pragma warning (disable : 4244)
59 #pragma warning (disable : 4267)
76 # define NODEFAULT default: assert(0);
78 # define NODEFAULT default: __assume(0); // special VC keyword
83 # define NODEFAULT default: assert(0);
97 #define _WIN32_WINNT 0x0502
100 #ifndef __STDC_LIMIT_MACROS
101 #define __STDC_LIMIT_MACROS
103 #ifndef __STDC_CONSTANT_MACROS
104 #define __STDC_CONSTANT_MACROS
111 #include <sys/cdefs.h>
112 #ifndef __extern_always_inline
113 #define __extern_always_inline extern __always_inline
118 #undef _POSIX_C_SOURCE
120 #include "pyconfig.h"
128 #include "dtoolsymbols.h"
136 #define _FILE_OFFSET_BITS 64
137 #define _LARGEFILE_SOURCE 1
144 #ifdef PHAVE_SYS_TYPES_H
145 #include <sys/types.h>
148 #ifdef PHAVE_MALLOC_H
152 #ifdef PHAVE_SYS_MALLOC_H
153 #include <sys/malloc.h>
156 #ifdef PHAVE_ALLOCA_H
160 #ifdef PHAVE_UNISTD_H
168 #ifdef PHAVE_LOCALE_H
172 #ifdef PHAVE_STRING_H
176 #ifdef PHAVE_STDLIB_H
180 #ifdef PHAVE_LIMITS_H
184 #ifdef PHAVE_MINMAX_H
188 #ifdef PHAVE_SYS_TIME_H
189 #include <sys/time.h>
192 #ifdef PHAVE_STDINT_H
197 #include <stdtypedefs.h>
207 #include <Profile/Profiler.h>
212 #define TAU_TYPE_STRING(profileString, str)
213 #define TAU_PROFILE(name, type, group)
214 #define TAU_PROFILE_TIMER(var, name, type, group)
215 #define TAU_PROFILE_START(var)
216 #define TAU_PROFILE_STOP(var)
217 #define TAU_PROFILE_STMT(stmt)
218 #define TAU_PROFILE_EXIT(msg)
219 #define TAU_PROFILE_INIT(argc, argv)
220 #define TAU_PROFILE_SET_NODE(node)
221 #define TAU_PROFILE_SET_CONTEXT(context)
222 #define TAU_PROFILE_SET_GROUP_NAME(newname)
223 #define TAU_PROFILE_TIMER_SET_GROUP_NAME(t, newname)
224 #define TAU_PROFILE_CALLSTACK()
225 #define TAU_DB_DUMP()
226 #define TAU_DB_PURGE()
228 #define TAU_REGISTER_CONTEXT_EVENT(event, name)
229 #define TAU_CONTEXT_EVENT(event, data)
230 #define TAU_DISABLE_CONTEXT_EVENT(event)
231 #define TAU_ENABLE_CONTEXT_EVENT(event)
233 #define TAU_REGISTER_EVENT(event, name)
234 #define TAU_EVENT(event, data)
235 #define TAU_EVENT_DISABLE_MIN(event)
236 #define TAU_EVENT_DISABLE_MAX(event)
237 #define TAU_EVENT_DISABLE_MEAN(event)
238 #define TAU_EVENT_DISABLE_STDDEV(event)
239 #define TAU_REPORT_STATISTICS()
240 #define TAU_REPORT_THREAD_STATISTICS()
241 #define TAU_REGISTER_THREAD()
242 #define TAU_REGISTER_FORK(id, op)
243 #define TAU_ENABLE_INSTRUMENTATION()
244 #define TAU_DISABLE_INSTRUMENTATION()
245 #define TAU_ENABLE_GROUP(group)
246 #define TAU_DISABLE_GROUP(group)
247 #define TAU_ENABLE_GROUP_NAME(group)
248 #define TAU_DISABLE_GROUP_NAME(group)
249 #define TAU_ENABLE_ALL_GROUPS()
250 #define TAU_DISABLE_ALL_GROUPS()
251 #define TAU_TRACK_MEMORY()
252 #define TAU_TRACK_MEMORY_HERE()
253 #define TAU_ENABLE_TRACKING_MEMORY()
254 #define TAU_DISABLE_TRACKING_MEMORY()
255 #define TAU_TRACK_MEMORY()
256 #define TAU_TRACK_MEMORY_HERE()
257 #define TAU_ENABLE_TRACKING_MUSE_EVENTS()
258 #define TAU_DISABLE_TRACKING_MUSE_EVENTS()
259 #define TAU_TRACK_MUSE_EVENTS()
260 #define TAU_SET_INTERRUPT_INTERVAL(value)
262 #define TAU_TRACE_SENDMSG(type, destination, length)
263 #define TAU_TRACE_RECVMSG(type, source, length)
265 #define TAU_MAPPING(stmt, group) stmt
266 #define TAU_MAPPING_OBJECT(FuncInfoVar)
267 #define TAU_MAPPING_LINK(FuncInfoVar, Group)
268 #define TAU_MAPPING_PROFILE(FuncInfoVar)
269 #define TAU_MAPPING_CREATE(name, type, key, groupname, tid)
270 #define TAU_MAPPING_PROFILE_TIMER(Timer, FuncInfoVar, tid)
271 #define TAU_MAPPING_TIMER_CREATE(t, name, type, gr, group_name)
272 #define TAU_MAPPING_PROFILE_START(Timer, tid)
273 #define TAU_MAPPING_PROFILE_STOP(tid)
274 #define TAU_MAPPING_PROFILE_EXIT(msg, tid)
275 #define TAU_MAPPING_DB_DUMP(tid)
276 #define TAU_MAPPING_DB_PURGE(tid)
277 #define TAU_MAPPING_PROFILE_SET_NODE(node, tid)
278 #define TAU_MAPPING_PROFILE_SET_GROUP_NAME(timer, name)
279 #define TAU_PROFILE_TIMER_SET_NAME(t, newname)
280 #define TAU_PROFILE_TIMER_SET_TYPE(t, newname)
281 #define TAU_PROFILE_TIMER_SET_GROUP(t, id)
282 #define TAU_MAPPING_PROFILE_SET_NAME(timer, name)
283 #define TAU_MAPPING_PROFILE_SET_TYPE(timer, name)
284 #define TAU_MAPPING_PROFILE_SET_GROUP(timer, id)
285 #define TAU_MAPPING_PROFILE_GET_GROUP_NAME(timer)
286 #define TAU_MAPPING_PROFILE_GET_GROUP(timer)
287 #define TAU_MAPPING_PROFILE_GET_NAME(timer)
288 #define TAU_MAPPING_PROFILE_GET_TYPE(timer)
290 #define TAU_PHASE(name, type, group)
291 #define TAU_PHASE_CREATE_STATIC(var, name, type, group)
292 #define TAU_PHASE_CREATE_DYNAMIC(var, name, type, group)
293 #define TAU_PHASE_START(var)
294 #define TAU_PHASE_STOP(var)
295 #define TAU_GLOBAL_PHASE(timer, name, type, group)
296 #define TAU_GLOBAL_PHASE_START(timer)
297 #define TAU_GLOBAL_PHASE_STOP(timer)
298 #define TAU_GLOBAL_PHASE_EXTERNAL(timer)
299 #define TAU_GLOBAL_TIMER(timer, name, type, group)
300 #define TAU_GLOBAL_TIMER_EXTERNAL(timer)
301 #define TAU_GLOBAL_TIMER_START(timer)
302 #define TAU_GLOBAL_TIMER_STOP()
315 #if defined(__LITTLE_ENDIAN__) || defined(__i386__)
316 #undef WORDS_BIGENDIAN
318 #elif defined(__BIG_ENDIAN__) || defined(__ppc__)
319 #undef WORDS_BIGENDIAN
320 #define WORDS_BIGENDIAN 1
327 #define NATIVE_WORDSIZE __WORDSIZE
329 #define NATIVE_WORDSIZE 64
331 #define NATIVE_WORDSIZE 32
340 #elif defined(_MSC_VER)
341 #define ALIGN_4BYTE __declspec(align(4))
342 #define ALIGN_8BYTE __declspec(align(8))
343 #define ALIGN_16BYTE __declspec(align(16))
344 #define ALIGN_64BYTE __declspec(align(64))
345 #elif defined(__GNUC__)
346 #define ALIGN_4BYTE __attribute__ ((aligned (4)))
347 #define ALIGN_8BYTE __attribute__ ((aligned (8)))
348 #define ALIGN_16BYTE __attribute__ ((aligned (16)))
349 #define ALIGN_64BYTE __attribute__ ((aligned (64)))
359 #if !defined(LINMATH_ALIGN)
362 #undef MEMORY_HOOK_DO_ALIGN
364 #elif defined(USE_MEMORY_DLMALLOC)
367 #undef MEMORY_HOOK_DO_ALIGN
369 #elif defined(USE_MEMORY_PTMALLOC2)
373 #define MEMORY_HOOK_DO_ALIGN 1
375 #elif defined(IS_OSX) || defined(_WIN64)
378 #undef MEMORY_HOOK_DO_ALIGN
380 #elif defined(MEMORY_HOOK_DO_ALIGN)
388 #define USE_MEMORY_DLMALLOC 1
393 #if defined(USE_MEMORY_PTMALLOC2) || defined(USE_MEMORY_DLMALLOC) || defined(DO_MEMORY_USAGE) || defined(MEMORY_HOOK_DO_ALIGN)
399 #define USE_MEMORY_NOWRAPPERS 1
404 #define USE_STL_ALLOCATOR 1
414 #define BEGIN_PUBLISH __begin_publish
415 #define END_PUBLISH __end_publish
416 #define BLOCKING __blocking
417 #define MAKE_PROPERTY(property_name, ...) __make_property(property_name, __VA_ARGS__)
418 #define MAKE_SEQ(seq_name, num_name, element_name) __make_seq(seq_name, num_name, element_name)
419 #undef USE_STL_ALLOCATOR
420 #define EXTENSION(x) __extension x
421 #define EXTEND __extension
423 #define BEGIN_PUBLISH
426 #define MAKE_PROPERTY(property_name, ...)
427 #define MAKE_SEQ(seq_name, num_name, element_name)
433 #if defined(WIN32_VC) && !defined(CPPPARSER) && !defined(LINK_ALL_STATIC)
434 #define EXPORT_CLASS __declspec(dllexport)
435 #define IMPORT_CLASS __declspec(dllimport)
441 #if defined(WIN32_VC) && !defined(CPPPARSER) && !defined(LINK_ALL_STATIC)
443 #define IMPORT_TEMPL extern
450 #include "dtoolbase_cc.h"