diff options
author | Ben Gamari <bgamari.foss@gmail.com> | 2017-02-11 19:21:22 -0500 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2017-02-11 19:58:34 -0500 |
commit | 56c9bb39246f9ffd8ed41a0656bfe8e60d23be57 (patch) | |
tree | 1887b6def9a39b52b99c9f10eb4416e4fe65fd14 /rts/ProfilerReport.h | |
parent | 1a14d384136ce91d3469f462d192c3721b27fbd5 (diff) | |
download | haskell-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.h | 28 |
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 */ |