On Thu, 5 Feb 2009, Paul Brook wrote: > > For -Os it should be enough to set PARAM_STACK_FRAME_GROWTH > > to zero. Inlining at -Os should already only happen if it decreases > > (overall!) code-size. Thus, inlining a function that is called once and > > that does not need to be emitted will always be an overall code-size > > win. > > > > > A side question... Are 'static' single call-site functions always > > > inlined? I would hope not (under -Os), but just checking. > > > > Yes. This is always a code-size win. > > Should be, but in practice isn't. > > On Thumb-2 we found that the overhead of a function call was often smaller > than the cost of lengthening branches in the caller.
I'm willing to believe it can also lead to higher register pressure. (weasel words for "I haven't checked and I can think of reasons both why it could, and why it should not") brgds, H-P