[Mono-devel-list] AMD64, PInvoke + Native Exceptions

Zoltan Varga vargaz at gmail.com
Mon Oct 25 10:46:51 EDT 2004


> > Even if this happens, there is an easy way out. As soon as you hit the
> > first method where the call site can not be patched, change the
> > trampoline be code to jmp to the compiled method. This avoids the huge
> > overhead on every call. The only disadvantage is that you end up
> > executing a tad bit more code per call. However, this small, unlikely
> > cost is likely amortized by the savings in code space elsewhere.
> 
> This can't be done with the current trampoline code: it would help if you went
> and read the code so you'd have some idea of the things you propose.
> 
> lupus
> 

This is implemented on amd64 with the current code. However, I agree that it is
pretty hard to guarantee that the caller and callee are in the same 2GB segment.

                  Zoltan

> --
> -----------------------------------------------------------------
> lupus at debian.org                                     debian/rules
> lupus at ximian.com                             Monkeys do it better
> 
> 
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>



More information about the Mono-devel-list mailing list