
#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