diff options
author | Sebastian Graf <sebastian.graf@kit.edu> | 2018-11-23 16:24:18 +0100 |
---|---|---|
committer | Sebastian Graf <sebastian.graf@kit.edu> | 2018-11-23 16:26:02 +0100 |
commit | b2950e03b551d82d62ec25eb232284aaf121b4e2 (patch) | |
tree | 9f60d45f9ffaf350173a3d2aab0beda622bc3da2 /compiler/ghc.cabal.in | |
parent | 7856676b72526cd674e84c43064b61ff3a07a0a1 (diff) | |
download | haskell-b2950e03b551d82d62ec25eb232284aaf121b4e2.tar.gz |
Implement late lambda lift
Summary:
This implements a selective lambda-lifting pass late in the STG
pipeline.
Lambda lifting has the effect of avoiding closure allocation at the cost
of having to make former free vars available at call sites, possibly
enlarging closures surrounding call sites in turn.
We identify beneficial cases by means of an analysis that estimates
closure growth.
There's a Wiki page at
https://ghc.haskell.org/trac/ghc/wiki/LateLamLift.
Reviewers: simonpj, bgamari, simonmar
Reviewed By: simonpj
Subscribers: rwbarton, carter
GHC Trac Issues: #9476
Differential Revision: https://phabricator.haskell.org/D5224
Diffstat (limited to 'compiler/ghc.cabal.in')
-rw-r--r-- | compiler/ghc.cabal.in | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/ghc.cabal.in b/compiler/ghc.cabal.in index 893f959b1c..a99c6e7526 100644 --- a/compiler/ghc.cabal.in +++ b/compiler/ghc.cabal.in @@ -433,6 +433,11 @@ Library SimplStg StgStats StgCse + StgLiftLams + StgLiftLams.Analysis + StgLiftLams.LiftM + StgLiftLams.Transformation + StgSubst UnariseStg RepType Rules |