
#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: -------------------------------------+------------------------------------- Comment (by bgamari): I would hope that the example above would get lowered to something like the following, {{{#!hs let !p = a ==# 1 `orI#` a ==# 5 `orI#` a ==# 8 `orI#` a ==# 9 `orI#` a ==# 11 `orI#` a ==# 19 case p of 1 -> do_something 0 -> do_something_else }}} The idea is that I'd want to avoid emitting branches in this case. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10124#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler