diff options
author | Matthew Pickering <matthewtpickering@gmail.com> | 2022-02-12 11:09:44 +0000 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2022-02-26 02:06:52 -0500 |
commit | b80461954e3c52a01d0c1cc7c4087959818dbd08 (patch) | |
tree | 4e9f98ba0a1d45fbcd27578334b78b78ed4bcd4c /compiler/GHC/Tc | |
parent | 2be7446089de644048466ab8e9c71c596fa82d09 (diff) | |
download | haskell-b80461954e3c52a01d0c1cc7c4087959818dbd08.tar.gz |
Improve efficiency of extending a RuleEnv with a new RuleBase
Essentially we apply the identity:
> lookupNameEnv n (plusNameEnv_C (++) rb1 rb2)
> = lookupNameEnv n rb1 ++ lookupNameEnv n rb2
The latter being more efficient as we don't construct an intermediate
map.
This is now quite important as each time we try and apply rules we need
to combine the current EPS RuleBase with the HPT and ModGuts rule bases.
Diffstat (limited to 'compiler/GHC/Tc')
0 files changed, 0 insertions, 0 deletions