[GHC] #9434: GHC.List.reverse does not fuse

Simon Peyton Jones simonpj at microsoft.com
Sun Aug 17 22:13:02 UTC 2014


Well, I’d much rather avoid creating the duplication in the first place, than to create and try to CSE it away.  Others have suggested ways of doing so, following the pattern of existing RULES.

Simon

From: David Feuer [mailto:david.feuer at gmail.com]
Sent: 15 August 2014 16:41
To: ghc-devs; Simon Peyton Jones
Subject: Re: [GHC] #9434: GHC.List.reverse does not fuse


I'm having trouble when it doesn't fuse—it ends up with duplicate bindings at the top level, because build gets inlined n times, and the result lifted out. Nothing's *wrong* with the code, except that there are multiple copies of it.
On Aug 15, 2014 10:58 AM, "GHC" <ghc-devs at haskell.org<mailto:ghc-devs at haskell.org>> wrote:
#9434: GHC.List.reverse does not fuse
-------------------------------------+-------------------------------------
              Reporter:  dfeuer      |            Owner:
                  Type:  bug         |           Status:  new
              Priority:  normal      |        Milestone:
             Component:              |          Version:  7.9
  libraries/base                     |         Keywords:
            Resolution:              |     Architecture:  Unknown/Multiple
      Operating System:              |       Difficulty:  Easy (less than 1
  Unknown/Multiple                   |  hour)
       Type of failure:  Runtime     |       Blocked By:
  performance bug                    |  Related Tickets:
             Test Case:              |
              Blocking:              |
Differential Revisions:              |
-------------------------------------+-------------------------------------

Comment (by simonpj):

 Great.  Just check that when fusion ''doesn't'' take place, the result is
 good. And do a `nofib` comparison for good luck. Then submit a patch.

 Thanks for doing all this work on fusion, David.

 Simon

--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/9434#comment:2>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20140817/d1fc5dbb/attachment-0001.html>


More information about the ghc-devs mailing list