[commit: ghc] master: Reorganise the work list, so that flattening goals are treated in the right order (13b0b46)
git at git.haskell.org
git at git.haskell.org
Wed Dec 10 16:00:25 UTC 2014
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/13b0b460d365828c7d41b39d2ce7d5bbe4c69f98/ghc
>---------------------------------------------------------------
commit 13b0b460d365828c7d41b39d2ce7d5bbe4c69f98
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date: Tue Dec 9 17:38:12 2014 +0000
Reorganise the work list, so that flattening goals are treated in the right order
Trac #9872 showed the importance of processing goals in depth-first, so that
we do not build up a huge pool of suspended function calls, waiting for their
children to fire. There is a detailed explanation in
Note [The flattening work list]
in TcFlatten
The effect for Trac #9872 (slow1.hs) is dramatic. We go from too long
to wait down to 28Gbyte allocation. GHC 7.8.3 did 116Gbyte allocation!
>---------------------------------------------------------------
13b0b460d365828c7d41b39d2ce7d5bbe4c69f98
compiler/typecheck/TcCanonical.hs | 32 +--
compiler/typecheck/TcFlatten.hs | 97 ++++----
compiler/typecheck/TcInteract.hs | 15 +-
compiler/typecheck/TcRnMonad.hs | 10 +-
compiler/typecheck/TcSMonad.hs | 246 +++++++++++++--------
.../indexed-types/should_fail/NoMatchErr.stderr | 2 +-
.../tests/indexed-types/should_fail/T2544.stderr | 21 +-
.../tests/indexed-types/should_fail/T2627b.stderr | 4 +-
.../tests/indexed-types/should_fail/T4093a.hs | 24 +-
.../tests/indexed-types/should_fail/T4093a.stderr | 4 +-
.../tests/indexed-types/should_fail/T7010.stderr | 2 +-
.../tests/indexed-types/should_fail/T9036.stderr | 4 +-
.../typecheck/should_fail/FrozenErrorTests.stderr | 2 +-
testsuite/tests/typecheck/should_fail/T5853.stderr | 25 ++-
14 files changed, 288 insertions(+), 200 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 13b0b460d365828c7d41b39d2ce7d5bbe4c69f98
More information about the ghc-commits
mailing list