Re: Suboptimal inline heuristics due to non-code sections
From: Linus Torvalds
Date: Tue May 01 2018 - 11:37:25 EST
On Tue, May 1, 2018 at 6:40 AM Josh Poimboeuf <jpoimboe@xxxxxxxxxx> wrote:
> But if I remove the section completely by removing the
> pushsection/popsection, then copy_overflow() gets inlined.
> So GCC's inlining decisions are somehow influenced by the existence of
> some random empty section. This definitely seems like a GCC bug to me.
I think gcc uses the size of the string to approximate the size of an
inline asm.
So I don't think it's the "empty section" that makes gcc do this, I think
it's literally "our inline asms _look_ big".
Linus "does this section directive make me look fat?"
Torvalds