• Ömer Sinan Ağacan's avatar
    Zero any slop after compaction in compacting GC · 3aa9b35f
    Ömer Sinan Ağacan authored
    In copying GC, with the relevant debug flags enabled, we release the old
    blocks after a GC, and the block allocator zeroes the space before
    releasing a block. This effectively zeros the old heap.
    In compacting GC we reuse the blocks and previously we didn't zero the
    unused space in a compacting generation after compaction. With this
    patch we zero the slop between the free pointer and the end of the block
    when we're done with compaction and when switching to a new block
    (because the current block doesn't have enough space for the next object
    we're shifting).
Compact.c 25.4 KB