summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Valentine-House <matt@eightbitraptor.com>2022-04-01 14:59:36 +0100
committerPeter Zhu <peter@peterzhu.ca>2022-04-01 10:52:18 -0400
commit651b832c1b574df1c6095c49d77cccf0f250aa7f (patch)
treed1159b107fe4c1767fadf41091b8273d669ab071
parentfe21b7794af0cdb7ebd502e2c0da38c68fd89839 (diff)
extract magic number from gc_sweep_step
Notes
Notes: Merged: https://github.com/ruby/ruby/pull/5746
-rw-r--r--gc.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gc.c b/gc.c
index d0fd67b61e..bfd06200c0 100644
--- a/gc.c
+++ b/gc.c
@@ -954,6 +954,8 @@ struct heap_page {
#define GET_HEAP_WB_UNPROTECTED_BITS(x) (&GET_HEAP_PAGE(x)->wb_unprotected_bits[0])
#define GET_HEAP_MARKING_BITS(x) (&GET_HEAP_PAGE(x)->marking_bits[0])
+#define GC_SWEEP_PAGES_FREEABLE_PER_STEP 3
+
/* Aliases */
#define rb_objspace (*rb_objspace_of(GET_VM()))
#define rb_objspace_of(vm) ((vm)->objspace)
@@ -5678,7 +5680,7 @@ static int
gc_sweep_step(rb_objspace_t *objspace, rb_size_pool_t *size_pool, rb_heap_t *heap)
{
struct heap_page *sweep_page = heap->sweeping_page;
- int unlink_limit = 3;
+ int unlink_limit = GC_SWEEP_PAGES_FREEABLE_PER_STEP;
#if GC_ENABLE_INCREMENTAL_MARK
int swept_slots = 0;