
#15573: Make bindings with multiple occurrences a join point instead of duplicating code during inlining. -------------------------------------+------------------------------------- Reporter: AndreasK | Owner: (none) Type: task | Status: new Priority: normal | Milestone: 8.6.1 Component: Compiler | Version: 8.4.3 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): This relates to #15560: in the current ticket you are proposing the to use float-in (the opposite of float-out) to make `cseAlts_s1dD` a local binging again. I'd prefer instead to make the top-level version (in the Description) more efficient so that it's just as efficient as the join-point version. One reason I want to do that is because it improves inlining opportunities, by making the function (`fmerge` in this case) smaller. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15573#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler