Split GC.c, and move storage manager into sm/ directory
[ghc-hetmet.git] / rts / Stats.c
index 28d09bd..6e093ad 100644 (file)
 #include "RtsFlags.h"
 #include "RtsUtils.h"
 #include "MBlock.h"
+#include "Storage.h"
 #include "Schedule.h"
 #include "Stats.h"
 #include "ParTicky.h"                       /* ToDo: move into Rts.h */
 #include "Profiling.h"
-#include "Storage.h"
 #include "GetTime.h"
 
 /* huh? */
@@ -75,6 +75,11 @@ Ticks stat_getElapsedGCTime(void)
     return GCe_tot_time;
 }
 
+Ticks stat_getElapsedTime(void)
+{
+    return getProcessElapsedTime() - ElapsedTimeStart;
+}
+
 /* mut_user_time_during_GC() and mut_user_time()
  *
  * The former function can be used to get the current mutator time
@@ -532,6 +537,9 @@ stat_exit(int alloc)
        statsFlush();
        statsClose();
     }
+    if (GC_coll_times)
+      stgFree(GC_coll_times);
+    GC_coll_times = NULL;
 }
 
 /* -----------------------------------------------------------------------------
@@ -578,7 +586,7 @@ statDescribeGens(void)
       if (s != 0) {
        debugBelch("%36s","");
       }
-      debugBelch("%6d %8d %8d %8d\n", s, step->n_blocks,
+      debugBelch("%6d %8d %8ld %8d\n", s, step->n_blocks,
              live, lge);
     }
   }