diff options
author | Ömer Sinan Ağacan <omeragacan@gmail.com> | 2018-06-07 07:05:12 +0300 |
---|---|---|
committer | Ömer Sinan Ağacan <omeragacan@gmail.com> | 2018-06-07 07:05:25 +0300 |
commit | 635a59a5038fc6f4d8ea0a2c7e3f75057deb4e5e (patch) | |
tree | 512ab6716c49d239d2a39440417e55d8cd08e8b1 /rts | |
parent | d964b054d530ea9e29ed051fdf2b49a6afe465fb (diff) | |
download | haskell-635a59a5038fc6f4d8ea0a2c7e3f75057deb4e5e.tar.gz |
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
Diffstat (limited to 'rts')
-rw-r--r-- | rts/sm/Scav.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/rts/sm/Scav.c b/rts/sm/Scav.c index 26687b880a..39374c057f 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: |