D-Programming-Language/druntime — pull request #1073 by MartinNowak (2014-12-26 00:19:03+00:00)
Title: use todo stack when traversing GC heap

- collect all live objects in a todo stack
to be marked later

- remove outer anychanges loop and scan GCBits

- only mark todo items after current mark(p1, p2) is done
to benefit from cache locality, prefetcher and tail recursion