Revert "Use a deterministic map for imp_dep_mods"
authorBartosz Nitka <niteria@gmail.com>
Mon, 15 May 2017 11:44:35 +0000 (04:44 -0700)
committerBartosz Nitka <niteria@gmail.com>
Mon, 15 May 2017 11:45:22 +0000 (04:45 -0700)
commit8bf50d5026f92eb5a6768eb2ac38479802da1411
treeb7b17398228732c53f6833d11448b91302f87d51
parentffbcffffecf0307ff4dd3173503e2d3387d53386
Revert "Use a deterministic map for imp_dep_mods"

This reverts commit 7fea7121ce195e562a5443c0a8ef3861504ef1b3.
It turns out that on a newly added MultiLayerModules test
case it gets very expensive to union the transitive module
sets while preserving determinism.

Fortunately, we can just sort to restore determinism
when converting imp_dep_mods to a list.

Test Plan: ./validate

Reviewers: simonmar, austin, bgamari

Reviewed By: bgamari

Subscribers: rwbarton, thomie

Differential Revision: https://phabricator.haskell.org/D3577
compiler/deSugar/DsUsage.hs
compiler/iface/MkIface.hs
compiler/typecheck/TcRnDriver.hs
compiler/typecheck/TcRnTypes.hs
testsuite/tests/perf/compiler/all.T