On 11/1/06, Rana Dasgupta <[EMAIL PROTECTED]> wrote:

Maybe for GC's that don't support pinning, the JIT can compare
object->vtable->class for guarded
devirtiualization, or even not do guarded devirtualization, sort of
support
the GC in downlevel mode


I think this is not a long term solution for a JIT. IMO the best solutions
for a JIT with unpinned vtables would be
1) Short term: turn devirtualization off (As Egor has proposed)
2) Long term: patch devirtualization calls when GC moves object (usual
enumeration routine)

Storing vtable in the object without additional indirection in memory is
important from the performance POV.

--
Mikhail Fursov

Reply via email to