[GHC] #12915: cmmImplementSwitchPlans creates duplicate blocks

GHC ghc-devs at haskell.org
Sat Dec 3 14:29:20 UTC 2016


#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


More information about the ghc-tickets mailing list