aboutsummaryrefslogtreecommitdiffstats
path: root/mps/code/pool.c
diff options
context:
space:
mode:
authorDavid Lovemore2012-09-03 17:05:51 +0100
committerDavid Lovemore2012-09-03 17:05:51 +0100
commit886e96ba8e0bc2fbda89ce7c8e417ff5c5df23a8 (patch)
treece26936b76bfa4f1638ea1678fd8718598d65710 /mps/code/pool.c
parent274979e8cbb97f74cc448f5e6e8cdbcaf8d033f9 (diff)
downloademacs-886e96ba8e0bc2fbda89ce7c8e417ff5c5df23a8.tar.gz
emacs-886e96ba8e0bc2fbda89ce7c8e417ff5c5df23a8.zip
Fix weak band assert. we now trace weak segments as weak on a fault if we are in the weak band.
Copied from Perforce Change: 179210 ServerID: perforce.ravenbrook.com
Diffstat (limited to 'mps/code/pool.c')
-rw-r--r--mps/code/pool.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/mps/code/pool.c b/mps/code/pool.c
index 55e70ff1462..ad96054f7f0 100644
--- a/mps/code/pool.c
+++ b/mps/code/pool.c
@@ -393,12 +393,10 @@ Res PoolScan(Bool *totalReturn, ScanState ss, Pool pool, Seg seg)
393 /* The segment must belong to the pool. */ 393 /* The segment must belong to the pool. */
394 AVER(pool == SegPool(seg)); 394 AVER(pool == SegPool(seg));
395 395
396 /* We actually want to check that the rank we are scanning at */ 396 /* We check that either ss->rank is in the segment's
397 /* (ss->rank) is at least as big as all the ranks in */ 397 * ranks, or that ss->rank is exact. The check is more complicated if
398 /* the segment (SegRankSet(seg)). It is tricky to check that, */ 398 * we actually have multiple ranks in a seg.
399 /* so we only check that either ss->rank is in the segment's */ 399 * See <code/trace.c#scan.conservative> */
400 /* ranks, or that ss->rank is exact. */
401 /* See <code/trace.c#scan.conservative> */
402 AVER(ss->rank == RankEXACT || RankSetIsMember(SegRankSet(seg), ss->rank)); 400 AVER(ss->rank == RankEXACT || RankSetIsMember(SegRankSet(seg), ss->rank));
403 401
404 /* Should only scan segments which contain grey objects. */ 402 /* Should only scan segments which contain grey objects. */