summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2019-12-18 13:25:42 -0500
committerBen Gamari <ben@smart-cactus.org>2019-12-18 13:25:42 -0500
commite2ae6fbe5f718aa4948b0dfcc37b858496e2feeb (patch)
tree488ccfbab0aa7953a9bf2cf029ef85be33551e2a
parentc8972cadcc0093ae49197a7a175e205bda567aa5 (diff)
downloadhaskell-wip/drop-bdescr-start.tar.gz
-rw-r--r--rts/sm/GCUtils.c2
-rw-r--r--rts/sm/Scav.c6
2 files changed, 4 insertions, 4 deletions
diff --git a/rts/sm/GCUtils.c b/rts/sm/GCUtils.c
index f491fdd992..30ed8e6259 100644
--- a/rts/sm/GCUtils.c
+++ b/rts/sm/GCUtils.c
@@ -341,7 +341,7 @@ alloc_todo_block (gen_workspace *ws, uint32_t size)
ws->todo_bd = bd;
ws->todo_free = bdescr_free(bd);
ws->todo_lim = stg_min(bdescr_start(bd) + bd->blocks * BLOCK_SIZE_W,
- bdescr_free(bd) + stg_max(WORK_UNIT_WORDS,size));
+ ws->todo_free + stg_max(WORK_UNIT_WORDS,size));
// See Note [big objects]
debugTrace(DEBUG_gc, "alloc new todo block %p for gen %d",
diff --git a/rts/sm/Scav.c b/rts/sm/Scav.c
index 4c2e3e5ae4..989103c672 100644
--- a/rts/sm/Scav.c
+++ b/rts/sm/Scav.c
@@ -842,11 +842,11 @@ loop: ;
}
debugTrace(DEBUG_gc, " scavenged %ld bytes",
- (unsigned long)((bdescr_free(bd) - bd->u.scan) * sizeof(W_)));
+ (unsigned long)((free - bd->u.scan) * sizeof(W_)));
// update stats: this is a block that has been scavenged
- gct->scanned += bdescr_free(bd) - bd->u.scan;
- bd->u.scan = bdescr_free(bd);
+ gct->scanned += free - bd->u.scan;
+ bd->u.scan = free;
if (bd != ws->todo_bd) {
// we're not going to evac any more objects into