harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mikhail Fursov" <mike.fur...@gmail.com>
Subject Re: [drlvm] Class unloading support
Date Thu, 26 Oct 2006 12:48:33 GMT
On 10/26/06, Pavel Pervov <pmcfirst@gmail.com> wrote:
> My statement is based on the following: JIT only needs vtable to call
> (interface) methods. If it's true, then I don't see where it will be
> necessary to enumerate vtables. The only possibility I can imagine is when
> JIT reuse vtable invoking several methods of the same object.

here is an example of the devirtualization: eax is an object reference:

cmp         eax,0  ;
je          0131E778 ;
mov         ecx,dword ptr [eax]
cmp         ecx,13D5250h

As you  see JIT hardcodes vtable as a constant. If you move it - you have to
enumerate it.

Let's allow to Alexey to commit his code as it is and discuss unpinning with
details in future?

Mikhail Fursov

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message