Questions about GC, _Jv_MarkObj() and reflection data.
Tue Feb 7 17:22:00 GMT 2006
Tom Tromey writes:
> >>>>> "David" == David Daney <email@example.com> writes:
> David> Currently in make_class_data (in class.c) the call to
> David> get_dispatch_table (which creates the vtable and thus the GC
> David> descriptor) is done after all the reflection data is generated. My
> David> plan is to move it before the field and method arrays are built. Then
> David> it should be fairly simple to extract the GC descriptor from the
> David> dispatch table tree and use that to decide if field reflection data is
> David> needed for reference fields.
> David> Does anyone foresee a problem with doing it this way?
> Not offhand.
> Another approach which is more space efficient is to fall back to
> conservative scanning for classes which can't be described using a
> bitmap. Off the top of my head I don't know exactly how you'd
> implement this.
Just make _Jv_MarkObj() do it. It's the easiest solution, for sure.
More information about the Java