New tracing interface
[ghc-hetmet.git] / rts / RtsStartup.c
index 147de7b..0406ae6 100644 (file)
@@ -27,6 +27,7 @@
 #include "Linker.h"
 #include "ThreadLabels.h"
 #include "BlockAlloc.h"
+#include "Trace.h"
 
 #if defined(RTS_GTK_FRONTPANEL)
 #include "FrontPanel.h"
@@ -161,6 +162,9 @@ hs_init(int *argc, char **argv[])
        setProgArgv(*argc,*argv);
     }
 
+    /* initTracing must be after setupRtsFlags() */
+    initTracing();
+
 #if defined(PAR)
     /* NB: this really must be done after processing the RTS flags */
     IF_PAR_DEBUG(verbose,
@@ -228,6 +232,10 @@ hs_init(int *argc, char **argv[])
     x86_init_fpu();
 #endif
 
+#if defined(THREADED_RTS) && !defined(mingw32_HOST_OS)
+    ioManagerStart();
+#endif
+
     /* Record initialization times */
     stat_endInit();
 }
@@ -325,6 +333,10 @@ hs_exit(void)
     /* start timing the shutdown */
     stat_startExit();
     
+#if defined(THREADED_RTS) && !defined(mingw32_HOST_OS)
+    ioManagerDie();
+#endif
+
     /* stop all running tasks */
     exitScheduler();