
#12368: Demand Analyzer: Cunnig plan not adhered to with aborting fixpoint interation -------------------------------------+------------------------------------- Reporter: nomeata | Owner: Type: bug | Status: patch Priority: low | Milestone: Component: Compiler | Version: 8.0.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:D2392 Wiki Page: | -------------------------------------+------------------------------------- Comment (by nomeata): Working on this right now. I refactored the code quite a bit, removed some redundancies (such as passing around an strictness signature right next to an id, when that id is guaranteed to have been annotated with that strictness signature). Code pushed to `wip/12368`, push to Phabricator will happens once the automatic validators have validated the change.
I think there is no need to do addPessimisticSigs.
Are you sure? Any variable with useful information (strict or used-once) will not be included in `lazy_fv` (according to `splitFVs`). If we now also remove them from the strictness signatures, their uses are not recorded anywhere – and then probably considered absent. I’ll try to produce a test case to verify that theory. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/12368#comment:12 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler