Skip to content

Commit

Permalink
Make during_compacting flag in GC one byte
Browse files Browse the repository at this point in the history
Commit c32218d turned during_compacting
flag to 2 byte to support the case when there is no write barrier. But
commit 32b7dcf changed compaction to
always enable the write barrier. This commit cleans up some of the
leftover code.
  • Loading branch information
peterzhu2118 committed Aug 10, 2021
1 parent 28d03ee commit 31612a0
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions gc.c
Original file line number Diff line number Diff line change
Expand Up @@ -715,7 +715,7 @@ typedef struct rb_objspace {
unsigned int dont_gc : 1;
unsigned int dont_incremental : 1;
unsigned int during_gc : 1;
unsigned int during_compacting : 2;
unsigned int during_compacting : 1;
unsigned int gc_stressful: 1;
unsigned int has_hook: 1;
unsigned int during_minor_gc : 1;
Expand Down Expand Up @@ -8915,7 +8915,7 @@ gc_start(rb_objspace_t *objspace, unsigned int reason)
objspace->flags.immediate_sweep = !!(reason & GPR_FLAG_IMMEDIATE_SWEEP);

/* Explicitly enable compaction (GC.compact) */
objspace->flags.during_compacting = (!!(reason & GPR_FLAG_COMPACT) << 1);
objspace->flags.during_compacting = !!(reason & GPR_FLAG_COMPACT);

if (!heap_allocated_pages) return FALSE; /* heap is not ready */
if (!(reason & GPR_FLAG_METHOD) && !ready_to_gc(objspace)) return TRUE; /* GC is not allowed */
Expand Down

0 comments on commit 31612a0

Please sign in to comment.