• niteria's avatar
    Make module membership on ModuleGraph faster · b0708588
    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: rwbarton, thomie
    
    Differential Revision: https://phabricator.haskell.org/D3646
    b0708588
UI.hs 146 KB