This is the mail archive of the
mailing list for the binutils project.
Re: Map ".text.hot" and ".text.unlikely" input section prefixes to separate output sections.
On Tue, Nov 20, 2012 at 9:50 AM, Sriraman Tallam <email@example.com> wrote:
> On Mon, Nov 19, 2012 at 4:52 PM, Ian Lance Taylor <firstname.lastname@example.org> wrote:
>> On Mon, Nov 19, 2012 at 2:52 PM, Alan Modra <email@example.com> wrote:
>>> On Fri, Nov 16, 2012 at 05:19:01PM -0800, Ian Lance Taylor wrote:
>>>> On Wed, Nov 14, 2012 at 5:06 PM, Sriraman Tallam <firstname.lastname@example.org> wrote:
>>>> >> Ideally gold should group all input sections with the same name
>>> I strongly disagree. Grouping sections with the same name is a bad
>>> idea, unless the name gives you some infomation from the compiler (as
>>> it does with .text.hot* et al). The problem with grouping sections
>>> with the same name is that with -ffunction-sections objects, you'll
>>> potentially move functions away from their callers, losing cache
>>> locality. The canonical example is a number of object files with
>>> static "setup" functions. These will all have code in .text.setup,
>>> but there is no good reason to group these sections.
>> That is a good point.
>> Unfortunately it leaves us adding more special cases for section
>> names, which I really dislike. Is there any happy medium?
> gold now has multiple ways to reorder functions. There is the
> --section-ordering-file option, there is the plugin interface, and
> also the reordering via linker scripts. So, instead of adding another
> way to sort text sections, I was wondering instead if we could just
> use the --section-ordering-file mechanism. I can initialize the data
> structures to do this ordering by default. Is this a reasonable idea?
Sure, if it works, and if using the --section-ordering-file option
doesn't discard the defaults unnecessarily.