/* -----------------------------------------------------------------------------
*
- * (c) The GHC Team, 1998-2005
+ * (c) The GHC Team, 1998-2009
*
* General utility functions used in the RTS.
*
#ifndef RTSUTILS_H
#define RTSUTILS_H
+BEGIN_RTS_PRIVATE
+
/* -----------------------------------------------------------------------------
* (Checked) dynamic allocation
* -------------------------------------------------------------------------- */
-extern void *stgMallocBytes(int n, char *msg)
- GNUC3_ATTRIBUTE(__malloc__);
+void initAllocator(void);
+void shutdownAllocator(void);
-extern void* stgMallocBytesRWX(int len)
+void *stgMallocBytes(int n, char *msg)
GNUC3_ATTRIBUTE(__malloc__);
-extern void *stgReallocBytes(void *p, int n, char *msg);
+void *stgReallocBytes(void *p, int n, char *msg);
-extern void *stgCallocBytes(int n, int m, char *msg)
+void *stgCallocBytes(int n, int m, char *msg)
GNUC3_ATTRIBUTE(__malloc__);
-extern void stgFree(void* p);
+void stgFree(void* p);
/* -----------------------------------------------------------------------------
* Misc other utilities
* -------------------------------------------------------------------------- */
-extern void heapOverflow(void);
+void heapOverflow(void);
-extern void setNonBlockingFd(int fd);
-extern void resetNonBlockingFd(int fd);
+char *time_str(void);
+char *ullong_format_string(ullong, char *, rtsBool);
-extern nat stg_strlen(char *str);
+#ifdef DEBUG
+void heapCheckFail( void );
+#endif
-extern char *time_str(void);
-extern char *ullong_format_string(ullong, char *, rtsBool);
+void printRtsInfo(void);
-#ifdef PAR
-extern ullong msTime(void);
-#endif
+/* Alternate to raise(3) for threaded rts, for OpenBSD */
+int genericRaise(int sig);
-#ifdef DEBUG
-extern void heapCheckFail( void );
-#endif
+int rts_isProfiled(void);
-extern void* __hscore_get_saved_termios(int fd);
-extern void __hscore_set_saved_termios(int fd, void* ts);
+END_RTS_PRIVATE
#endif /* RTSUTILS_H */