[Mono-dev] Ping on nternal call builders
kumpera at gmail.com
Wed Jul 30 10:03:48 EDT 2008
On Wed, Jul 30, 2008 at 4:08 AM, Massimiliano Mantione <massi at ximian.com>wrote:
> I know finding a spare bit in MonoMethod is impossible :-)
> On Tue, 2008-07-29 at 20:48 -0300, Rodrigo Kumpera wrote:
> > Other option is to kill the inline_info bit in MonoMethod and
> > use the space for a force_inline bit. inline_info can easily
> > be replaced by a hash table in mini.c. This would be more
> > general and useful.
> About this point I'm not so sure...
> The hash would likely need a lock to be used, and even if only
> the methods that we try (and fail) to inline are put into it,
> the memory and time wasted will probably be relatively high.
> And we should also remember to free its entries when we unload
The inline_info bit is the only one that's doable to kill. That's because
it's only used for mono_jit_stats.inlineable_methods. The jit lock can be
used here without any issues.
> IMHO, it is just easier to force inlining according to wrapper
> type: IIRC we already force inlining of certain wrappers, so we
> would not change the code logic that much.
> And if there are two "kinds" of "managed to managed" wrappers,
> one that must be forced inline and one not, we could just
> declare those two wrapper types explicitly...
I guess we could do it either way, as the AOT compiler would still
need some knowledge about.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Mono-devel-list