#2132: Optimise nested comparisons --------------------------------------+------------------------------------- Reporter: simonpj | Owner: Type: bug | Status: patch Priority: lowest | Milestone: 7.6.1 Component: Compiler | Version: 6.8.2 Resolution: | Keywords: Os: Unknown/Multiple | Architecture: Unknown/Multiple Failure: Runtime performance bug | Difficulty: Unknown Testcase: | Blockedby: Blocking: | Related: --------------------------------------+-------------------------------------
Comment(by simonmar): C/C++ compilers use abstract interpretation to do this, e.g. [http://en.wikipedia.org/wiki/Sparse_conditional_constant_propagation]. This could be expressed very nicely as a Hoopl optimisation, which would deal nicely with loops too. However, at the Hoopl level we would only be able to optimise within a single function or closure, whereas doing this at the Core level has far greater reach. I don't have any specific comments about this particular implementation - there's a lot of code and I haven't fully reviewed it. I still think the best way forward is for this to be a plugin; I think all the infrastructure is in place to make this work. -- Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/2132#comment:26> GHC <http://www.haskell.org/ghc/> The Glasgow Haskell Compiler _______________________________________________ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs