13 #define ntohl(_x) (_x)
14 #define ntohs(_x) (_x)
15 #define htonl(_x) (_x)
16 #define htons(_x) (_x)
28 #if defined(__GNUC__) && (__GNUC__ > 2) && defined(__OPTIMIZE__)
29 # define UNLIKELY(value) __builtin_expect((value), 0)
31 # define UNLIKELY(value) (value)
34 #if defined(WITH_VALGRIND) && defined(HAVE_VALGRIND_VALGRIND_H)
36 #include <valgrind/valgrind.h>
37 #include <valgrind/memcheck.h>
38 #include <valgrind/callgrind.h>
39 #include <valgrind/helgrind.h>
40 #include <valgrind/drd.h>
42 #if !defined(ANNOTATE_BENIGN_RACE_SIZED)
43 #define ANNOTATE_BENIGN_RACE_SIZED(_a, _b, _c)
55 size_t nb = nmemb *
size;
70 size_t nb = strlen(s) + 1;
79 #define RUNNING_ON_VALGRIND (0)
80 #define VALGRIND_DISCARD_TRANSLATIONS(_qzz_addr,_qzz_len)
82 #define VALGRIND_MALLOCLIKE_BLOCK(addr, sizeB, rzB, is_zeroed)
83 #define VALGRIND_FREELIKE_BLOCK(addr, rzB)
85 #define VALGRIND_CREATE_MEMPOOL(pool, rzB, is_zeroed)
86 #define VALGRIND_DESTROY_MEMPOOL(pool)
87 #define VALGRIND_MEMPOOL_ALLOC(pool, addr, size)
88 #define VALGRIND_MEMPOOL_FREE(pool, addr)
89 #define VALGRIND_MEMPOOL_TRIM(pool, addr, size)
90 #define VALGRIND_MOVE_MEMPOOL(poolA, poolB)
91 #define VALGRIND_MEMPOOL_CHANGE(pool, addrA, addrB, size)
92 #define VALGRIND_MEMPOOL_EXISTS(pool) (0)
94 #define VALGRIND_MAKE_MEM_NOACCESS(_qzz_addr,_qzz_len)
95 #define VALGRIND_MAKE_MEM_UNDEFINED(_qzz_addr,_qzz_len)
96 #define VALGRIND_MAKE_MEM_DEFINED(_qzz_addr,_qzz_len)
97 #define VALGRIND_MAKE_MEM_DEFINED_IF_ADDRESSABLE(_qzz_addr,_qzz_len)
98 #define VALGRIND_CREATE_BLOCK(_qzz_addr,_qzz_len, _qzz_desc)
99 #define VALGRIND_DISCARD(_qzz_blkindex)
100 #define VALGRIND_CHECK_MEM_IS_ADDRESSABLE(_qzz_addr,_qzz_len)
101 #define VALGRIND_CHECK_MEM_IS_DEFINED(_qzz_addr,_qzz_len)
102 #define VALGRIND_CHECK_VALUE_IS_DEFINED(__lvalue)
103 #define VALGRIND_DO_LEAK_CHECK
104 #define VALGRIND_DO_QUICK_LEAK_CHECK
105 #define VALGRIND_COUNT_LEAKS(leaked, dubious, reachable, suppressed)
106 #define VALGRIND_COUNT_LEAK_BLOCKS(leaked, dubious, reachable, suppressed)
107 #define VALGRIND_GET_VBITS(zza,zzvbits,zznbytes)
108 #define VALGRIND_SET_VBITS(zza,zzvbits,zznbytes)
110 #define CALLGRIND_DUMP_STATS
111 #define CALLGRIND_DUMP_STATS_AT(pos_str)
112 #define CALLGRIND_ZERO_STATS
113 #define CALLGRIND_TOGGLE_COLLECT
114 #define CALLGRIND_START_INSTRUMENTATION
115 #define CALLGRIND_STOP_INSTRUMENTATION
117 #define VALGRIND_HG_MUTEX_INIT_POST(_mutex, _mbRec)
118 #define VALGRIND_HG_MUTEX_LOCK_PRE(_mutex, _isTryLock)
119 #define VALGRIND_HG_MUTEX_LOCK_POST(_mutex)
120 #define VALGRIND_HG_MUTEX_UNLOCK_PRE(_mutex)
121 #define VALGRIND_HG_MUTEX_UNLOCK_POST(_mutex)
122 #define VALGRIND_HG_MUTEX_DESTROY_PRE(_mutex)
123 #define VALGRIND_HG_SEM_INIT_POST(_sem, _value)
124 #define VALGRIND_HG_SEM_WAIT_POST(_sem)
125 #define VALGRIND_HG_SEM_POST_PRE(_sem)
126 #define VALGRIND_HG_SEM_DESTROY_PRE(_sem)
127 #define VALGRIND_HG_BARRIER_INIT_PRE(_bar, _count, _resizable)
128 #define VALGRIND_HG_BARRIER_WAIT_PRE(_bar)
129 #define VALGRIND_HG_BARRIER_RESIZE_PRE(_bar, _newcount)
130 #define VALGRIND_HG_BARRIER_DESTROY_PRE(_bar)
131 #define VALGRIND_HG_CLEAN_MEMORY(_qzz_start, _qzz_len)
132 #define VALGRIND_HG_CLEAN_MEMORY_HEAPBLOCK(_qzz_blockstart)
133 #define VALGRIND_HG_DISABLE_CHECKING(_qzz_start, _qzz_len)
134 #define VALGRIND_HG_ENABLE_CHECKING(_qzz_start, _qzz_len)
136 #define DRD_GET_VALGRIND_THREADID
137 #define DRD_GET_DRD_THREADID
138 #define DRD_IGNORE_VAR(x)
139 #define DRD_STOP_IGNORING_VAR(x)
140 #define DRD_TRACE_VAR(x)
142 #define ANNOTATE_HAPPENS_BEFORE(_obj)
143 #define ANNOTATE_HAPPENS_AFTER(_obj)
145 #define ANNOTATE_RWLOCK_CREATE(rwlock)
146 #define ANNOTATE_RWLOCK_DESTROY(rwlock)
147 #define ANNOTATE_RWLOCK_ACQUIRED(rwlock, is_w)
148 #define ANNOTATE_READERLOCK_ACQUIRED(rwlock)
149 #define ANNOTATE_WRITERLOCK_ACQUIRED(rwlock)
150 #define ANNOTATE_RWLOCK_RELEASED(rwlock, is_w)
151 #define ANNOTATE_READERLOCK_RELEASED(rwlock)
152 #define ANNOTATE_WRITERLOCK_RELEASED(rwlock)
154 #define ANNOTATE_BARRIER_INIT(barrier, count, reinitialization_allowed)
155 #define ANNOTATE_BARRIER_DESTROY(barrier)
156 #define ANNOTATE_BARRIER_WAIT_BEFORE(barrier)
157 #define ANNOTATE_BARRIER_WAIT_AFTER(barrier)
159 #define ANNOTATE_BENIGN_RACE(_a, _b)
160 #define ANNOTATE_BENIGN_RACE_SIZED(_a, _b, _c)
162 #define ANNOTATE_IGNORE_READS_BEGIN()
163 #define ANNOTATE_IGNORE_READS_END()
164 #define ANNOTATE_IGNORE_WRITES_BEGIN()
165 #define ANNOTATE_IGNORE_WRITES_END()
166 #define ANNOTATE_IGNORE_READS_AND_WRITES_BEGIN()
167 #define ANNOTATE_IGNORE_READS_AND_WRITES_END()
169 #define ANNOTATE_NEW_MEMORY(_addr, _size)
170 #define ANNOTATE_TRACE_MEMORY(_addr)
171 #define ANNOTATE_THREAD_NAME(_name)
173 #define DRD_xmalloc(_nb) xmalloc(_nb)
174 #define DRD_xcalloc(_nmemb, _size) xcalloc(_nmemb, _size)
175 #define DRD_xrealloc(_ptr, _size) xrealloc(_ptr, _size)
176 #define DRD_xstrdup(_str) xstrdup(_str)
#define DRD_xcalloc(_nmemb, _size)
#define DRD_xrealloc(_ptr, _size)
#define DRD_xstrdup(_str)
#define ANNOTATE_BENIGN_RACE_SIZED(_a, _b, _c)
const char const char size_t size