+void
+mono_profiler_stat_call_chain (int call_chain_depth, guchar **ips, void *context)
+{
+ if ((mono_profiler_events & MONO_PROFILE_STATISTICAL) && statistical_call_chain_cb)
+ statistical_call_chain_cb (current_profiler, call_chain_depth, ips, context);
+}
+
+void
+mono_profiler_exception_thrown (MonoObject *exception)
+{
+ if ((mono_profiler_events & MONO_PROFILE_EXCEPTIONS) && exception_throw_cb)
+ exception_throw_cb (current_profiler, exception);
+}
+
+void
+mono_profiler_exception_method_leave (MonoMethod *method)
+{
+ if ((mono_profiler_events & MONO_PROFILE_EXCEPTIONS) && exception_method_leave_cb)
+ exception_method_leave_cb (current_profiler, method);
+}
+
+void
+mono_profiler_exception_clause_handler (MonoMethod *method, int clause_type, int clause_num)
+{
+ if ((mono_profiler_events & MONO_PROFILE_EXCEPTIONS) && exception_clause_cb)
+ exception_clause_cb (current_profiler, method, clause_type, clause_num);
+}
+