Olivier Galibert <galibert(a)pobox.com> writes:
Allocs chunks aligned on 4096, find the pointer to the
lrecord_implementation at address (object & ~4095).
4096 is an example, of course.
and the mark bits (or bytes) at (object & ~4095) + const +
const*offset_in_page(obj). i.e. it does
The
advantage of this idea is that you can take it further and make the
sweep breath first and mark (almost) nonrecursively etc..
Jan
P.S. You would start buy introducing the LRECORD_OTHER type which has
a fixed structure
struct lcrecord_order
{
void *data;
lrecord_impl *type;
}
If only my thesis was finished...
Jan