
(The desired effect would be that ds5 gets inlined into lvl6, so that
#14137: Do more inlining into non-recursive join points -------------------------------------+------------------------------------- Reporter: simonpj | Owner: nomeata Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.2.1 Resolution: | Keywords: JoinPoints Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by simonpj): {{{ | Just _ <- willBeJoinId_maybe bndr = env }}} I think `isJoinId` would be fine, and much faster. the remaining uses of ds5, all in joinrec safe, are tail-calls and ds5 gets turned into a join point. Right?) Not quite: `ds5` won't be a join point; it'll disappear entirely by being inlined. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14137#comment:5 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler