[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