[GHC] #2988: Improve float-in
GHC
ghc-devs at haskell.org
Mon Jan 22 10:30:30 UTC 2018
#2988: Improve float-in
-------------------------------------+-------------------------------------
Reporter: simonpj | Owner: (none)
Type: task | Status: new
Priority: lowest | Milestone:
Component: Compiler | Version: 6.10.1
Resolution: | Keywords: FloatInwards
Operating System: Unknown/Multiple | Architecture:
Type of failure: Compile-time | Unknown/Multiple
performance bug | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Changes (by simonpj):
* keywords: => FloatInwards
Comment:
No it's not fixed. Here's a concrete test case
{{{
module T2988 where
foo :: Int -> Bool -> String
foo y b
= let x1 = y+1
x2 = x1 : []
x3 = 1 : x2
x4 = 2 : x3
x5 = 3 : x4
x6 = 4 : x5
in case b of
True -> show x6
False -> show (reverse x6)
}}}
We get a cascade of one-at-a-time inlinings. Horrid.
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/2988#comment:18>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list