<div dir="ltr">Hi,<div><br></div><div style>  R11 is a scratch register overwritten by a lot of code including various trampolines, so thats why we use r10.</div><div style><br></div><div style>                   Zoltan</div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, May 21, 2013 at 4:13 AM, Wholesale <span dir="ltr"><<a href="mailto:gavin@wholesalealgorithms.com" target="_blank">gavin@wholesalealgorithms.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div>Thanks for the info. </div><div><br></div><div>I'm not sure it is possible to switch to 3.0, but I'll look into it. </div>
<div><br></div><div>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?</div><div><div class="h5"><div><br></div><div><br></div><div><br>On May 20, 2013, at 16:52, Zoltan Varga <<a href="mailto:vargaz@gmail.com" target="_blank">vargaz@gmail.com</a>> wrote:<br>
<br></div><blockquote type="cite"><div><div dir="ltr">Hi,<div><br></div><div class="gmail_extra"><div class="gmail_quote">On Tue, May 21, 2013 at 1:37 AM, Gavin Dodd <span dir="ltr"><<a href="mailto:gavin@wholesalealgorithms.com" target="_blank">gavin@wholesalealgorithms.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="font-size:10pt;font-family:lucida console,sans-serif"><div><br></div><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif">

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,</div></div></div></blockquote><div><br></div><div>You should try a 3.0 based mono version first, you might be running into a bug which is already fixed.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="font-size:10pt;font-family:lucida console,sans-serif"><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif">

<br></div><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif"><br></div><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif">

My questions are:</div><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif"><br></div><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif">

Is the lmf address the correct value for the return of mono_arch_find_imt_method? If not what should it be?</div><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif">

What generates the IMT for AOT compiled code? <br></div><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif">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.</div>

<div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif"><br></div><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif">

Thanks</div><span><font color="#888888"><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif"><br></div></font></span></div></div></blockquote>
<div>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.</div>

<div>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.</div><div><br></div><div>                       Zoltan</div>

<div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="font-size:10pt;font-family:lucida console,sans-serif"><span><font color="#888888"><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif">

</div><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif">Gavin<br></div><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif">

<br></div><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif"><br></div><div style="font-style:normal;font-size:13.3333px;background-color:transparent;font-family:lucida console,sans-serif">

<br></div></font></span></div></div><br>_______________________________________________<br>
Mono-devel-list mailing list<br>
<a href="mailto:Mono-devel-list@lists.ximian.com" target="_blank">Mono-devel-list@lists.ximian.com</a><br>
<a href="http://lists.ximian.com/mailman/listinfo/mono-devel-list" target="_blank">http://lists.ximian.com/mailman/listinfo/mono-devel-list</a><br>
<br></blockquote></div><br></div></div>
</div></blockquote></div></div></div></blockquote></div><br></div>