Skip to content
  • Alp Mestanogullari's avatar
    hadrian: eliminate most of the remaining big rule enumerations · 665f8b0c
    Alp Mestanogullari authored
    Following what was done to Rules.Library some time ago and to
    Rules.Compile recently (D5412), this patch moves more rules away from
    the "enumerate a lot of contexts and generate one rule for each" style
    and instead uses the "parse data from file path to recover context"
    approach. In fact, the only rules left to convert seem to be the ones
    from Rules.Generate.
    
    This effectively decreases the pauses described in #15938 further as
    well as the amount of allocations and GC that we do, unsurprisingly.
    Nowhere as drastically as D5412, though.
    
    Test Plan: perform full build and generate docs
    
    Reviewers: snowleopard, bgamari
    
    Reviewed By: snowleopard
    
    Subscribers: rwbarton, carter
    
    GHC Trac Issues: #15938
    
    Differential Revision: https://phabricator.haskell.org/D5422
    665f8b0c