
#10124: Simple case analyses generate too many branches -------------------------------------+------------------------------------- Reporter: bgamari | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.8.4 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: Type of failure: Runtime | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: #6135, | Differential Revisions: #9661,#10137 | -------------------------------------+------------------------------------- Comment (by rwbarton): This benchmark does quite a lot of allocation, unless that changes in HEAD (I tested with 7.10.1). It would be better for microbenchmarking purposes to avoid all the allocation. Anyways I would expect the original to be a bit faster for this particular microbenchmark, since the branches will all be predicted correctly and a predicted branch is basically free. It might be a different matter with `concat (replicate 100000000 ['\001'..'z'])`. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10124#comment:16 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler