Commits on Source (7)
-
This does four things: 1. Look at `idArity` instead of manifest lambdas to decide whether to use LetUp 2. Compute the strictness signature in LetDown assuming at least `idArity` incoming arguments 3. Remove the special case for trivial RHSs, which is subsumed by 2 4. Don't perform the W/W split when doing so would eta expand a binding. Otherwise we would eta expand PAPs, causing unnecessary churn in the Simplifier. NoFib Results -------------------------------------------------------------------------------- Program Allocs Instrs -------------------------------------------------------------------------------- fannkuch-redux +0.3% 0.0% gg -0.0% -0.1% maillist +0.2% +0.2% minimax 0.0% +0.8% pretty 0.0% -0.1% reptile -0.0% -1.2% -------------------------------------------------------------------------------- Min -0.0% -1.2% Max +0.3% +0.8% Geometric Mean +0.0% -0.0%
014ed644 -
This allows it to eventually become stage-specific
d37d91e9 -
It is no longer needed
53d1cd96 -
The bulk of the work was done in #712, making settings be make/Hadrian controlled. This commit then just moves the unlit command rules in make/Hadrian from the `Config.hs` generator to the `settings` generator in each build system. I think this is a good change because the crucial benefit is *settings* don't affect the build: ghc gets one baby step closer to being a regular cabal executable, and make/Hadrian just maintains settings as part of bootstrapping.
2988ef5e -
37a4fd97
-
1bef62c3
-
ebfa3528
Showing
- .gitlab-ci.yml 1 addition, 0 deletions.gitlab-ci.yml
- aclocal.m4 10 additions, 10 deletionsaclocal.m4
- compiler/basicTypes/Demand.hs 89 additions, 24 deletionscompiler/basicTypes/Demand.hs
- compiler/basicTypes/Id.hs 1 addition, 0 deletionscompiler/basicTypes/Id.hs
- compiler/basicTypes/IdInfo.hs 28 additions, 16 deletionscompiler/basicTypes/IdInfo.hs
- compiler/basicTypes/Var.hs 8 additions, 2 deletionscompiler/basicTypes/Var.hs
- compiler/coreSyn/CoreArity.hs 1 addition, 1 deletioncompiler/coreSyn/CoreArity.hs
- compiler/coreSyn/CoreLint.hs 3 additions, 23 deletionscompiler/coreSyn/CoreLint.hs
- compiler/coreSyn/CoreUnfold.hs 15 additions, 4 deletionscompiler/coreSyn/CoreUnfold.hs
- compiler/ghc.mk 0 additions, 2 deletionscompiler/ghc.mk
- compiler/main/ErrUtils.hs 7 additions, 3 deletionscompiler/main/ErrUtils.hs
- compiler/main/SysTools.hs 3 additions, 3 deletionscompiler/main/SysTools.hs
- compiler/simplCore/SimplMonad.hs 3 additions, 2 deletionscompiler/simplCore/SimplMonad.hs
- compiler/simplCore/SimplUtils.hs 9 additions, 1 deletioncompiler/simplCore/SimplUtils.hs
- compiler/stranal/DmdAnal.hs 201 additions, 96 deletionscompiler/stranal/DmdAnal.hs
- compiler/stranal/WorkWrap.hs 37 additions, 4 deletionscompiler/stranal/WorkWrap.hs
- compiler/stranal/WwLib.hs 1 addition, 1 deletioncompiler/stranal/WwLib.hs
- configure.ac 2 additions, 2 deletionsconfigure.ac
- distrib/configure.ac.in 1 addition, 1 deletiondistrib/configure.ac.in
- ghc.mk 2 additions, 3 deletionsghc.mk