diff options
author | Andreas Klebinger <klebinger.andreas@gmx.at> | 2022-08-05 02:04:52 +0200 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2022-08-10 22:41:12 -0400 |
commit | 45eb4cbe372eadb8331c6dbc84f14c681b1a8a9b (patch) | |
tree | ad29953a687dd208811b4a0b00edb53c062c776c | |
parent | 67575f2004340564d6e52af055ed6fb43d3f9711 (diff) | |
download | haskell-45eb4cbe372eadb8331c6dbc84f14c681b1a8a9b.tar.gz |
Note [Trimming auto-rules]: State that this improves compiler perf.
-rw-r--r-- | compiler/GHC/Iface/Tidy.hs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/compiler/GHC/Iface/Tidy.hs b/compiler/GHC/Iface/Tidy.hs index 7fec591196..5f22f0275a 100644 --- a/compiler/GHC/Iface/Tidy.hs +++ b/compiler/GHC/Iface/Tidy.hs @@ -965,6 +965,13 @@ NB: if a binding is kept alive for some *other* reason (e.g. f_spec is called in the final code), we keep the rule too. This stuff is the only reason for the ru_auto field in a Rule. + +NB: In #18532 we looked at keeping auto-rules and it turned out to just make +compiler performance worse while increasing code sizes at the same time. The impact +varied. Compiling Cabal got ~3% slower, allocated ~3% more and wrote 15% more code to disk. +Nofib only saw 0.7% more compiler allocations and executable file size growth. But given +there was no difference in runtime for these benchmarks it turned out to be flat out worse. +See the ticket for more details. -} findExternalRules :: TidyOpts |