* mini-amd64.c (mono_arch_get_vcall_slot): Pass the start of the method to
mono_breakpoint_clean_code () when using LLVM as the prologues generated by
LLVM might be very short.
svn path=/trunk/mono/; revision=141189
+2009-09-03 Zoltan Varga <vargaz@gmail.com>
+
+ * mini-amd64.c (mono_arch_get_vcall_slot): Pass the start of the method to
+ mono_breakpoint_clean_code () when using LLVM as the prologues generated by
+ LLVM might be very short.
+
2009-09-01 Zoltan Varga <vargaz@gmail.com>
* exceptions-x86.c (throw_exception): Fix the previous change by substracting
guint32 reg;
gint32 disp;
guint8 rex = 0;
+ MonoJitInfo *ji;
- mono_breakpoint_clean_code (NULL, code, 9, buf, sizeof (buf));
+#ifdef ENABLE_LLVM
+ /* code - 9 might be before the start of the method */
+ /* FIXME: Avoid this expensive call somehow */
+ ji = mono_jit_info_table_find (mono_domain_get (), (char*)code);
+#endif
+
+ mono_breakpoint_clean_code (ji ? ji->code_start : NULL, code, 9, buf, sizeof (buf));
code = buf + 9;
*displacement = 0;