Fri Apr 3 01:46:34 PDT 2009 [email protected]
* Adjust inlining heursitics
Ignore-this: a2d6849726f6705e06941c74137bfe7e
This patch is the result of a long series of nofib-based experiments
to improve GHC's inlining heuristics.
In the end, I'm not sure how worthwhile it all was: I only got a
1% decrease in code size
1% decrease in allocation
and I don't trust the runtime statistics enough to quote.
Still, in doing all this I tidied up the code quite a bit, and
I understand it much better now, so I'm going to commit it.
The main changes are in CoreUnfold, which has lots of new comments.
Other changes:
- litSize moves from Literal to CoreUnfold
- interestingArg moves from SimplUtils to CoreUnfold
- the default unfolding threshold (in StaticFlags)
reduces from 8 to 6 (since the size calculation
has changed a bit)
M ./compiler/basicTypes/Literal.lhs -10
M ./compiler/coreSyn/CoreUnfold.lhs -164 +307
M ./compiler/main/StaticFlags.hs -1 +1
M ./compiler/simplCore/SimplUtils.lhs -37 +4
View patch online:
http://darcs.haskell.org/ghc/_darcs/patches/20090403084634-1287e-1a6ef6e1fe83b0b8b08024574bc0bd7dd1970baa.gz
_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc