[RFC] Early inlining pass

Richard Guenther richard.guenther@gmail.com
Wed Jun 1 08:27:00 GMT 2005


On 6/1/05, Jan Hubicka <jh@suse.cz> wrote:
> 
> Hi,
> this patch adds early inlining pass that inline the "obvious" stuff (ie
> functions having body smaller than the call construct and always inline
> functions).  This is followed by cleanup_cfg and true inlining pass.

Yay! ;)

> And finally I am not sure if the idea sounds like good way to go, but I am
> overall quite surprised that it is somewhat effective even for "common" code,
> not only tramp3d it was originally designed as a quick hack for, so I don't
> seem to come with good reasons against..

I think early inlining of wrappers & simple accessor methods in C++ is very
much important if profile-driven inlining is supposed to be useful.  Also only
with early inlining pre-inline optimizations can do useful work (as you noted),
and we may close the gap a little between the size estimate heuristics useful
for C and C++ code.

If this patch goes in in some form, I promise to do an extensive analysis of
code size estimate vs. text size again, for C and C++ testcases.

Thank you very much!

Richard.



More information about the Gcc-patches mailing list