/* -----------------------------------------------------------------------------
- * $Id: RtsExternal.h,v 1.3 2004/08/21 12:47:17 panne Exp $
*
* (c) The GHC Team, 1998-2004
*
extern I_ genSymZh(void);
extern I_ resetGenSymZh(void);
+/* Alternate to raise(3) for threaded rts, for OpenBSD */
+extern int genericRaise(int sig);
+
/* Concurrency/Exception PrimOps. */
extern int cmp_thread(StgPtr tso1, StgPtr tso2);
extern int rts_getThreadId(StgPtr tso);
extern int forkOS_createThread ( HsStablePtr entry );
+extern StgInt forkProcess(HsStablePtr *entry);
+extern StgBool rtsSupportsBoundThreads(void);
/* grimy low-level support functions defined in StgPrimFloat.c */
extern StgDouble __encodeDouble (I_ size, StgByteArray arr, I_ e);
extern StgRegTable * resumeThread ( StgInt );
/* Creating and destroying an adjustor thunk */
-extern void* createAdjustor(int cconv, StgStablePtr hptr, StgFunPtr wptr);
+extern void* createAdjustor(int cconv, StgStablePtr hptr, StgFunPtr wptr,
+ char *typeString);
extern void freeHaskellFunctionPtr(void* ptr);
+#if defined(mingw32_HOST_OS)
+extern int stg_InstallConsoleEvent(int action, StgStablePtr *handler);
+#else
+extern int stg_sig_install (int, int, StgStablePtr *, void *);
+#endif
+
/* -----------------------------------------------------------------------------
Storage manager stuff exported
-------------------------------------------------------------------------- */
extern void performGC(void);
extern void performMajorGC(void);
extern void performGCWithRoots(void (*get_roots)(evac_fn));
+extern HsInt64 getAllocations( void );
+extern void revertCAFs( void );
#endif /* RTSEXTERNAL_H */