On the 0x20D day of Apache Harmony Mikhail Fursov wrote:
> On 10/25/06, Aleksey Ignatenko <[EMAIL PROTECTED]> wrote:
> >
> > Egor,
> > >But it has 1 more "cons" -- JIT should change it's devirtualizer
> > >accordingly to the VTable change. Doable, of course.
> > There is no need to change struct VTable structure - it could be simply
> > inlined in pinned VTable object + 1 additional reference field to
> > j.l.Class.
> > So there won't be too much work to do on JIT side.
> >
> +1 for "Automatic class unloading approach".
> But, please, keep vtables pinned in the first version. If you make vtable
> objects unpinned JIT have to track if the object is moved and patch all
> devirtualized calls (not a simple task..).

hm, keeping VTable pointers on operands (and reporting them in root
sets) solves the problem. That slightly increases register pressure,
but I think is a better solution than pinning VTables (and rather
straightforward).

-- 
Egor Pasko, Intel Managed Runtime Division

Reply via email to