* mini-amd64.c (mono_arch_find_imt_method): Handle mov reg,IMM64 case. Fixes
#82117.
svn path=/trunk/mono/; revision=82110
2007-07-17 Zoltan Varga <vargaz@gmail.com>
+ * mini-amd64.c (mono_arch_find_imt_method): Handle mov reg,IMM64 case. Fixes
+ #82117.
+
* mini-amd64.c (mono_arch_find_imt_method): Add some debug code to help find out
the cause of an assertion.
g_assert_not_reached ();
/* Find the start of the mov instruction */
- code -= 6;
- if (!(code [0] == 0x41 && code [1] == 0xbb)) {
+ code -= 10;
+ if (code [0] == 0x49 && code [1] == 0xbb) {
+ return (MonoMethod*)*(gssize*)(code + 2);
+ } else if (code [4] == 0x41 && code [5] == 0xbb) {
+ return (MonoMethod*)(gssize)*(guint32*)(code + 6);
+ } else {
int i;
printf ("Unknown call sequence: ");
for (i = -10; i < 20; ++i)
printf ("%x ", code [i]);
g_assert_not_reached ();
+ return NULL;
}
-
- return (MonoMethod*)(gssize)*(guint32*)(code + 2);
}
MonoObject*