X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmini%2Fexceptions-s390.c;h=2e41bb787e4c6f3456e75e066aa1fb46c0b243ca;hb=102197b11d6ce990d2bdc2325ed944a05e780e40;hp=f7f464ad787cafc351f372ea0cdb99fe2b3f9a97;hpb=b585d00928892398dfbfc315ed78b8032fa14708;p=mono.git diff --git a/mono/mini/exceptions-s390.c b/mono/mini/exceptions-s390.c index f7f464ad787..2e41bb787e4 100644 --- a/mono/mini/exceptions-s390.c +++ b/mono/mini/exceptions-s390.c @@ -436,8 +436,7 @@ mono_arch_get_throw_exception_by_name (void) MonoJitInfo * mono_arch_find_jit_info (MonoDomain *domain, MonoJitTlsData *jit_tls, MonoJitInfo *res, MonoJitInfo *prev_ji, MonoContext *ctx, - MonoContext *new_ctx, char **trace, MonoLMF **lmf, - int *native_offset, gboolean *managed) + MonoContext *new_ctx, MonoLMF **lmf, gboolean *managed) { MonoJitInfo *ji; gpointer ip = MONO_CONTEXT_GET_IP (ctx); @@ -448,20 +447,13 @@ mono_arch_find_jit_info (MonoDomain *domain, MonoJitTlsData *jit_tls, ((guint8 *) ip <= ((guint8 *) prev_ji->code_start) + prev_ji->code_size))) ji = prev_ji; else - ji = mono_jit_info_table_find (domain, ip); - - if (trace) - *trace = NULL; - - if (native_offset) - *native_offset = -1; + ji = mini_jit_info_table_find (domain, ip, NULL); if (managed) *managed = FALSE; if (ji != NULL) { - char *source_location, *tmpaddr, *fname; - gint32 address, iloffset; + gint32 address; *new_ctx = *ctx; @@ -472,33 +464,10 @@ mono_arch_find_jit_info (MonoDomain *domain, MonoJitTlsData *jit_tls, address = (char *)ip - (char *)ji->code_start; - if (native_offset) - *native_offset = address; - if (managed) if (!ji->method->wrapper_type) *managed = TRUE; - if (trace) { - source_location = mono_debug_source_location_from_address (ji->method, address, NULL, domain); - iloffset = mono_debug_il_offset_from_address (ji->method, address, domain); - - if (iloffset < 0) - tmpaddr = g_strdup_printf ("<0x%08x>", address); - else - tmpaddr = g_strdup_printf ("[0x%08x]", iloffset); - - fname = mono_method_full_name (ji->method, TRUE); - - if (source_location) - *trace = g_strdup_printf ("in %s (at %s) %s", tmpaddr, source_location, fname); - else - *trace = g_strdup_printf ("in %s %s", tmpaddr, fname); - - g_free (fname); - g_free (source_location); - g_free (tmpaddr); - } sframe = (MonoS390StackFrame *) MONO_CONTEXT_GET_SP (ctx); MONO_CONTEXT_SET_BP (new_ctx, sframe->prev); sframe = (MonoS390StackFrame *) sframe->prev; @@ -512,12 +481,9 @@ mono_arch_find_jit_info (MonoDomain *domain, MonoJitTlsData *jit_tls, if (!(*lmf)->method) return (gpointer)-1; - if (trace) - *trace = g_strdup_printf ("in (unmanaged) %s", mono_method_full_name ((*lmf)->method, TRUE)); - - if ((ji = mono_jit_info_table_find (domain, (gpointer)(*lmf)->eip))) { + if ((ji = mini_jit_info_table_find (domain, (gpointer)(*lmf)->eip, NULL))) { } else { - memset (res, 0, sizeof (MonoJitInfo)); + memset (res, 0, MONO_SIZEOF_JIT_INFO); res->method = (*lmf)->method; }