GC Precision

dsimcha dsimcha at yahoo.com
Mon Oct 26 07:10:06 PDT 2009


== Quote from Sean Kelly (sean at invisibleduck.org)'s article
> dsimcha Wrote:
> > I just realized last night that D's templates are probably powerful enough now
> > to generate bit masks that can be used for precise GC heap scanning.  I'm
> > halfway (emphasis on halfway) thinking of using this to try to hack the GC and
> > make heap scanning fully precise except for the corner case of unions.
> > However, this ties into several things that others in the D community are
> > doing, so I want to gauge people's responses and make sure I'm not wasting
> > effort on something that will be useless in 6 months.
> >
> > 1.  Sean, Leonardo, whoever else may be working on GC implementations, have
> > you by any chance broken ground on precise heap scanning already?
> I've thought about it, but not done anything about it.  The compiler doesn't
provide this information, so precise scanning would require a user-level call.
You'll also have to deal with arrays of structs, by the way.

Arrays of structs are easy:  Generate a bitmask for one element, and keep reusing
that bitmask until the end of the block.  Am I missing something?



More information about the Digitalmars-d mailing list