summaryrefslogtreecommitdiff
path: root/libraries
diff options
context:
space:
mode:
authorBen Gamari <bgamari.foss@gmail.com>2017-02-23 13:22:48 -0500
committerBen Gamari <ben@smart-cactus.org>2017-02-23 17:26:44 -0500
commita20433326eabd759502d9c170c3cc44ce6128a04 (patch)
tree72ba807d45f05460dcfad02d437d9b79c0518481 /libraries
parent0a77cedb914a67b8bd7c4af1f87714dc497fec3e (diff)
downloadhaskell-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.hsc6
-rw-r--r--libraries/base/changelog.md6
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