[GHC] #9279: Local wrapper function remains in final program; result = extra closure allocation

GHC ghc-devs at haskell.org
Tue Jul 29 03:16:43 UTC 2014


#9279: Local wrapper function remains in final program; result = extra closure
allocation
-------------------------------------+-------------------------------------
              Reporter:  simonmar    |            Owner:  simonpj
                  Type:  bug         |           Status:  new
              Priority:  normal      |        Milestone:
             Component:  Compiler    |          Version:  7.8.2
            Resolution:              |         Keywords:
      Operating System:              |     Architecture:  Unknown/Multiple
  Unknown/Multiple                   |       Difficulty:  Unknown
       Type of failure:  Runtime     |       Blocked By:
  performance bug                    |  Related Tickets:
             Test Case:              |
              Blocking:              |
Differential Revisions:              |
-------------------------------------+-------------------------------------

Comment (by nfrisby):

 Based only on the eye-balled free variable analysis of $wa4, I think that
 the current late lambda lift implementation would lift $wa4. ipv7_X5Ne is
 the only free variable I see in the closure, so replacing $wa4 with
 ip7_X5Ne in a2_s6lH would not constitute closure growth, which is what
 would most likely prevent the lift. (I'm assuming $wa4 is not LNE.)

 I'll attempt the repro with my local build and let you know for sure.

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


More information about the ghc-tickets mailing list