[parrot/parrot] 0f8993: Implement 2-pass sweep.
GitHub
noreply at github.com
Fri May 11 00:48:32 UTC 2012
Branch: refs/heads/whiteknight/gc_two_stage_sweep
Home: https://github.com/parrot/parrot
Commit: 0f8993b772b770a2390a0ac2132c48fac7142073
https://github.com/parrot/parrot/commit/0f8993b772b770a2390a0ac2132c48fac7142073
Author: Whiteknight <wknight8111 at gmail.com>
Date: 2012-05-10 (Thu, 10 May 2012)
Changed paths:
M src/gc/gc_gms.c
Log Message:
-----------
Implement 2-pass sweep.
Sweep all generations looking for dead PMCs. Call VTABLE_destroy if necessary and add them to a dead_list. Next, iterate the dead_list, freeing memory. This scheme should completely avoid order-of-destruction issues, because all PMCs are kept alive until all destroy vtables are called. moritz++ for the idea. bacek++ for writing such easy-to-hack GC code.
More information about the parrot-commits
mailing list