Related articles |
---|
Register Allocators and Garbage Collectors rand.chars@gmail.com (Ori Bernstein) (2008-09-09) |
Re: Register Allocators and Garbage Collectors gneuner2@comcast.net (George Neuner) (2008-09-13) |
Re: Register Allocators and Garbage Collectors marcov@stack.nl (Marco van de Voort) (2008-09-14) |
Re: Register Allocators and Garbage Collectors niktechc@niktech.com (Sandeep Dutta) (2008-09-15) |
Re: Register Allocators and Garbage Collectors rand.chars@gmail.com (Ori Bernstein) (2008-09-15) |
Re: Register Allocators and Garbage Collectors rand.chars@gmail.com (Ori Bernstein) (2008-09-15) |
Re: Register Allocators and Garbage Collectors gneuner2@comcast.net (George Neuner) (2008-09-16) |
Re: Register Allocators and Garbage Collectors rand.chars@gmail.com (Ori Bernstein) (2008-09-17) |
From: | Marco van de Voort <marcov@stack.nl> |
Newsgroups: | comp.compilers |
Date: | Sun, 14 Sep 2008 09:54:21 +0000 (UTC) |
Organization: | Stack Usenet News Service |
References: | 08-09-052 |
Keywords: | GC |
Posted-Date: | 14 Sep 2008 16:59:24 EDT |
On 2008-09-10, Ori Bernstein <rand.chars@gmail.com> wrote:
>
> If we get a context switch between lines 2 and 3, then the only record
> of a root pointing to the newly allocated value is in register %eax,
> and is hidden from the debugger thread.
>
> How do garbage collectors deal with this problem typically? Does the
> compiler have to insert spill points which force the values onto the
> stack and invoke the GC? Am I just on crack thinking that there might
> be a problem?
I'm no GC expert, but I'd say that you detect roots to weed out certain
generation of blocks that can be cleaned.
So the solution is simple, don't add the "active" generation of blocks to
the generations to be cleaned.
Return to the
comp.compilers page.
Search the
comp.compilers archives again.