Compute the union of imp_finsts on the side
authorBartosz Nitka <niteria@gmail.com>
Fri, 2 Feb 2018 14:55:19 +0000 (06:55 -0800)
committerBartosz Nitka <niteria@gmail.com>
Tue, 6 Feb 2018 16:43:54 +0000 (08:43 -0800)
commitd2511e3b61563ed3fc2c9aec2c90a4156373a24c
tree598cead261f90d53a9f1efa9a326c467ebe4c30f
parent326df5d137ec1a556d77248e16f55e41b7374b1e
Compute the union of imp_finsts on the side

I've explained most of the rationale in a new Note.
I'd happily add a test for this, but the difference is only
visible in run time, allocations remain more or less the same.

FWIW running `generateModules` from #14693 with DEPTH=16, WIDTH=30
finishes in `23s` before, and `11s` after.

Test Plan: ./validate

Reviewers: simonpj, simonmar, bgamari

Reviewed By: simonpj

Subscribers: rwbarton, thomie, carter

GHC Trac Issues: #14693

Differential Revision: https://phabricator.haskell.org/D4369
compiler/rename/RnNames.hs