[Mono-devel-list] Alias analysis

Ben Maurer bmaurer at ximian.com
Thu Jan 27 10:19:18 EST 2005


>
> On Thu, 2005-01-27 at 13:26, Ben Maurer wrote:
>> Here, I would say `just do deadce on variables that don't get the
>> address taken'.
>
> A bit suboptimal...

Not at all. Having an address taken is relatively rare.

>> I think the simpler way to do it is to avoid looking at
>>
>> blah.X as
>>
>> ldloca blah
>> ldfld X
>>
>> and as something like:
>>
>> ldloc blah
>> ldfld X
>>
>> COnsidering loading a value type field as taking the address of a
>> variable isn't good for the jit.
>
> The semantics of ldfld requires an address, and this is something
> I just cannot change...

I don't mean in the IL. I mean internally in the jit. The jit should see
th pattern:

ldloca blah
ldfld X

and realize that it is not *really* taking the address of `blah' but doing
an operation it understands with it. This actually applies to many other
value type operations as well.

-- Ben






More information about the Mono-devel-list mailing list