1 /* -----------------------------------------------------------------------------
3 * (c) The GHC Team, 2000
7 * ---------------------------------------------------------------------------*/
12 /* initialize the object linker */
13 void initLinker( void );
15 /* insert a stable symbol in the hash table */
16 void insertStableSymbol(char* obj_name, char* key, StgPtr data);
18 /* insert a symbol in the hash table */
19 void insertSymbol(char* obj_name, char* key, void* data);
21 /* lookup a symbol in the hash table */
22 void *lookupSymbol( char *lbl );
24 /* delete an object from the pool */
25 HsInt unloadObj( char *path );
27 /* add an obj (populate the global symbol table, but don't resolve yet) */
28 HsInt loadObj( char *path );
30 /* resolve all the currently unlinked objects in memory */
31 HsInt resolveObjs( void );
33 /* load a dynamic library */
34 const char *addDLL( char* dll_name );
36 extern void markRootPtrTable(void (*)(StgClosure **));