[GHC] #14068: Loopification using join points

GHC ghc-devs at haskell.org
Fri Feb 23 17:23:16 UTC 2018


#14068: Loopification using join points
-------------------------------------+-------------------------------------
        Reporter:  nomeata           |                Owner:  nomeata
            Type:  bug               |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.0.1
      Resolution:                    |             Keywords:  JoinPoints
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #13966 #14067     |  Differential Rev(s):  Phab:D3811
  #14827                             |
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by nomeata):

 >  I wonder why drop isn't inlined in your example. That would surely make
 the allocation go away? Are there multiple calls to drop that obstruct
 inlining?

 I am only using `drop` as an example here, the real thing might be much
 larger; too large to be inlined. I’ll have to look.

 >  And if so, do they share a common call pattern (e.g. j (I# n) xs)? Then
 that's one of the cases non-rec specialisation might be beneficial.

 Yes, that is the hope!

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


More information about the ghc-tickets mailing list