X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FSanity.c;h=3f4b3cf7b05a81f0edf68b26f493f4d276f0028d;hb=59fa6266f00b6edcfc20c491c8de9a1b215dfa22;hp=71eae4490c2fda12a2f42990691760aabb12a57a;hpb=d600bf7a6afdbfc4a22f9379406a9c6f789a4c2d;p=ghc-hetmet.git diff --git a/rts/Sanity.c b/rts/Sanity.c index 71eae44..3f4b3cf 100644 --- a/rts/Sanity.c +++ b/rts/Sanity.c @@ -633,10 +633,12 @@ checkHeapChunk(StgPtr start, StgPtr end) #endif void -checkChain(bdescr *bd) +checkLargeObjects(bdescr *bd) { while (bd != NULL) { - checkClosure((StgClosure *)bd->start); + if (!(bd->flags & BF_PINNED)) { + checkClosure((StgClosure *)bd->start); + } bd = bd->link; } } @@ -794,7 +796,7 @@ checkGlobalTSOList (rtsBool checkTSOs) // be on the mutable list. if (tso->what_next == ThreadRelocated) continue; if (tso->flags & (TSO_DIRTY|TSO_LINK_DIRTY)) { - ASSERT(Bdescr((P_)tso)->gen_no == 0 || tso->flags & TSO_MARKED); + ASSERT(Bdescr((P_)tso)->gen_no == 0 || (tso->flags & TSO_MARKED)); tso->flags &= ~TSO_MARKED; } } @@ -824,7 +826,7 @@ checkMutableList( bdescr *mut_bd, nat gen ) } void -checkMutableLists (void) +checkMutableLists (rtsBool checkTSOs) { nat g, i; @@ -834,7 +836,7 @@ checkMutableLists (void) checkMutableList(capabilities[i].mut_lists[g], g); } } - checkGlobalTSOList(rtsTrue); + checkGlobalTSOList(checkTSOs); } /*