c0aeeb546dd8942e21a557457379713ed70644d0
[ghc-hetmet.git] / rts / sm / Evac.h
1 /* -----------------------------------------------------------------------------
2  *
3  * (c) The GHC Team 1998-2006
4  *
5  * Generational garbage collector: evacuation functions
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 // Use a register argument for evacuate, if available.
15 #if __GNUC__ >= 2
16 #define REGPARM1 __attribute__((regparm(1)))
17 #else
18 #define REGPARM1
19 #endif
20
21 REGPARM1 StgClosure * evacuate (StgClosure *q);
22
23 extern lnat thunk_selector_depth;