
#12915: cmmImplementSwitchPlans creates duplicate blocks -------------------------------------+------------------------------------- Reporter: alexbiehl | Owner: Type: bug | Status: new Priority: normal | Milestone: Component: Compiler | Version: 8.0.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 nomeata): Just guessing here, but we should probably not run sinking earlier, before `layoutStack`. We could run `elimCommonBlocks` again later, but that might be expensive and not very often kick in. Maybe with `-O2`? My gut feeling is that this comes up rather rarely. If someone wants to find evidence to the contrary: Add a late `elimCommonBlocks` pass, dump number of blocks before and after, run `nofib` and see how often it fires. Or (easier) report the change in code size. There is probably no obvious way of avoiding to generate these dead assignments in the first place? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12915#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler