summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2022-04-11 13:23:22 -0400
committerMarge Bot <ben+marge-bot@smart-cactus.org>2022-04-27 10:06:07 -0400
commitee11d04363ed8aa1d73a0cda16076a39e668d163 (patch)
tree8cb2853ac6cd99442f7ff7c4e4f979e7674301e4 /docs
parent318e0005b5a3a522854ced7162f3eee95f964bd9 (diff)
downloadhaskell-ee11d04363ed8aa1d73a0cda16076a39e668d163.tar.gz
Enable eventlog support in all ways by default
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 'docs')
-rw-r--r--docs/users_guide/9.4.1-notes.rst7
-rw-r--r--docs/users_guide/phases.rst6
2 files changed, 11 insertions, 2 deletions
diff --git a/docs/users_guide/9.4.1-notes.rst b/docs/users_guide/9.4.1-notes.rst
index 0273859173..345badec57 100644
--- a/docs/users_guide/9.4.1-notes.rst
+++ b/docs/users_guide/9.4.1-notes.rst
@@ -192,6 +192,13 @@ Compiler
type variables when given a polymorphic type. (It used to instantiate
inferred type variables.)
+Runtime system
+~~~~~~~~~~~~~~~~
+
+- Support for GHC's eventlog is now enabled in all runtime system configurations,
+ eliminating the need to pass the :ghc-flag:`-eventlog` flag to use the eventlog.
+ This flag has been deprecated (:ghc-ticket:`18948`).
+
``base`` library
~~~~~~~~~~~~~~~~
diff --git a/docs/users_guide/phases.rst b/docs/users_guide/phases.rst
index fdb08a4209..54ed63a06c 100644
--- a/docs/users_guide/phases.rst
+++ b/docs/users_guide/phases.rst
@@ -1046,14 +1046,16 @@ for example).
:type: dynamic
:category: linking
+ :since: Unconditionally enabled with 9.4 and later
+
Link the program with the "eventlog" version of the runtime system.
A program linked in this way can generate a runtime trace of events
(such as thread start/stop) to a binary file :file:`{program}.eventlog`,
which can then be interpreted later by various tools. See
:ref:`rts-eventlog` for more information.
- :ghc-flag:`-eventlog` can be used with :ghc-flag:`-threaded`. It is implied by
- :ghc-flag:`-debug`.
+ Note that as of GHC 9.4 and later eventlog support is included in
+ the RTS by default and the :ghc-flag:`-eventlog` is deprecated.
.. ghc-flag:: -rtsopts[=⟨none|some|all|ignore|ignoreAll⟩]
:shortdesc: Control whether the RTS behaviour can be tweaked via command-line