[commit: ghc] master: Use UniqDFM for HomePackageTable (3042a9d)
git at git.haskell.org
git at git.haskell.org
Mon Jun 6 11:01:55 UTC 2016
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/3042a9d8d55b4706d2ce366fee1712c7357d5a00/ghc
>---------------------------------------------------------------
commit 3042a9d8d55b4706d2ce366fee1712c7357d5a00
Author: Bartosz Nitka <niteria at gmail.com>
Date: Mon Jun 6 02:10:07 2016 -0700
Use UniqDFM for HomePackageTable
This isn't strictly necessary for deterministic ABIs.
The results of eltsHpt are consumed in two ways:
1) they determine the order of linking
2) if you track the data flow all the family instances get put in
FamInstEnvs, so the nondeterministic order is forgotten.
3) same for VectInfo stuff
4) same for Annotations
The problem is that I haven't found a nice way to do 2. in
a local way and 1. is nice to have if we went for deterministic
object files. Besides these maps are keyed on ModuleNames so they
should be small relative to other things and the overhead should
be negligible.
As a bonus we also get more specific names.
Test Plan: ./validate
Reviewers: bgamari, austin, hvr, ezyang, simonmar
Reviewed By: simonmar
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D2300
GHC Trac Issues: #4012
>---------------------------------------------------------------
3042a9d8d55b4706d2ce366fee1712c7357d5a00
compiler/basicTypes/Module.hs | 8 ++++++-
compiler/ghci/Linker.hs | 3 +--
compiler/iface/TcIface.hs | 2 +-
compiler/main/DriverPipeline.hs | 3 +--
compiler/main/GHC.hs | 9 ++++----
compiler/main/GhcMake.hs | 35 ++++++++++++++--------------
compiler/main/HscTypes.hs | 50 +++++++++++++++++++++++++++++++++-------
compiler/main/InteractiveEval.hs | 19 +++++++--------
compiler/typecheck/FamInst.hs | 3 +--
compiler/utils/UniqDFM.hs | 21 +++++++++++++++--
10 files changed, 104 insertions(+), 49 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 3042a9d8d55b4706d2ce366fee1712c7357d5a00
More information about the ghc-commits
mailing list