summaryrefslogtreecommitdiff
path: root/ghc.mk
diff options
context:
space:
mode:
authorSimon Peyton Jones <simonpj@microsoft.com>2021-06-02 00:35:22 +0100
committerMarge Bot <ben+marge-bot@smart-cactus.org>2021-06-10 02:38:19 -0400
commitf4a5e30e7b027894535872164df50c300d8e6b0f (patch)
treeb213dc12c444d4c3e4e33da4a5d9f9311aeba071 /ghc.mk
parentd69067a1b920f1122f55dd9caa39cf9ed9ba1d9b (diff)
downloadhaskell-f4a5e30e7b027894535872164df50c300d8e6b0f.tar.gz
Do not add unfoldings to lambda-binders
For reasons described in GHC.Core.Opt.Simplify Historical Note [Case binders and join points], we used to keep a Core unfolding in one of the lambda-binders for a join point. But this was always a gross hack -- it's very odd to have an unfolding in a lambda binder, that refers to earlier lambda binders. The hack bit us in various ways: * Most seriously, it is incompatible with linear types in Core. * It complicated demand analysis, and could worsen results * It required extra care in the simplifier (simplLamBinder) * It complicated !5641 (look for "join binder unfoldings") So this patch just removes the hack. Happily, doind so turned out to have no effect on performance.
Diffstat (limited to 'ghc.mk')
0 files changed, 0 insertions, 0 deletions