summaryrefslogtreecommitdiff
path: root/compiler/GHC/Utils/Error.hs
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2022-04-11 13:23:22 -0400
committerBen Gamari <ben@smart-cactus.org>2022-04-25 12:20:20 -0400
commit43291dceef71e25d72e4c34a18c5ed1e8707a444 (patch)
tree5637cf9f6cc7a0cfd24db9be50b3bcb397b66d1a /compiler/GHC/Utils/Error.hs
parent22ff0787c04a24072ade75ce0675c1c7b7c2db4f (diff)
downloadhaskell-wip/T18948.tar.gz
Enable eventlog support in all ways by defaultwip/T18948
Here we deprecate the eventlogging RTS ways and instead enable eventlog support in the remaining ways. This simplifies packaging and reduces GHC compilation times (as we can eliminate two whole compilations of the RTS) while simplifying the end-user story. The trade-off is a small increase in binary sizes in the case that the user does not want eventlogging support, but we think that this is a fine trade-off. This also revealed a latent RTS bug: some files which included `Cmm.h` also assumed that it defined various macros which were in fact defined by `Config.h`, which `Cmm.h` did not include. Fixing this in turn revealed that `StgMiscClosures.cmm` failed to import various spinlock statistics counters, as evidenced by the failed unregisterised build. Closes #18948.
Diffstat (limited to 'compiler/GHC/Utils/Error.hs')
-rw-r--r--compiler/GHC/Utils/Error.hs12
1 files changed, 2 insertions, 10 deletions
diff --git a/compiler/GHC/Utils/Error.hs b/compiler/GHC/Utils/Error.hs
index db8107a65f..ef6dd4f07d 100644
--- a/compiler/GHC/Utils/Error.hs
+++ b/compiler/GHC/Utils/Error.hs
@@ -521,16 +521,8 @@ easily compute totals with tools like ghc-events-analyze (see below).
Producing an eventlog for GHC
-----------------------------
-To actually produce the eventlog, you need an eventlog-capable GHC build:
-
- With Hadrian:
- $ hadrian/build -j "stage1.ghc-bin.ghc.link.opts += -eventlog"
-
- With Make:
- $ make -j GhcStage2HcOpts+=-eventlog
-
-You can then produce an eventlog when compiling say hello.hs by simply
-doing:
+You can produce an eventlog when compiling, for instance, hello.hs by simply
+running:
If GHC was built by Hadrian:
$ _build/stage1/bin/ghc -ddump-timings hello.hs -o hello +RTS -l