[Mono-dev] mono inlining

crashfourit crashfourit at gmail.com
Fri Jan 16 21:54:30 EST 2009




Rodrigo Kumpera wrote:
> 
> You mean not having a size restriction for inlining methods or Mono.Simd?
> Well, I pretty much hate the idea of having such special casing in the
> jit.
> It won't make stuff work better
> and will increase the amount of voodoo inside the JIT, which is bad.
> 
> And, besides that, inlining the code in Mono.Simd won't cut unless the JIT
> implements a value-scalar
> replacement optimization to decompose vtype members into regular scalar
> ops.
> 
> What would be useful would be JIT hinting to force inlining. This would be
> more broad and useful. This
> has been discussed before and had a general agreement that would be
> useful.
> 
> Feel free to implement both optimizations, I'll gladly review them.
> 
> Cheers,
> Rodrigo
> 
> 
> On Fri, Jan 16, 2009 at 8:55 PM, crashfourit <crashfourit at gmail.com>
> wrote:
> 
>>
>> I was wondering what would people here think about ignoring the
>> "inline_limit_inited" on line 3332 in method_to_ir.c for a few specific
>> cases: Operator overloads, getters and setters, and the methods in
>> Vector4f
>> when they are not being accelerated.
>>
> 


You mean make an attribute that when used on a method or a class will hint
to the jit to ignore the method size limit?
 
I know where to put the changes for that.. but however I really don't know
how to check for an attribute in the jit engine. I'll try to find out myself
but any hints would be useful.

"And, besides that, inlining the code in Mono.Simd won't cut unless the JIT
implements a value-scalar
replacement optimization to decompose vtype members into regular scalar
ops."

And why is this the case?

-- 
View this message in context: http://www.nabble.com/mono-inlining-tp21510132p21512361.html
Sent from the Mono - Dev mailing list archive at Nabble.com.



More information about the Mono-devel-list mailing list