X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmini%2Fjit.h;h=080531b607606fb3cff37f9b19f1366bf77e3efb;hb=32455dbbe90d3f7826a2bae5a95360e050f04172;hp=f78dd119de8fa234c3ba8b0b5a0cd595ef39168b;hpb=81b4a277b2b752b8b76c2613b83b07d6da13a0a2;p=mono.git diff --git a/mono/mini/jit.h b/mono/mini/jit.h index f78dd119de8..080531b6076 100644 --- a/mono/mini/jit.h +++ b/mono/mini/jit.h @@ -10,7 +10,7 @@ #include -G_BEGIN_DECLS +MONO_BEGIN_DECLS MonoDomain * mono_jit_init (const char *file); @@ -24,19 +24,40 @@ mono_jit_exec (MonoDomain *domain, MonoAssembly *assembly, void mono_jit_cleanup (MonoDomain *domain); -gboolean +mono_bool mono_jit_set_trace_options (const char* options); void -mono_set_signal_chaining (gboolean chain_signals); +mono_set_signal_chaining (mono_bool chain_signals); void -mono_jit_set_aot_only (gboolean aot_only); +mono_jit_set_aot_only (mono_bool aot_only); + +/* Allow embedders to decide wherther to actually obey breakpoint instructions + * in specific methods (works for both break IL instructions and Debugger.Break () + * method calls). + */ +typedef enum { + /* the default is to always obey the breakpoint */ + MONO_BREAK_POLICY_ALWAYS, + /* a nop is inserted instead of a breakpoint */ + MONO_BREAK_POLICY_NEVER, + /* the breakpoint is executed only if the program has ben started under + * the debugger (that is if a debugger was attached at the time the method + * was compiled). + */ + MONO_BREAK_POLICY_ON_DBG +} MonoBreakPolicy; + +typedef MonoBreakPolicy (*MonoBreakPolicyFunc) (MonoMethod *method); +void mono_set_break_policy (MonoBreakPolicyFunc policy_callback); void mono_jit_parse_options (int argc, char * argv[]); -G_END_DECLS +char* mono_get_runtime_build_info (void); + +MONO_END_DECLS #endif