New implementation of BLACKHOLEs
[ghc-hetmet.git] / rts / sm / MarkWeak.h
1 /* -----------------------------------------------------------------------------
2  *
3  * (c) The GHC Team 1998-2008
4  *
5  * Weak pointers and weak-like things in the GC
6  *
7  * Documentation on the architecture of the Garbage Collector can be
8  * found in the online commentary:
9  * 
10  *   http://hackage.haskell.org/trac/ghc/wiki/Commentary/Rts/Storage/GC
11  *
12  * ---------------------------------------------------------------------------*/
13
14 #ifndef SM_MARKWEAK_H
15 #define SM_MARKWEAK_H
16
17 BEGIN_RTS_PRIVATE
18
19 extern StgWeak *old_weak_ptr_list;
20 extern StgTSO *resurrected_threads;
21 extern StgTSO *exception_threads;
22
23 void    initWeakForGC          ( void );
24 rtsBool traverseWeakPtrList    ( void );
25 void    markWeakPtrList        ( void );
26
27 END_RTS_PRIVATE
28
29 #endif /* SM_MARKWEAK_H */