[commit: ghc] master: Do not scavenge SMALL_MUT_ARR_PTRS_CLEAN in mut_lists (635a59a)
git at git.haskell.org
git at git.haskell.org
Thu Jun 7 04:06:30 UTC 2018
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/635a59a5038fc6f4d8ea0a2c7e3f75057deb4e5e/ghc
>---------------------------------------------------------------
commit 635a59a5038fc6f4d8ea0a2c7e3f75057deb4e5e
Author: Ömer Sinan Ağacan <omeragacan at gmail.com>
Date: Thu Jun 7 07:05:12 2018 +0300
Do not scavenge SMALL_MUT_ARR_PTRS_CLEAN in mut_lists
For the same reason with MUT_ARR_PTRS_CLEAN we don't need to scavenge
SMALL_MUT_ARR_PTRS_CLEAN in mut_lists.
Because SMALL_MUT_ARR_PTRS doesn't have a card table we don't have a
special case when scavenging SMALL_MUT_ARR_PTRS_DIRTY in a mut_list.
Test Plan: this validates
Reviewers: simonmar, bgamari, erikd
Reviewed By: simonmar, bgamari
Subscribers: rwbarton, thomie, carter
Differential Revision: https://phabricator.haskell.org/D4800
>---------------------------------------------------------------
635a59a5038fc6f4d8ea0a2c7e3f75057deb4e5e
rts/sm/Scav.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/rts/sm/Scav.c b/rts/sm/Scav.c
index 26687b8..39374c0 100644
--- a/rts/sm/Scav.c
+++ b/rts/sm/Scav.c
@@ -1583,6 +1583,7 @@ scavenge_mutable_list(bdescr *bd, generation *gen)
//
switch (get_itbl((StgClosure *)p)->type) {
case MUT_ARR_PTRS_CLEAN:
+ case SMALL_MUT_ARR_PTRS_CLEAN:
recordMutableGen_GC((StgClosure *)p,gen_no);
continue;
case MUT_ARR_PTRS_DIRTY:
More information about the ghc-commits
mailing list