[commit: ghc] wip/names3: Handle deserialization of tuples, etc specifically (5674451)
git at git.haskell.org
git at git.haskell.org
Thu Sep 8 18:52:15 UTC 2016
Repository : ssh://git@git.haskell.org/ghc
On branch : wip/names3
Link : http://ghc.haskell.org/trac/ghc/changeset/56744512abba0574c1f3a81a521367a319c6e078/ghc
>---------------------------------------------------------------
commit 56744512abba0574c1f3a81a521367a319c6e078
Author: Ben Gamari <ben at smart-cactus.org>
Date: Sat Aug 20 16:52:26 2016 -0400
Handle deserialization of tuples, etc specifically
Previously BinIface would build a UniqFM containing all of the known-key
things and use this to resolve the Names of known-key things during
interface file deserialization. However, this has the disadvantage of
building up a rather large map containing all type and data constructors
for anonymous sums and tuples.
We now instead add codepaths to map a unique back to its associated
known key name, allowing us to greatly shrink the size of the map.
>---------------------------------------------------------------
56744512abba0574c1f3a81a521367a319c6e078
compiler/basicTypes/Unique.hs | 35 ---------
compiler/ghc.cabal.in | 1 +
compiler/prelude/KnownUniques.hs | 135 ++++++++++++++++++++++++++++++++++
compiler/prelude/KnownUniques.hs-boot | 17 +++++
compiler/prelude/PrelInfo.hs | 18 -----
compiler/prelude/TysWiredIn.hs | 19 +++--
6 files changed, 166 insertions(+), 59 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 56744512abba0574c1f3a81a521367a319c6e078
More information about the ghc-commits
mailing list