Hi, R11 is a scratch register overwritten by a lot of code including various trampolines, so thats why we use r10.
Zoltan On Tue, May 21, 2013 at 4:13 AM, Wholesale <ga...@wholesalealgorithms.com>wrote: > Thanks for the info. > > I'm not sure it is possible to switch to 3.0, but I'll look into it. > > The register in my version is R11, should code be emitted to look up the > correct table or is mono_get_lmf_addr the correct call? > > > > On May 20, 2013, at 16:52, Zoltan Varga <var...@gmail.com> wrote: > > Hi, > > On Tue, May 21, 2013 at 1:37 AM, Gavin Dodd <ga...@wholesalealgorithms.com > > wrote: > >> >> To make things more interesting I'm working with a branch of mono 2.8 (I >> think) and I don't have any symbols for the AOT compiled code at run time, >> > > You should try a 3.0 based mono version first, you might be running into a > bug which is already fixed. > > >> >> >> My questions are: >> >> Is the lmf address the correct value for the return of >> mono_arch_find_imt_method? If not what should it be? >> What generates the IMT for AOT compiled code? >> What sets the IMT address table at run time and where is it stored? I >> haven't seen any breakpoints on IMT functions get hit at runtime. >> >> Thanks >> >> The C code is called from an IMT thunk, which is generated by > arch_emit_imt_thunk () in aot-compiler.c. The thunks are stored in a table > pointed to by the symbol 'imt_thunks' in the mscorlib aot image. > The thunk receives the imt argument in MONO_ARCH_IMT_REG which is r10 in > this case. This register needs to be set by the caller, which is AOT > generated code. > > Zoltan > > > >> Gavin >> >> >> >> >> _______________________________________________ >> Mono-devel-list mailing list >> Mono-devel-list@lists.ximian.com >> http://lists.ximian.com/mailman/listinfo/mono-devel-list >> >> >
_______________________________________________ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list