[GHC] #14951: SpecContsr needs two runs when one should suffice

GHC ghc-devs at haskell.org
Wed Mar 21 15:43:01 UTC 2018


#14951: SpecContsr needs two runs when one should suffice
-------------------------------------+-------------------------------------
        Reporter:  nomeata           |                Owner:  (none)
            Type:  task              |               Status:  new
        Priority:  normal            |            Milestone:
       Component:  Compiler          |              Version:  8.2.2
      Resolution:                    |             Keywords:  SpecConstr
Operating System:  Unknown/Multiple  |         Architecture:
                                     |  Unknown/Multiple
 Type of failure:  None/Unknown      |            Test Case:
      Blocked By:                    |             Blocking:
 Related Tickets:  #14844            |  Differential Rev(s):
       Wiki Page:                    |
-------------------------------------+-------------------------------------

Comment (by nomeata):

 > This can potentially make things much worse.

 What do you mean with worse? We can construct cases where we would create
 specializations of the outer functions that are not beneficial, but it
 wound’t make things worse, right?

 In the end it's all heuristic. But I’d like to be able to make small steps
 forwards to unblock loopification rather than wait for a complete rewrite
 of !SpecConstr (as much as I appreciate such a thing, the module is a
 beast :-))

 And in general we try hard to make our transformations as idempotent as
 possible, so we should do that here as well.

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/14951#comment:9>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler


More information about the ghc-tickets mailing list