[GHC] #12754: Adding an explicit export list halves compilation time.

GHC ghc-devs at haskell.org
Thu Nov 17 11:08:13 UTC 2016


#12754: Adding an explicit export list halves compilation time.
-------------------------------------+-------------------------------------
        Reporter:  mpickering        |                Owner:  mpickering
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.0.1
      Resolution:                    |             Keywords:
Operating System:  Unknown/Multiple  |         Architecture:
 Type of failure:  Compile-time      |  Unknown/Multiple
  performance bug                    |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:                    |  Differential Rev(s):  phab:D2657
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by simonpj):

 Patch looks mostly good thanks!

 You did not address my remarks about the other uses of `nubAvails`:

 >  So an alternative, perhaps better, would be to rewrite nubAvails to use
 code very like the above function, so that each Name in the [AvailInfo]
 takes linear time to add. That's be more robust I guess.

 > Finally, the other use of nubAvails is in RnNames.findImportUsage. I
 think extendImportMap could return a [GRE] as the second element of its
 result pair, instead of [AvailInfo], and then we could use gresToAvailInfo
 again; but this time we'd need to worry about duplicates.

 Indeed you added a brand-new call to `nubAvails`!

 Couldn't we just apply the same medicine to `nubAvails`?

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/12754#comment:12>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list