Hadrian: bump Cabal submodule, install extra dynamic flavours of RTS
[ghc.git] / rts / StableName.h
1 /* -----------------------------------------------------------------------------
2 *
3 * (c) The GHC Team, 1998-2004
4 *
5 * ---------------------------------------------------------------------------*/
6
7 #pragma once
8
9 #include "sm/GC.h" // for evac_fn below
10
11 #include "BeginPrivate.h"
12
13 void initStableNameTable ( void );
14 void exitStableNameTable ( void );
15 StgWord lookupStableName ( StgPtr p );
16
17 void rememberOldStableNameAddresses ( void );
18
19 void threadStableNameTable ( evac_fn evac, void *user );
20 void gcStableNameTable ( void );
21 void updateStableNameTable ( bool full );
22
23 void stableNameLock ( void );
24 void stableNameUnlock ( void );
25
26 #if defined(THREADED_RTS)
27 // needed by Schedule.c:forkProcess()
28 extern Mutex stable_name_mutex;
29 #endif
30
31 #include "EndPrivate.h"