
#8589: Bad choice of loop breaker with INLINABLE/INLINE --------------------------------------------+------------------------------ Reporter: NickSmallbone | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.6.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime performance bug | Unknown/Multiple Test Case: | Difficulty: Unknown Blocking: | Blocked By: | Related Tickets: --------------------------------------------+------------------------------ Comment (by tibbe): Aside: I've seen other cases where INLINE and INLINABLE makes things worse that are related to other optimizations being inhibited (i.e. not due to code size increase). I find it slightly worrying that INLINE has other effects than making an expression look cheap (i.e. the original, unoptimized core is inlined, at which point it might be too late for optimization to happen). I understand the reason (rules) we made INLINE behave differently, but perhaps we need two pragmas? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/8589#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler