From 27f9a1f01e8c947c76923c58f32eeaa2260e1766 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Fri, 10 Jan 2025 16:39:39 +0100 Subject: [PATCH] gpcc: Temporarily always promote survivors Generational PCC is still a bit buggy. --- src/pcc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pcc.c b/src/pcc.c index ff10375ef..4b4a99700 100644 --- a/src/pcc.c +++ b/src/pcc.c @@ -324,7 +324,7 @@ static inline int do_minor_trace(struct gc_heap *heap, struct gc_edge edge, // However however, it is hard to distinguish between edges from promoted // objects and edges from old objects, so we mostly just rely on an // idempotent "log if unlogged" operation instead. - int promote = copy_space_should_promote(new_space, ref); + int promote = copy_space_should_promote(new_space, ref) || 1; struct copy_space *dst_space = promote ? old_space : new_space; struct copy_space_allocator *alloc = promote ? trace_worker_old_space_allocator(data)