[profiler] Split method_leave callback into a method_tail_call callback.
[mono.git] / samples / profiler / sample.c
index a5ee4435ea6843b554b986cf344e6276d833619d..a210317e913b7740b4d564c94849c82c21902d8f 100644 (file)
@@ -2,9 +2,9 @@
 
 /*
  * Bare bones profiler. Compile with:
- * 
+ *
  * linux : gcc -fPIC -shared -o libmono-profiler-sample.so sample.c `pkg-config --cflags --libs mono-2`
- * mac : gcc sample.c -o mono-profiler-sample.dylib -Dmono_free=free -lz `pkg-config --cflags mono-2` -undefined suppress -flat_namespace  
+ * mac : gcc -o mono-profiler-sample.dylib sample.c -lz `pkg-config --cflags mono-2` -undefined suppress -flat_namespace
  * linux with a custom prefix (e.g. --prefix=/opt/my-mono-build):
  *     gcc -fPIC -shared -o libmono-profiler-sample.so sample.c `PKG_CONFIG_PATH=/opt/my-mono-build/lib/pkgconfig/ pkg-config --cflags --libs mono-2`
  *
@@ -35,15 +35,10 @@ sample_method_enter (MonoProfiler *prof, MonoMethod *method, MonoProfilerCallCon
        prof->ncalls++;
 }
 
-static void
-sample_method_leave (MonoProfiler *prof, MonoMethod *method, MonoProfilerCallContext *ctx)
-{
-}
-
 static MonoProfilerCallInstrumentationFlags
 sample_instrumentation_filter (MonoProfiler *prof, MonoMethod *method)
 {
-       return MONO_PROFILER_CALL_INSTRUMENTATION_PROLOGUE | MONO_PROFILER_CALL_INSTRUMENTATION_EPILOGUE;
+       return MONO_PROFILER_CALL_INSTRUMENTATION_ENTER;
 }
 
 /* the entry point */
@@ -56,7 +51,6 @@ mono_profiler_init_sample (const char *desc)
        mono_profiler_set_runtime_shutdown_end_callback (handle, sample_shutdown);
        mono_profiler_set_call_instrumentation_filter_callback (handle, sample_instrumentation_filter);
        mono_profiler_set_method_enter_callback (handle, sample_method_enter);
-       mono_profiler_set_method_leave_callback (handle, sample_method_leave);
 }