summaryrefslogtreecommitdiff
path: root/rts/ProfilerReport.h
diff options
context:
space:
mode:
authorBen Gamari <bgamari.foss@gmail.com>2017-02-11 19:21:22 -0500
committerBen Gamari <ben@smart-cactus.org>2017-02-11 19:58:34 -0500
commit56c9bb39246f9ffd8ed41a0656bfe8e60d23be57 (patch)
tree1887b6def9a39b52b99c9f10eb4416e4fe65fd14 /rts/ProfilerReport.h
parent1a14d384136ce91d3469f462d192c3721b27fbd5 (diff)
downloadhaskell-56c9bb39246f9ffd8ed41a0656bfe8e60d23be57.tar.gz
rts/Profiling: Factor out report generation
Here we move the actual report generation logic to `rts/ProfilerReport.c`. This break is actually quite clean, void writeCCSReport( FILE *prof_file, CostCentreStack const *ccs, ProfilerTotals totals ); This is more profiler refactoring in preparation for machine-readable output. Test Plan: Validate Reviewers: austin, erikd, simonmar Reviewed By: simonmar Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D3097
Diffstat (limited to 'rts/ProfilerReport.h')
-rw-r--r--rts/ProfilerReport.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/rts/ProfilerReport.h b/rts/ProfilerReport.h
new file mode 100644
index 0000000000..e2a1d539a4
--- /dev/null
+++ b/rts/ProfilerReport.h
@@ -0,0 +1,28 @@
+/* -----------------------------------------------------------------------------
+ *
+ * (c) The GHC Team, 1998-2017
+ *
+ * Generating cost-center profiler report
+ *
+ * ---------------------------------------------------------------------------*/
+
+#ifndef PROFILER_REPORT_H
+#define PROFILER_REPORT_H
+
+#include <stdio.h>
+
+#include "Rts.h"
+#include "Profiling.h"
+
+#include "BeginPrivate.h"
+
+#ifdef PROFILING
+
+void writeCCSReport( FILE *prof_file, CostCentreStack const *ccs,
+ ProfilerTotals totals );
+
+#endif
+
+#include "EndPrivate.h"
+
+#endif /* PROFILER_REPORT_H */