
#14372: CMM contains a bunch of tail-merging opportunities -------------------------------------+------------------------------------- Reporter: heisenbug | Owner: (none) Type: feature request | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.2.1 Resolution: | Keywords: 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 jp.rider63): Yes, I was slightly confused about the CBE discussion, but it seems somewhat related. FYI, this is my [https://github.com/bos/aeson/pull/599 motivating example]. The speedup I thought was happening due to eliminating common tails actually turned out to be from (lack of) inlining on someone else's machine. Either way, I think it makes sense to benchmark performance differences and see if this change is worthwhile. Even if performance is similar, it might be worth implementing to reduce code size. For my use case, one optimization that might help more is creating lookup tables when matching on `Word8`. Maybe I'll create another ticket for that in the future. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/14372#comment:16 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler