[commit: ghc] master: Demand analyser: Implement LetUp rule (#12370) (45d8f4e)
git at git.haskell.org
git at git.haskell.org
Tue Jul 12 11:24:01 UTC 2016
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/45d8f4eb2bf2fcb103517d064e7ba1e491a66f4c/ghc
>---------------------------------------------------------------
commit 45d8f4eb2bf2fcb103517d064e7ba1e491a66f4c
Author: Joachim Breitner <mail at joachim-breitner.de>
Date: Wed Jul 6 15:44:18 2016 +0200
Demand analyser: Implement LetUp rule (#12370)
This makes the implementation match the description in the paper more
closely: There, a let binding that is not a function has first its body
analised, and then the binding’s RHS. This way, the demand on the bound
variable by the body can be fed into the RHS, yielding more precise
results.
Performance measurements do unfortunately not show significant
improvements or regessions.
Differential Revision: https://phabricator.haskell.org/D2395
>---------------------------------------------------------------
45d8f4eb2bf2fcb103517d064e7ba1e491a66f4c
compiler/stranal/DmdAnal.hs | 100 ++++++++++++++++-----
.../simplCore/should_compile/spec-inline.stderr | 2 +-
testsuite/tests/stranal/sigs/T12370.hs | 12 +++
testsuite/tests/stranal/sigs/T12370.stderr | 14 +++
testsuite/tests/stranal/sigs/all.T | 1 +
5 files changed, 107 insertions(+), 22 deletions(-)
Diff suppressed because of size. To see it, use:
git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc 45d8f4eb2bf2fcb103517d064e7ba1e491a66f4c
More information about the ghc-commits
mailing list