2 * dtrace.h: DTrace probes
5 * Andreas Faerber <andreas.faerber@web.de>
9 #ifndef __UTILS_DTRACE_H__
10 #define __UTILS_DTRACE_H__
14 #include <mono/utils/mono-dtrace.h>
16 #define MONO_PROBE_METHOD_COMPILE_BEGIN(method) \
17 MONO_METHOD_COMPILE_BEGIN ( \
18 mono_type_get_full_name ((method)->klass), \
19 (gchar*)(method)->name, \
20 mono_signature_get_desc ((method)->signature, TRUE) \
23 #define MONO_PROBE_METHOD_COMPILE_END(method, success) \
24 MONO_METHOD_COMPILE_END ( \
25 mono_type_get_full_name ((method)->klass), \
26 (gchar*)(method)->name, \
27 mono_signature_get_desc ((method)->signature, TRUE), \
33 #define MONO_VES_INIT_BEGIN()
34 #define MONO_VES_INIT_BEGIN_ENABLED() (0)
36 #define MONO_VES_INIT_END()
37 #define MONO_VES_INIT_END_ENABLED() (0)
40 #define MONO_PROBE_METHOD_COMPILE_BEGIN(method)
41 #define MONO_METHOD_COMPILE_BEGIN_ENABLED() (0)
43 #define MONO_PROBE_METHOD_COMPILE_END(method, success)
44 #define MONO_METHOD_COMPILE_END_ENABLED() (0)
47 #define MONO_GC_BEGIN(generation)
48 #define MONO_GC_BEGIN_ENABLED() (0)
50 #define MONO_GC_END(generation)
51 #define MONO_GC_END_ENABLED() (0)
54 #define MONO_GC_REQUESTED(generation,requested_size,wait_to_finish)
55 #define MONO_GC_REQUESTED_ENABLED() (0)
58 #define MONO_GC_CHECKPOINT_1(generation)
59 #define MONO_GC_CHECKPOINT_1_ENABLED() (0)
61 #define MONO_GC_CHECKPOINT_2(generation)
62 #define MONO_GC_CHECKPOINT_2_ENABLED() (0)
64 #define MONO_GC_CHECKPOINT_3(generation)
65 #define MONO_GC_CHECKPOINT_3_ENABLED() (0)
67 #define MONO_GC_CHECKPOINT_4(generation)
68 #define MONO_GC_CHECKPOINT_4_ENABLED() (0)
70 #define MONO_GC_CHECKPOINT_5(generation)
71 #define MONO_GC_CHECKPOINT_5_ENABLED() (0)
73 #define MONO_GC_CHECKPOINT_6(generation)
74 #define MONO_GC_CHECKPOINT_6_ENABLED() (0)
76 #define MONO_GC_CHECKPOINT_7(generation)
77 #define MONO_GC_CHECKPOINT_7_ENABLED() (0)
79 #define MONO_GC_CHECKPOINT_8(generation)
80 #define MONO_GC_CHECKPOINT_8_ENABLED() (0)
82 #define MONO_GC_CHECKPOINT_9(generation)
83 #define MONO_GC_CHECKPOINT_9_ENABLED() (0)
86 #define MONO_GC_CONCURRENT_START_BEGIN(generation)
87 #define MONO_GC_CONCURRENT_START_BEGIN_ENABLED() (0)
89 #define MONO_GC_CONCURRENT_START_END(generation,num_major_objects_marked)
90 #define MONO_GC_CONCURRENT_START_END_ENABLED() (0)
92 #define MONO_GC_CONCURRENT_UPDATE_FINISH_BEGIN(generation,num_major_objects_marked)
93 #define MONO_GC_CONCURRENT_UPDATE_FINISH_BEGIN_ENABLED() (0)
95 #define MONO_GC_CONCURRENT_UPDATE_END(generation,num_major_objects_marked)
96 #define MONO_GC_CONCURRENT_UPDATE_END_ENABLED() (0)
98 #define MONO_GC_CONCURRENT_FINISH_END(generation,num_major_objects_marked)
99 #define MONO_GC_CONCURRENT_FINISH_END_ENABLED() (0)
102 #define MONO_GC_SWEEP_BEGIN(generation,full_sweep)
103 #define MONO_GC_SWEEP_BEGIN_ENABLED() (0)
105 #define MONO_GC_SWEEP_END(generation,full_sweep)
106 #define MONO_GC_SWEEP_END_ENABLED() (0)
109 #define MONO_GC_WORLD_STOP_BEGIN()
110 #define MONO_GC_WORLD_STOP_BEGIN_ENABLED() (0)
112 #define MONO_GC_WORLD_STOP_END()
113 #define MONO_GC_WORLD_STOP_END_ENABLED() (0)
115 #define MONO_GC_WORLD_RESTART_BEGIN(generation)
116 #define MONO_GC_WORLD_RESTART_BEGIN_ENABLED() (0)
118 #define MONO_GC_WORLD_RESTART_END(generation)
119 #define MONO_GC_WORLD_RESTART_END_ENABLED() (0)
122 #define MONO_GC_HEAP_ALLOC(addr,size)
123 #define MONO_GC_HEAP_ALLOC_ENABLED() (0)
125 #define MONO_GC_HEAP_FREE(addr,size)
126 #define MONO_GC_HEAP_FREE_ENABLED() (0)
129 #define MONO_GC_LOCKED()
130 #define MONO_GC_LOCKED_ENABLED() (0)
132 #define MONO_GC_UNLOCKED()
133 #define MONO_GC_UNLOCKED_ENABLED() (0)
136 #define MONO_GC_NURSERY_TLAB_ALLOC(addr,len)
137 #define MONO_GC_NURSERY_TLAB_ALLOC_ENABLED() (0)
139 #define MONO_GC_NURSERY_OBJ_ALLOC(addr,size,ns_name,class_name)
140 #define MONO_GC_NURSERY_OBJ_ALLOC_ENABLED() (0)
143 #define MONO_GC_MAJOR_OBJ_ALLOC_LARGE(addr,size,ns_name,class_name)
144 #define MONO_GC_MAJOR_OBJ_ALLOC_LARGE_ENABLED() (0)
146 #define MONO_GC_MAJOR_OBJ_ALLOC_PINNED(addr,size,ns_name,class_name)
147 #define MONO_GC_MAJOR_OBJ_ALLOC_PINNED_ENABLED() (0)
149 #define MONO_GC_MAJOR_OBJ_ALLOC_DEGRADED(addr,size,ns_name,class_name)
150 #define MONO_GC_MAJOR_OBJ_ALLOC_DEGRADED_ENABLED() (0)
152 #define MONO_GC_MAJOR_OBJ_ALLOC_MATURE(addr,size,ns_name,class_name)
153 #define MONO_GC_MAJOR_OBJ_ALLOC_MATURE_ENABLED() (0)
156 #define MONO_GC_OBJ_MOVED(dest,src,dest_gen,src_gen,size,ns_name,class_name)
157 #define MONO_GC_OBJ_MOVED_ENABLED() (0)
160 #define MONO_GC_NURSERY_SWEPT(addr,len)
161 #define MONO_GC_NURSERY_SWEPT_ENABLED() (0)
163 #define MONO_GC_MAJOR_SWEPT(addr,len)
164 #define MONO_GC_MAJOR_SWEPT_ENABLED() (0)
167 #define MONO_GC_OBJ_PINNED(addr,size,ns_name,class_name,generation)
168 #define MONO_GC_OBJ_PINNED_ENABLED() (0)
171 #define MONO_GC_FINALIZE_ENQUEUE(addr,size,ns_name,class_name,generation,is_critical)
172 #define MONO_GC_FINALIZE_ENQUEUE_ENABLED() (0)
174 #define MONO_GC_FINALIZE_INVOKE(addr,size,ns_name,class_name)
175 #define MONO_GC_FINALIZE_INVOKE_ENABLED() (0)
178 #define MONO_GC_WEAK_UPDATE(ref_addr,old_addr,new_addr,size,ns_name,class_name,track)
179 #define MONO_GC_WEAK_UPDATE_ENABLED() (0)
182 #define MONO_GC_GLOBAL_REMSET_ADD(ref_addr,obj_addr,size,ns_name,class_name)
183 #define MONO_GC_GLOBAL_REMSET_ADD_ENABLED() (0)
185 #define MONO_GC_OBJ_CEMENTED(addr,size,ns_name,class_name)
186 #define MONO_GC_OBJ_CEMENTED_ENABLED() (0)
189 #define MONO_GC_INTERNAL_ALLOC(addr,size,type)
190 #define MONO_GC_INTERNAL_ALLOC_ENABLED() (0)
192 #define MONO_GC_INTERNAL_DEALLOC(addr,size,type)
193 #define MONO_GC_INTERNAL_DEALLOC_ENABLED() (0)