2009-02-09 Geoff Norton <gnorton@novell.com>
[mono-project.git] / mono / utils / dtrace.h
blob1b540f705da5c1423d74796dcaa09a6aa14a4004
1 /*
2 * dtrace.h: DTrace probes
3 *
4 * Authors:
5 * Andreas Faerber <andreas.faerber@web.de>
6 *
7 */
9 #ifndef __UTILS_DTRACE_H__
10 #define __UTILS_DTRACE_H__
12 #ifdef ENABLE_DTRACE
15 #include <mono/utils/mono-dtrace.h>
17 #define MONO_PROBE_VES_INIT_BEGIN() MONO_VES_INIT_BEGIN ()
18 #define MONO_PROBE_VES_INIT_BEGIN_ENABLED() MONO_VES_INIT_BEGIN_ENABLED ()
20 #define MONO_PROBE_VES_INIT_END() MONO_VES_INIT_END ()
21 #define MONO_PROBE_VES_INIT_END_ENABLED() MONO_VES_INIT_END_ENABLED ()
24 #define MONO_PROBE_METHOD_COMPILE_BEGIN(method) \
25 MONO_METHOD_COMPILE_BEGIN ( \
26 mono_type_get_full_name ((method)->klass), \
27 (gchar*)(method)->name, \
28 mono_signature_get_desc ((method)->signature, TRUE) \
30 #define MONO_PROBE_METHOD_COMPILE_BEGIN_ENABLED() MONO_METHOD_COMPILE_BEGIN_ENABLED ()
32 #define MONO_PROBE_METHOD_COMPILE_END(method, success) \
33 MONO_METHOD_COMPILE_END ( \
34 mono_type_get_full_name ((method)->klass), \
35 (gchar*)(method)->name, \
36 mono_signature_get_desc ((method)->signature, TRUE), \
37 success \
39 #define MONO_PROBE_METHOD_COMPILE_END_ENABLED() MONO_METHOD_COMPILE_END_ENABLED ()
42 #define MONO_PROBE_GC_BEGIN(generation) MONO_GC_BEGIN (generation)
43 #define MONO_PROBE_GC_BEGIN_ENABLED() MONO_GC_BEGIN_ENABLED ()
45 #define MONO_PROBE_GC_END(generation) MONO_GC_END (generation)
46 #define MONO_PROBE_GC_END_ENABLED() MONO_GC_END_ENABLED ()
49 #else
52 #define MONO_PROBE_VES_INIT_BEGIN()
53 #define MONO_PROBE_VES_INIT_BEGIN_ENABLED() (0)
55 #define MONO_PROBE_VES_INIT_END()
56 #define MONO_PROBE_VES_INIT_END_ENABLED() (0)
59 #define MONO_PROBE_METHOD_COMPILE_BEGIN(method)
60 #define MONO_PROBE_METHOD_COMPILE_BEGIN_ENABLED() (0)
62 #define MONO_PROBE_METHOD_COMPILE_END(method, success)
63 #define MONO_PROBE_METHOD_COMPILE_END_ENABLED() (0)
66 #define MONO_PROBE_GC_BEGIN(generation)
67 #define MONO_PROBE_GC_BEGIN_ENABLED() (0)
69 #define MONO_PROBE_GC_END(generation)
70 #define MONO_PROBE_GC_END_ENABLED() (0)
73 #endif
75 #endif