fix up Win32 build
[ghc-hetmet.git] / ghc / includes / RtsExternal.h
index cc8b3ba..61a920b 100644 (file)
@@ -1,5 +1,4 @@
 /* -----------------------------------------------------------------------------
- * $Id: RtsExternal.h,v 1.7 2005/01/10 18:44:40 wolfgang Exp $
  *
  * (c) The GHC Team, 1998-2004
  *
@@ -55,14 +54,31 @@ extern StgInt    isFloatDenormalized(StgFloat f);
 extern StgInt    isFloatNegativeZero(StgFloat f);
 
 /* Suspending/resuming threads around foreign calls */
-extern StgInt        suspendThread ( StgRegTable * );
-extern StgRegTable * resumeThread  ( StgInt );
+extern void *        suspendThread ( StgRegTable * );
+extern StgRegTable * resumeThread  ( void * );
+
+/* scheduler stuff */
+extern void stg_scheduleThread (StgRegTable *reg, struct StgTSO_ *tso);
 
 /* 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  rts_InstallConsoleEvent ( int action, StgStablePtr *handler );
+extern void rts_ConsoleHandlerDone  ( int ev );
+#else
+extern int stg_sig_install (int, int, StgStablePtr *, void *);
+#endif
+
+#if !defined(mingw32_HOST_OS)
+extern StgInt *signal_handlers;
+#endif
+extern void setIOManagerPipe (int fd);
+
+extern void* stgMallocBytesRWX(int len);
+
 /* -----------------------------------------------------------------------------
    Storage manager stuff exported
    -------------------------------------------------------------------------- */
@@ -73,5 +89,8 @@ typedef void (*evac_fn)(StgClosure **);
 extern void performGC(void);
 extern void performMajorGC(void);
 extern void performGCWithRoots(void (*get_roots)(evac_fn));
+extern HsInt64 getAllocations( void );
+extern void revertCAFs( void );
+extern void dirty_MUT_VAR(StgRegTable *reg, StgClosure *p);
 
 #endif /*  RTSEXTERNAL_H */