• niteria's avatar
    Make module membership on ModuleGraph faster · b8fec695
    niteria authored
    When loading/reloading with a large number of modules
    (>5000) the cost of linear lookups becomes significant.
    The changes here made `:reload` go from 6s to 1s on my
    test case.
    The bottlenecks were `needsLinker` in `DriverPipeline` and
    `getModLoop` in `GhcMake`.
    Test Plan: ./validate
    Reviewers: simonmar, austin, bgamari
    Subscribers: thomie, rwbarton
    Differential Revision: https://phabricator.haskell.org/D3703
UI.hs 146 KB