[commit: ghc] master: Avoid exponential blowup in FamInstEnv.normaliseType (3540d1e)

git at git.haskell.org git at git.haskell.org
Fri Jan 6 10:52:50 UTC 2017


Repository : ssh://git@git.haskell.org/ghc

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/3540d1e1a23926ce0a8a6ae83a36f5f6b2497ccf/ghc

>---------------------------------------------------------------

commit 3540d1e1a23926ce0a8a6ae83a36f5f6b2497ccf
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date:   Thu Jan 5 17:40:49 2017 +0000

    Avoid exponential blowup in FamInstEnv.normaliseType
    
    Trac #13035 showed up a nasty case where we took exponentially
    long to normalise a (actually rather simple) type.  Fortunately
    it was easy to fix: see Note [Normalisation and type synonyms].


>---------------------------------------------------------------

3540d1e1a23926ce0a8a6ae83a36f5f6b2497ccf
 compiler/types/FamInstEnv.hs                       |  48 +++++--
 testsuite/tests/perf/compiler/T13035.hs            | 143 +++++++++++++++++++++
 .../T5472.stdout => perf/compiler/T13035.stderr}   |   0
 testsuite/tests/perf/compiler/all.T                |  11 ++
 4 files changed, 189 insertions(+), 13 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 3540d1e1a23926ce0a8a6ae83a36f5f6b2497ccf


More information about the ghc-commits mailing list