Problem
The direct object-churn profile still spends material time in per-cell sweep/backing release. zig-gc currently calls the backing allocator once for every dead object; GcCellBacking then repeats size-class dispatch, ownership lookup, and free-bitmap accounting.
Plan
- Implement the optional batched sweep-release hook proposed in zig-utils/zig-gc#20.
- Add a
GcCellBackingsame-size release path that acquires a bucket once and preserves exact live/free counters and duplicate-free assertions. - Retain generic allocator fallback for non-cell/delegated storage.
- Add focused backing and GC reclamation tests.
- Run exact interleaved baseline/candidate object-churn A/B before retaining.
Parent: #97 and #44. Backward compatibility is not required, but collector correctness and exact checksums are.