jemalloc_probe.h revision 1.1 1 1.1 christos #ifndef JEMALLOC_INTERNAL_JEMALLOC_PROBE_H
2 1.1 christos #define JEMALLOC_INTERNAL_JEMALLOC_PROBE_H
3 1.1 christos
4 1.1 christos #include <jemalloc/internal/jemalloc_preamble.h>
5 1.1 christos
6 1.1 christos #ifdef JEMALLOC_EXPERIMENTAL_USDT_STAP
7 1.1 christos #include <jemalloc/internal/jemalloc_probe_stap.h>
8 1.1 christos #elif defined(JEMALLOC_EXPERIMENTAL_USDT_CUSTOM)
9 1.1 christos #include <jemalloc/internal/jemalloc_probe_custom.h>
10 1.1 christos #elif defined(_MSC_VER)
11 1.1 christos #define JE_USDT(name, N, ...) /* Nothing */
12 1.1 christos #else /* no USDT, just check the args */
13 1.1 christos
14 1.1 christos #define JE_USDT(name, N, ...) _JE_USDT_CHECK_ARG##N(__VA_ARGS__)
15 1.1 christos
16 1.1 christos #define _JE_USDT_CHECK_ARG1(a) \
17 1.1 christos do { \
18 1.1 christos /*LINTED*/(void)(a); \
19 1.1 christos } while (0)
20 1.1 christos #define _JE_USDT_CHECK_ARG2(a, b) \
21 1.1 christos do { \
22 1.1 christos /*LINTED*/(void)(a); \
23 1.1 christos /*LINTED*/(void)(b); \
24 1.1 christos } while (0)
25 1.1 christos #define _JE_USDT_CHECK_ARG3(a, b, c) \
26 1.1 christos do { \
27 1.1 christos /*LINTED*/(void)(a); \
28 1.1 christos /*LINTED*/(void)(b); \
29 1.1 christos /*LINTED*/(void)(c); \
30 1.1 christos } while (0)
31 1.1 christos #define _JE_USDT_CHECK_ARG4(a, b, c, d) \
32 1.1 christos do { \
33 1.1 christos /*LINTED*/(void)(a); \
34 1.1 christos /*LINTED*/(void)(b); \
35 1.1 christos /*LINTED*/(void)(c); \
36 1.1 christos /*LINTED*/(void)(d); \
37 1.1 christos } while (0)
38 1.1 christos #define _JE_USDT_CHECK_ARG5(a, b, c, d, e) \
39 1.1 christos do { \
40 1.1 christos /*LINTED*/(void)(a); \
41 1.1 christos /*LINTED*/(void)(b); \
42 1.1 christos /*LINTED*/(void)(c); \
43 1.1 christos /*LINTED*/(void)(d); \
44 1.1 christos /*LINTED*/(void)(e); \
45 1.1 christos } while (0)
46 1.1 christos
47 1.1 christos #endif /* JEMALLOC_EXPERIMENTAL_USDT_* */
48 1.1 christos
49 1.1 christos #endif /* JEMALLOC_INTERNAL_JEMALLOC_PROBE_H */
50