
#11770: Demand analysis: Wrong one-shot annotation due to fixed-point iteration -------------------------------------+------------------------------------- Reporter: nomeata | Owner: Type: bug | Status: new 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): Wiki Page: | -------------------------------------+------------------------------------- Comment (by nomeata):
Get rid of all one-shot setting in the demand analyser, letting the occurrence analyser do the work. The demand analyser would then annotate only demand info.
But would that not mean that useful one-shot information determined by the demand analyzer will not be reflected here, and hence not used in later passes, e.g. by the simplifier when trying to to floating a let into a lambda?
I'm suspicious of that updOneShotInfo which keeps one-shot info if it was there before.
Note that due to the magic `oneShot` function, there might be one-shot info worth preserving. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/11770#comment:3 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler