Potential GSoC project - GC improvements

Chris Wright via Digitalmars-d digitalmars-d at puremagic.com
Sun Mar 13 17:27:40 PDT 2016


On Sun, 13 Mar 2016 23:46:51 +0000, deadalnix wrote:

> On Sunday, 13 March 2016 at 23:34:44 UTC, Adam Wilson wrote:
>> Is there an implementation of a conservative moving (compacting) GC out
>> there? I'm not aware of one, but there are a lot of GC's out there.
>> Boehm isn't.
>>
>>
> That is impossible, you need to know what is and isn't a pointer to be
> able to move things around.

Let's say we do the most precise GC possible for D. We can categorize 
things into:
 * maybe a pointer; it's part of a union that contains a non-pointer 
element
 * definitely a pointer (we know because of stack pointer maps and type 
information, and there aren't any unions mucking it up)
 * definitely not a pointer

We can move anything that has only "definitely a pointer"s pointing at 
it. We can't move anything that has one or more "maybe a pointer"s 
pointing at it.

I keep saying this...


More information about the Digitalmars-d mailing list