[project @ 2005-03-27 13:41:13 by panne]
[ghc-hetmet.git] / ghc / includes / RtsExternal.h
index da4f02e..c8b1f1c 100644 (file)
@@ -1,5 +1,4 @@
 /* -----------------------------------------------------------------------------
- * $Id: RtsExternal.h,v 1.2 2004/08/13 13:09:29 simonmar Exp $
  *
  * (c) The GHC Team, 1998-2004
  *
@@ -30,10 +29,15 @@ extern void newCAF(StgClosure*);
 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);
@@ -53,6 +57,17 @@ extern StgInt    isFloatNegativeZero(StgFloat f);
 extern StgInt        suspendThread ( StgRegTable * );
 extern StgRegTable * resumeThread  ( StgInt );
 
+/* Creating and destroying an adjustor thunk */
+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
    -------------------------------------------------------------------------- */