Performance patches
Simon Peyton-Jones
simonpj at microsoft.com
Wed Oct 27 16:00:08 EDT 2010
These patches can be held for 7.0.2 I think. They are just performance related and need more testing.
Simon
Wed Oct 27 11:42:35 PDT 2010 simonpj at microsoft.com<mailto:simonpj at microsoft.com>
* Buglet in tcIface, now that nested binders can have pragmas
This fix ties the knot for recursive groups properly
M ./compiler/iface/TcIface.lhs -23 +25
Wed Oct 27 11:56:30 PDT 2010 simonpj at microsoft.com<mailto:simonpj at microsoft.com>
* Yet another go at CoreArity
Amazingly, there were still Wrong Things in the arity analysis,
exposed by my fiddling with eta expansion.
I simplified the code, clarified the comments, added more examples,
and tidied it all up. I hope it's better this time.
M ./compiler/coreSyn/CoreArity.lhs -72 +107
Wed Oct 27 12:37:29 PDT 2010 simonpj at microsoft.com<mailto:simonpj at microsoft.com>
* Two signficant changes to the simplifier
1. Do eta-expansion at let-bindings, not lambdas.
I have wanted to do this for a long time.
See Note [Eta-expanding at let bindings] in SimplUtils
2. Simplify the rather subtle way in which InlineRules (the
template captured by an INLINE pragma) was simplified.
Now, these templates are always simplified in "gentle"
mode only, and only INLINE things inline inside them.
See Note Note [Gentle mode], Note [Inlining in gentle mode]
and Note [RULEs enabled in SimplGently] in SimplUtils
M ./compiler/basicTypes/BasicTypes.lhs -7 +12
M ./compiler/simplCore/SimplEnv.lhs -1 +3
M ./compiler/simplCore/SimplUtils.lhs -191 +239
M ./compiler/simplCore/Simplify.lhs -59 +55
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/cvs-ghc/attachments/20101027/a370a4cd/attachment.html
More information about the Cvs-ghc
mailing list