allow build settings to be overriden by adding mk/validate.mk
[ghc-hetmet.git] / rts / Profiling.c
index 96a94e4..4e759b6 100644 (file)
@@ -13,7 +13,6 @@
 #include "RtsUtils.h"
 #include "RtsFlags.h"
 #include "Profiling.h"
-#include "Storage.h"
 #include "Proftimer.h"
 #include "Timer.h"
 #include "ProfHeap.h"
 
 #include <string.h>
 
+#ifdef DEBUG
+#include "Trace.h"
+#endif
+
 /*
  * Profiling allocation arena.
  */
@@ -183,6 +186,12 @@ initProfiling1 (void)
 }
 
 void
+freeProfiling1 (void)
+{
+    arenaFree(prof_arena);
+}
+
+void
 initProfiling2 (void)
 {
   CostCentreStack *ccs, *next;
@@ -277,7 +286,7 @@ initProfilingLogFile(void)
     if (RtsFlags.CcFlags.doCostCentres == COST_CENTRES_XML) {
        /* dump the time, and the profiling interval */
        fprintf(prof_file, "\"%s\"\n", time_str());
-       fprintf(prof_file, "\"%d ms\"\n", TICK_MILLISECS);
+       fprintf(prof_file, "\"%d ms\"\n", RtsFlags.MiscFlags.tickInterval);
        
        /* declare all the cost centres */
        {
@@ -732,8 +741,10 @@ reportCCSProfiling( void )
     fprintf(prof_file, "\n\n");
 
     fprintf(prof_file, "\ttotal time  = %11.2f secs   (%lu ticks @ %d ms)\n",
-           total_prof_ticks / (StgFloat) TICK_FREQUENCY, 
-           total_prof_ticks, TICK_MILLISECS);
+           (double) total_prof_ticks *
+        (double) RtsFlags.MiscFlags.tickInterval / 1000,
+           (unsigned long) total_prof_ticks,
+        (int) RtsFlags.MiscFlags.tickInterval);
 
     fprintf(prof_file, "\ttotal alloc = %11s bytes",
            ullong_format_string(total_alloc * sizeof(W_),