• Rudi Chen's avatar
    Basic infrastructure for implementing a prototype moving gc. · e96bf9a9
    Rudi Chen authored
    - Refactor the stack logic into a separate data structure ChunkedStack,
      keep the push function that deals with marking as functionality specific
      to a subclass of ChunkedStack (no virtual, just reuse code).
    - Add an additional (disabled) phase that maps out the reference graph
      reachable objects after the sweep phase. Prepare moving all objects in
      the small heap.
    
    Also, rename TraceStack to TraversalWorklist because the fact
    that we're using a stack is an implementation detail.
    e96bf9a9
collector.cpp 30 KB