diff options
author | Ben Gamari <bgamari.foss@gmail.com> | 2017-02-23 13:22:48 -0500 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2017-02-23 17:26:44 -0500 |
commit | a20433326eabd759502d9c170c3cc44ce6128a04 (patch) | |
tree | 72ba807d45f05460dcfad02d437d9b79c0518481 /libraries | |
parent | 0a77cedb914a67b8bd7c4af1f87714dc497fec3e (diff) | |
download | haskell-a20433326eabd759502d9c170c3cc44ce6128a04.tar.gz |
JSON profiler reports
This introduces a JSON output format for cost-centre profiler reports.
It's not clear whether this is really something we want to introduce
given that we may also move to a more Haskell-driven output pipeline in
the future, but I nevertheless found this helpful, so I thought I would
put it up.
Test Plan: Compile a program with `-prof -fprof-auto`; run with `+RTS
-pj`
Reviewers: austin, erikd, simonmar
Reviewed By: simonmar
Subscribers: duncan, maoe, thomie, simonmar
Differential Revision: https://phabricator.haskell.org/D3132
Diffstat (limited to 'libraries')
-rw-r--r-- | libraries/base/GHC/RTS/Flags.hsc | 6 | ||||
-rw-r--r-- | libraries/base/changelog.md | 6 |
2 files changed, 8 insertions, 4 deletions
diff --git a/libraries/base/GHC/RTS/Flags.hsc b/libraries/base/GHC/RTS/Flags.hsc index 46534fed96..7bb10b60cb 100644 --- a/libraries/base/GHC/RTS/Flags.hsc +++ b/libraries/base/GHC/RTS/Flags.hsc @@ -166,7 +166,7 @@ data DoCostCentres | CostCentresSummary | CostCentresVerbose | CostCentresAll - | CostCentresXML + | CostCentresJSON deriving (Show) -- | @since 4.8.0.0 @@ -175,13 +175,13 @@ instance Enum DoCostCentres where fromEnum CostCentresSummary = #{const COST_CENTRES_SUMMARY} fromEnum CostCentresVerbose = #{const COST_CENTRES_VERBOSE} fromEnum CostCentresAll = #{const COST_CENTRES_ALL} - fromEnum CostCentresXML = #{const COST_CENTRES_XML} + fromEnum CostCentresJSON = #{const COST_CENTRES_JSON} toEnum #{const COST_CENTRES_NONE} = CostCentresNone toEnum #{const COST_CENTRES_SUMMARY} = CostCentresSummary toEnum #{const COST_CENTRES_VERBOSE} = CostCentresVerbose toEnum #{const COST_CENTRES_ALL} = CostCentresAll - toEnum #{const COST_CENTRES_XML} = CostCentresXML + toEnum #{const COST_CENTRES_JSON} = CostCentresJSON toEnum e = errorWithoutStackTrace ("invalid enum for DoCostCentres: " ++ show e) -- | Parameters pertaining to the cost-center profiler. diff --git a/libraries/base/changelog.md b/libraries/base/changelog.md index 68650e323d..b8c246a3a7 100644 --- a/libraries/base/changelog.md +++ b/libraries/base/changelog.md @@ -1,6 +1,6 @@ # Changelog for [`base` package](http://hackage.haskell.org/package/base) -## next *TBA* +## 4.10.0.0 *April 2017* * Bundled with GHC *TBA* * `Data.Type.Bool.Not` given a type family dependency (#12057). @@ -65,6 +65,10 @@ * `Data.Type.Equality` now provides a kind heterogeneous type equality evidence type, `(:~~:)`. + * The `CostCentresXML` constructor of `GHC.RTS.Flags.DoCostCentres` has been + replaced by `CostCentresJSON` due to the new JSON export format supported by + the cost centre profiler. + ## 4.9.0.0 *May 2016* * Bundled with GHC 8.0 |