#4941: SpecConstr generates functions that do not use their arguments
---------------------------------+------------------------------------------
Reporter: simonpj | Owner:
Type: task | Status: new
Priority: normal | Milestone: _|_
Component: Compiler | Version: 7.0.1
Keywords: | Testcase:
Blockedby: | Difficulty:
Os: Unknown/Multiple | Blocking:
Architecture: Unknown/Multiple | Failure: Runtime performance bug
---------------------------------+------------------------------------------
Comment(by rl):
Why do you need SAT for stream fusion?
The problem with pulling strictness analysis and w/w into the loop is that
you basically need a SpecConstr/simplify loop with an unbounded number of
iterations because strictness and w/w are only useful if you simplify
afterwards. I implemented something like this (without strictness
analysis) for the stream fusion paper - see the "Specialising on lambdas"
bit in #855. It was awfully fragile.
Perhaps it is possible to implement a combined shape/demand analysis which
subsumes both the current strictness analysis and the analysis that is
done by SpecConstr. Maybe SpecConstr could then subsume worker/wrapper as
well.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/4941#comment:4>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs