https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66240
--- Comment #2 from Denis Vlasenko <vda.linux at googlemail dot com> --- (In reply to Josh Triplett from comment #1) > Another alternative discussed in that thread, which seems near-ideal: align > functions to a given size (for instance, 64 bytes), pack them into that size > if they fit, but avoid splitting a function across that boundary unless it's > larger than that boundary. Josh, I would be more than happy to see gcc/ld becoming clever enough to pack functions intelligently (say, align big ones to cacheline boundaries, and fit tiny ones into the resulting padding "holes"). I'm afraid in the current state of gcc code, that'll be a very tall order to fulfil. In this BZ, I'm asking for something easy-ish to be done.