[commit: ghc] master: Do better sharing in the short-cut solver (f2ce86c)
git at git.haskell.org
git at git.haskell.org
Mon May 21 08:38:34 UTC 2018
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/f2ce86c2edc0840f5e731d5286a2a5e484263e3f/ghc
>---------------------------------------------------------------
commit f2ce86c2edc0840f5e731d5286a2a5e484263e3f
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date: Sun May 20 21:43:45 2018 +0100
Do better sharing in the short-cut solver
Trac #15164 showed that it sometimes really matters to share
sub-proofs when solving constraints. Without it, we can get
exponentialy bad behaviour.
Fortunately, it's easily solved.
Note [Shortcut try_solve_from_instance] explains.
I did some minor assocaited refactoring.
>---------------------------------------------------------------
f2ce86c2edc0840f5e731d5286a2a5e484263e3f
compiler/typecheck/TcEvidence.hs | 6 +-
compiler/typecheck/TcInteract.hs | 159 ++++++----
compiler/typecheck/TcSMonad.hs | 18 +-
testsuite/tests/perf/compiler/T15164.hs | 501 ++++++++++++++++++++++++++++++++
testsuite/tests/perf/compiler/all.T | 10 +
5 files changed, 631 insertions(+), 63 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 f2ce86c2edc0840f5e731d5286a2a5e484263e3f
More information about the ghc-commits
mailing list