Skip to content
  • Matthew Pickering's avatar
    Optimise whole module exports · 4b72f859
    Matthew Pickering authored
    We directly build up the correct AvailInfos rather than generating
    lots of singleton instances and combining them with expensive calls to
    unionLists.
    
    There are two other small changes.
    
    * Pushed the nubAvails call into the explicit export list
      branch as we construct them correctly and uniquely ourselves.
    * fix_faminst only needs to check the first element of the export
      list as we maintain the (yucky) invariant that the parent is the
      first thing in it.
    
    Reviewers: simonpj, austin, bgamari
    
    Reviewed By: simonpj, bgamari
    
    Subscribers: simonpj, thomie, niteria
    
    Differential Revision: https://phabricator.haskell.org/D2657
    
    GHC Trac Issues: #12754
    4b72f859