
#11731: Simplifier: Inlining trivial let can lose sharing -------------------------------------+------------------------------------- Reporter: nomeata | Owner: Type: bug | Status: patch Priority: normal | Milestone: Component: Compiler | Version: 8.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): Phab:D2073 Wiki Page: | -------------------------------------+------------------------------------- Comment (by simonpj): Wow, that's quite remarkable. I ''hope'' that the ticky numbers will show why cichelli and mandel2 are improving . Since this is from the "final run" thing, it must presumably be from increasing the number of single entry thunks we find, right? And that should show up in the ticky numbers you gather. It's curious that other compiler benchmarks don't also worsen. Maybe you are right, but I rather doubt that 5% of compile time is the cost of single run of the demand analyser, unless it's a very pathological program with deeply nested letrecs. Again, it'd be good to try this with a ''stage1'' compiler to isolate the effects. But we'd expect this to speed up a stage2 compiler, so the effect would be more pronounced with stage1. In HEAD Ben has added a bit more time-tracking to passes which may help. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11731#comment:44 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler