#9229: Compiler memory use regression -------------------------------------+------------------------------------- Reporter: augustss | Owner: Type: bug | Status: infoneeded Priority: normal | Milestone: Component: Compiler | Version: 7.8.2 Resolution: | Keywords: Operating System: Windows | Architecture: Unknown/Multiple Type of failure: Compile- | Difficulty: Unknown time performance bug | Blocked By: Test Case: | Related Tickets: #8852, #8980, Blocking: | #8941, 8960, #7898, #7068, #7944, Differential Revisions: | #5550, #8836 -------------------------------------+------------------------------------- Changes (by thomie): * status: new => infoneeded * related: => #8852, #8980, #8941, 8960, #7898, #7068, #7944, #5550, #8836 Comment: Can you try to compile your module with either HEAD (the master branch) or the ghc-7.8 [wiki:Building/GettingTheSources branch]? Those branches contain the following bug fix, which should solve your problem: {{{ commit af4bc31c50c873344a2426d4be842f92edf17019 Author: Simon Peyton Jones <simonpj@microsoft.com> Date: Mon Aug 25 12:28:44 2014 +0100 Do not duplicate call information in SpecConstr (Trac #8852) This long-standing and egregious bug meant that call information was being gratuitously copied, leading to an exponential blowup in the number of calls to be examined when function definitions are deeply nested. That is what has been causing the blowup in SpecConstr's running time, not (as I had previously supposed) generating very large code. See Note [spec_usg includes rhs_usg] }}} -- Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9229#comment:3> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler