summaryrefslogtreecommitdiff
path: root/rts/sm/NonMoving.c
diff options
context:
space:
mode:
Diffstat (limited to 'rts/sm/NonMoving.c')
-rw-r--r--rts/sm/NonMoving.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/rts/sm/NonMoving.c b/rts/sm/NonMoving.c
index e11a029b5a..5a6b9e7837 100644
--- a/rts/sm/NonMoving.c
+++ b/rts/sm/NonMoving.c
@@ -204,13 +204,14 @@ static void nonmovingMark_(MarkQueue *mark_queue, StgWeak **dead_weaks, StgTSO *
static void nonmovingInitSegment(struct NonmovingSegment *seg, uint8_t log_block_size)
{
+ bdescr *bd = Bdescr((P_) seg);
seg->link = NULL;
seg->todo_link = NULL;
seg->next_free = 0;
seg->next_free_snap = 0;
- seg->log_block_size = log_block_size;
nonmovingClearBitmap(seg);
- Bdescr((P_)seg)->u.scan = nonmovingSegmentGetBlock(seg, 0);
+ bd->nonmoving_segment.log_block_size = log_block_size;
+ bd->u.scan = nonmovingSegmentGetBlock(seg, 0);
}
// Add a segment to the free list.