[using gcc book] ch3.8 options that control optimization
Geoff Keating
geoffk@geoffk.org
Tue Aug 26 17:03:00 GMT 2003
Chris Devers <cdevers@pobox.com> writes:
> The chapter 3, section 8 writeup of the max-inline-insns optimization
> option starts with this sentence:
>
> The tree inliner does decrease the allowable size for single
> functions to be inlined after we already inlined the number of
> instructions given here by repeated inlining.
>
> Scary.
>
> I'd like to rewrite this, possibly as two or three short, clear sentences,
> but I'm having a hard time even parsing out the intent here. I've tried a
> couple of variations, but I'm not sure that they do a good job of of
> preserving the meaning.
>
> The full paragraph is as follows:
>
> The tree inliner does decrease the allowable size for single
> functions to be inlined after we already inlined the number of
> instructions given here by repeated inlining. This number
> should be a factor of two or more larger than the single
> function limit. Higher numbers result in better runtime
> performance, but incur higher compile-time resource (CPU time,
> memory) requirements and result in larger binaries. Very high
> values are not advisable, as too large binaries may adversely
> affect runtime performance. The default value is 600.
>
> Can someone please take a crack at this, or at least point me in the right
> direction to get started on a clarification? Thank you.
Well, I'd start with
After this number of functions have been inlined into a function, the
tree inliner reduces the maximum size of a function that will
be inlined into this function.
and then try to improve it from there.
--
- Geoffrey Keating <geoffk@geoffk.org>
More information about the Gcc
mailing list