On 10/26/06, Pavel Pervov <[EMAIL PROTECTED]> 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.
Pavel, 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. All, Let's allow to Alexey to commit his code as it is and discuss unpinning with details in future? -- Mikhail Fursov