
#15090: Do more coercion optimisation on the fly -------------------------------------+------------------------------------- Reporter: simonpj | Owner: (none) Type: task | Status: new Priority: normal | Milestone: 8.6.1 Component: Compiler | Version: 8.2.2 Resolution: | Keywords: Coercions Operating System: Unknown/Multiple | Architecture: Type of failure: Compile-time | Unknown/Multiple performance bug | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by tdammers): I tried to figure out how to do this, but I'm a bit confused - `mkTransCo` takes two coercions and builds a `TransCo` from them, but IIUC, the optimisation we're talking about should detect suitable `NthCo`'s and turn them into `AppCo`s. So I don't quite understand why this needs to be done in `mkTransCo` rather than `mkNthCo`. Or should `mkTransCo` drill down into its arguments and perform the optimisation on those? -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15090#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler