Author: martin
Date: 2007-11-22 04:58:12 -0500 (Thu, 22 Nov 2007)
New Revision: 90132

Modified:
   trunk/mono/mono/mini/ChangeLog
   trunk/mono/mono/mini/mini-amd64.c
   trunk/mono/mono/mini/mini-trampolines.c
Log:
2007-11-22  Martin Baulig  <[EMAIL PROTECTED]>

        * mini-amd64.c
        (mono_arch_get_delegate_invoke_impl): Call 
mono_debug_add_delegate_impl().

        * mini-trampolines.c
        (mono_delegate_trampoline): Call mono_debugger_trampoline_compiled()
        after compiling the method.



Modified: trunk/mono/mono/mini/ChangeLog
===================================================================
--- trunk/mono/mono/mini/ChangeLog      2007-11-22 09:57:07 UTC (rev 90131)
+++ trunk/mono/mono/mini/ChangeLog      2007-11-22 09:58:12 UTC (rev 90132)
@@ -1,3 +1,12 @@
+2007-11-22  Martin Baulig  <[EMAIL PROTECTED]>
+
+       * mini-amd64.c
+       (mono_arch_get_delegate_invoke_impl): Call 
mono_debug_add_delegate_impl().
+
+       * mini-trampolines.c
+       (mono_delegate_trampoline): Call mono_debugger_trampoline_compiled()
+       after compiling the method.
+
 2007-11-20  Martin Baulig  <[EMAIL PROTECTED]>
 
        * debug-mini.c

Modified: trunk/mono/mono/mini/mini-amd64.c
===================================================================
--- trunk/mono/mono/mini/mini-amd64.c   2007-11-22 09:57:07 UTC (rev 90131)
+++ trunk/mono/mono/mini/mini-amd64.c   2007-11-22 09:58:12 UTC (rev 90132)
@@ -5469,6 +5469,7 @@
                g_assert ((code - start) < 64);
 
                cached = start;
+               mono_debug_add_delegate_impl (start, code - start);
                mono_mini_arch_unlock ();
        } else {
                static guint8* cache [MAX_ARCH_DELEGATE_PARAMS + 1] = {NULL};
@@ -5501,6 +5502,7 @@
 
                cache [sig->param_count] = start;
                
+               mono_debug_add_delegate_impl (start, code - start);
                mono_mini_arch_unlock ();
        }
 

Modified: trunk/mono/mono/mini/mini-trampolines.c
===================================================================
--- trunk/mono/mono/mini/mini-trampolines.c     2007-11-22 09:57:07 UTC (rev 
90131)
+++ trunk/mono/mono/mini/mini-trampolines.c     2007-11-22 09:58:12 UTC (rev 
90132)
@@ -293,7 +293,7 @@
        MonoDelegate *delegate;
        MonoJitInfo *ji;
        gpointer iter;
-       MonoMethod *invoke;
+       MonoMethod *invoke, *m;
        gboolean multicast, callvirt;
 
        /* Find the Invoke method */
@@ -314,8 +314,10 @@
         */
        ji = mono_jit_info_table_find (domain, mono_get_addr_from_ftnptr 
(delegate->method_ptr));
        callvirt = !delegate->target && ji && mono_method_signature 
(ji->method)->hasthis;
-       if (ji && !callvirt)
+       if (ji && !callvirt) {
                delegate->method_ptr = mono_compile_method (ji->method);
+               mono_debugger_trampoline_compiled (ji->method, 
delegate->method_ptr);
+       }
 
        multicast = ((MonoMulticastDelegate*)delegate)->prev != NULL;
        if (!multicast && !callvirt) {
@@ -328,7 +330,10 @@
        }
 
        /* The general, unoptimized case */
-       delegate->invoke_impl = mono_compile_method 
(mono_marshal_get_delegate_invoke (invoke, delegate));
+       m = mono_marshal_get_delegate_invoke (invoke, delegate);
+       delegate->invoke_impl = mono_compile_method (m);
+       mono_debugger_trampoline_compiled (m, delegate->invoke_impl);
+
        return delegate->invoke_impl;
 }
 

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to