X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2Fsm%2FMarkWeak.h;h=5c05ab249996f672af59bfa7438e109739c8e0a0;hb=9dd9e3c4cc170185e5bbdb7b49eb21c553b9b4fc;hp=0b5bd1ed8fd34a5eba44bae8d7bef96c4f863ccb;hpb=ab0e778ccfde61aed4c22679b24d175fc6cc9bf3;p=ghc-hetmet.git diff --git a/rts/sm/MarkWeak.h b/rts/sm/MarkWeak.h index 0b5bd1e..5c05ab2 100644 --- a/rts/sm/MarkWeak.h +++ b/rts/sm/MarkWeak.h @@ -1,15 +1,29 @@ /* ----------------------------------------------------------------------------- * - * (c) The GHC Team 1998-2006 + * (c) The GHC Team 1998-2008 * * Weak pointers and weak-like things in the GC * + * Documentation on the architecture of the Garbage Collector can be + * found in the online commentary: + * + * http://hackage.haskell.org/trac/ghc/wiki/Commentary/Rts/Storage/GC + * * ---------------------------------------------------------------------------*/ +#ifndef SM_MARKWEAK_H +#define SM_MARKWEAK_H + +BEGIN_RTS_PRIVATE + extern StgWeak *old_weak_ptr_list; extern StgTSO *resurrected_threads; +extern StgTSO *exception_threads; void initWeakForGC ( void ); rtsBool traverseWeakPtrList ( void ); void markWeakPtrList ( void ); -rtsBool traverseBlackholeQueue ( void ); + +END_RTS_PRIVATE + +#endif /* SM_MARKWEAK_H */