#include <mono/metadata/appdomain.h>
#include <mono/metadata/threads-types.h>
-#define _IN_THE_MONO_DEBUGGER
#include <mono/metadata/mono-debug-debugger.h>
#include <mono/utils/valgrind.h>
MonoDebugMethodJitInfo *jit;
MonoMethodHeader *header;
MonoMethodSignature *sig;
- MonoDebugMethodAddress *debug_info;
MonoMethod *method;
int i;
for (i = 0; i < jit->num_line_numbers; i++)
jit->line_numbers [i] = g_array_index (info->line_numbers, MonoDebugLineNumberEntry, i);
- debug_info = mono_debug_add_method (cfg->method_to_register, jit, cfg->domain);
+ mono_debug_add_method (cfg->method_to_register, jit, cfg->domain);
mono_debug_add_vg_method (method, jit);
- mono_debugger_check_breakpoints (method, debug_info);
-
mono_debug_free_method_jit_info (jit);
mono_debug_free_method (cfg);
}
break;
case MONO_DEBUG_VAR_ADDRESS_MODE_REGOFFSET:
case MONO_DEBUG_VAR_ADDRESS_MODE_REGOFFSET_INDIR:
+ case MONO_DEBUG_VAR_ADDRESS_MODE_VTADDR:
encode_value (var->offset, p, &p);
break;
case MONO_DEBUG_VAR_ADDRESS_MODE_GSHAREDVT_LOCAL:
- case MONO_DEBUG_VAR_ADDRESS_MODE_VTADDR:
case MONO_DEBUG_VAR_ADDRESS_MODE_DEAD:
break;
default:
}
size = ((jit->num_params + jit->num_locals + 1) * 10) + (jit->num_line_numbers * 10) + 64;
- p = buf = g_malloc (size);
+ p = buf = (guint8 *)g_malloc (size);
encode_value (jit->epilogue_begin, p, &p);
encode_value (jit->prologue_end, p, &p);
encode_value (jit->code_size, p, &p);
break;
case MONO_DEBUG_VAR_ADDRESS_MODE_REGOFFSET:
case MONO_DEBUG_VAR_ADDRESS_MODE_REGOFFSET_INDIR:
+ case MONO_DEBUG_VAR_ADDRESS_MODE_VTADDR:
var->offset = decode_value (p, &p);
break;
case MONO_DEBUG_VAR_ADDRESS_MODE_GSHAREDVT_LOCAL:
- case MONO_DEBUG_VAR_ADDRESS_MODE_VTADDR:
case MONO_DEBUG_VAR_ADDRESS_MODE_DEAD:
break;
default:
mono_debug_free_method_jit_info (jit);
}
-void
-mono_debug_add_icall_wrapper (MonoMethod *method, MonoJitICallInfo* callinfo)
-{
- if (!mono_debug_enabled ())
- return;
-
- // mono_debug_add_wrapper (method, callinfo->wrapper, callinfo->func);
-}
-
static void
print_var_info (MonoDebugVarInfo *info, int idx, const char *name, const char *type)
{
mono_debug_print_vars (gpointer ip, gboolean only_arguments)
{
MonoDomain *domain = mono_domain_get ();
- MonoJitInfo *ji = mono_jit_info_table_find (domain, ip);
+ MonoJitInfo *ji = mono_jit_info_table_find (domain, (char *)ip);
MonoDebugMethodJitInfo *jit;
int i;
* breakpoint when the method is JITed.
*/
-static GPtrArray *breakpoints = NULL;
+static GPtrArray *breakpoints;
static int
mono_debugger_insert_breakpoint_full (MonoMethodDesc *desc)
return 0;
for (i = 0; i < breakpoints->len; i++) {
- MiniDebugBreakpointInfo *info = g_ptr_array_index (breakpoints, i);
+ MiniDebugBreakpointInfo *info = (MiniDebugBreakpointInfo *)g_ptr_array_index (breakpoints, i);
if (!mono_method_desc_full_match (info->desc, method))
continue;