Inliner down from 100 sec to 50 sec. Here's how.


After some feedback last week on the improved Inliner, I essentially refactored my changes adding documentation and additional improvements along the way. These are all the optimizations I see applicable in a sequential version (hint hint: there might be a parallel version in the future).

If you ask me, I think its code quality is ripe enough for a pull request into trunk. Which makes your feedback all the more important (and who doesn't want for -optimize to run about twice faster). It would be great if you could field-test the following branch with your apps of choice:

   https://github.com/magarciaEPFL/scala/tree/improvedInliner

and report any differences in -Yinling log output, focusing on lines starting with "[log inliner] Inlining" which denote inlinings actually performed.


Miguel
http://lampwww.epfl.ch/~magarcia/ScalaCompilerCornerReloaded/

Copyright © 2013 École Polytechnique Fédérale de Lausanne (EPFL), Lausanne, Switzerland