[Mono-dev] Building Mono on Linux/Alpha

Sergey Tikhonov tsv at solvo.ru
Sun Aug 20 16:53:00 EDT 2006


Sergey Tikhonov wrote:

> Zoltan Varga wrote:
>
>> Yes, it doesn't work because they are not implemented.
>>
>> The logic is the following: get_vcall_slot_addr () should determine 
>> whenever the
>> call which called the trampoline is a virtual call, and if it is, then
>
>
> Ok. I was comparing different call signatures and it seems that I 
> would have to
> mark virtual calls some how (like ia64 does in one case), but I will 
> look again.

Apparently, virtual call in "test_44_unbox_trampoline o.GetHashCode ();" 
is made by using "call_membase" opcode
(I added some addition native codes for OP_VCALL_MEMBASE, but it hasn't 
been called.) So, I guess get_vcall_slot_addr ()
some how should determine virtual call only by call signature. :( Am I 
right?

I did implement get_vcall_slot_addr() & get_unbox_trampoline() and now 
"test_44_unbox trampoline" is passed (even
whole TestDriver started to work. :) Now it does all preparation work 
and starts to call tests. Wow. :)

Regards,
Sergey.

tsv at solvo.ru
Solvo Ltd.




More information about the Mono-devel-list mailing list