Commit cb73be01 authored by Simon Marlow's avatar Simon Marlow
Browse files

add some more GC roots (fixes conc048, and possibly some others)

parent 2493950a
......@@ -225,11 +225,19 @@ hs_init(int *argc, char **argv[])
/* initialise the stable pointer table */
initStablePtrTable();
/* Add some GC roots (using stable pointers): these are needed by
* all foreign export stubs, so they have to be treated as
/* Add some GC roots for things in the base package that the RTS
* knows about. We don't know whether these turn out to be CAFs
* or refer to CAFs, but we have to assume that they might.
*/
getStablePtr((StgPtr)base_GHCziTopHandler_runIO_closure);
getStablePtr((StgPtr)base_GHCziTopHandler_runNonIO_closure);
getStablePtr((StgPtr)stackOverflow_closure);
getStablePtr((StgPtr)heapOverflow_closure);
getStablePtr((StgPtr)runFinalizerBatch_closure);
getStablePtr((StgPtr)unpackCString_closure);
getStablePtr((StgPtr)blockedOnDeadMVar_closure);
getStablePtr((StgPtr)nonTermination_closure);
getStablePtr((StgPtr)blockedIndefinitely_closure);
/* initialise the shared Typeable store */
initTypeableStore();
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment