rts: add Emacs 'Local Variables' to every .c file
[ghc.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://ghc.haskell.org/trac/ghc/wiki/Commentary/Rts/Storage/GC
11 *
12 * ---------------------------------------------------------------------------*/
13
14 #ifndef SM_MARKWEAK_H
15 #define SM_MARKWEAK_H
16
17 #include "BeginPrivate.h"
18
19 extern StgWeak *old_weak_ptr_list;
20 extern StgTSO *resurrected_threads;
21 extern StgTSO *exception_threads;
22
23 void collectFreshWeakPtrs ( void );
24 void initWeakForGC ( void );
25 rtsBool traverseWeakPtrList ( void );
26 void markWeakPtrList ( void );
27
28 #include "EndPrivate.h"
29
30 #endif /* SM_MARKWEAK_H */
31
32 // Local Variables:
33 // mode: C
34 // fill-column: 80
35 // indent-tabs-mode: nil
36 // c-basic-offset: 4
37 // buffer-file-coding-system: utf-8-unix
38 // End: