diff options
Diffstat (limited to 'rts/HeapStackCheck.cmm')
-rw-r--r-- | rts/HeapStackCheck.cmm | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/rts/HeapStackCheck.cmm b/rts/HeapStackCheck.cmm index a1fb5d446d..a1e18ca0f0 100644 --- a/rts/HeapStackCheck.cmm +++ b/rts/HeapStackCheck.cmm @@ -97,7 +97,12 @@ stg_gc_noregs && bdescr_link(CurrentNursery) != NULL) { HpAlloc = 0; CLOSE_NURSERY(); + Capability_total_allocated(MyCapability()) = + Capability_total_allocated(MyCapability()) + + BYTES_TO_WDS(bdescr_free(CurrentNursery) - + bdescr_start(CurrentNursery)); CurrentNursery = bdescr_link(CurrentNursery); + bdescr_free(CurrentNursery) = bdescr_start(CurrentNursery); OPEN_NURSERY(); if (Capability_context_switch(MyCapability()) != 0 :: CInt || Capability_interrupt(MyCapability()) != 0 :: CInt || |