diff options
author | Simon Marlow <marlowsd@gmail.com> | 2009-11-11 14:28:22 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2009-11-11 14:28:22 +0000 |
commit | 2d5e052d795c99c17b1ca6fa1ca8be7d082be09c (patch) | |
tree | 6eabbfd2ceeb75f8c481d1872e46fa3c6b88bf9d /includes/rts/Globals.h | |
parent | cd0e2c0cc3005c3f5e74eeda57dc9cebbe1bac7e (diff) | |
download | haskell-2d5e052d795c99c17b1ca6fa1ca8be7d082be09c.tar.gz |
Second attempt to fix #1185 (forkProcess and -threaded)
Patch 1/2: second part of the patch is to libraries/base
This time without dynamic linker hacks, instead I've expanded the
existing rts/Globals.c to cache more CAFs, specifically those in
GHC.Conc. We were already using this trick for signal handlers, I
should have realised before.
It's still quite unsavoury, but we can do away with rts/Globals.c in
the future when we switch to a dynamically-linked GHCi.
Diffstat (limited to 'includes/rts/Globals.h')
-rw-r--r-- | includes/rts/Globals.h | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/includes/rts/Globals.h b/includes/rts/Globals.h index 85d0acd4bd..75c7f69fe4 100644 --- a/includes/rts/Globals.h +++ b/includes/rts/Globals.h @@ -18,6 +18,10 @@ #define RTS_GLOBALS_H StgStablePtr getOrSetTypeableStore(StgStablePtr value); -StgStablePtr getOrSetSignalHandlerStore(StgStablePtr value); +StgStablePtr getOrSetGHCConcSignalHandlerStore(StgStablePtr value); +StgStablePtr getOrSetGHCConcPendingEventsStore(StgStablePtr ptr); +StgStablePtr getOrSetGHCConcPendingDelaysStore(StgStablePtr ptr); +StgStablePtr getOrSetGHCConcIOManagerThreadStore(StgStablePtr ptr); +StgStablePtr getOrSetGHCConcProddingStore(StgStablePtr ptr); #endif /* RTS_GLOBALS_H */ |