This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH] export.h: reduce __ksymtab_strings string duplication by using "MS" section flags
- From: Gunther Nikl <gnikl at justmail dot de>
- To: Rasmus Villemoes <linux at rasmusvillemoes dot dk>
- Cc: "binutils at sourceware dot org" <binutils at sourceware dot org>
- Date: Mon, 25 Nov 2019 20:07:40 +0100
- Subject: Re: [PATCH] export.h: reduce __ksymtab_strings string duplication by using "MS" section flags
- References: <20191120145110.8397-1-jeyu@kernel.org> <93d3936d-0bc4-9639-7544-42a324f01ac1@rasmusvillemoes.dk> <20191121160919.GB22213@linux-8ccs> <CAK7LNAT=+VMTpK3nBy3J-M9idf8MBi4dB4WKexYatiV2pNHvMg@mail.gmail.com> <b280c412-432b-ff54-acbd-a6bcc74b6e72@rasmusvillemoes.dk>
[CC trimmed]
Rasmus Villemoes <linux at rasmusvillemoes dot dk> wrote:
>
> cc += binutils ML
>
> [on @progbits v %progbits in generic (data only) assembly code]
>
>
> The binutils source [obj-elf.c] has code like
>
> + if (*input_line_pointer == '@' || *input_line_pointer
> == '%')
> + {
> + ++input_line_pointer;
> + if (strncmp (input_line_pointer, "progbits",
> + sizeof "progbits" - 1) == 0)
> + {
> + type = SHT_PROGBITS;
> + input_line_pointer += sizeof "progbits" - 1;
> + }
> + else if (strncmp (input_line_pointer, "nobits",
> + sizeof "nobits" - 1) == 0)
> + {
> + type = SHT_NOBITS;
> + input_line_pointer += sizeof "nobits" - 1;
> + }
>
>
> all the way back from
>
> commit 252b5132c753830d5fd56823373aed85f2a0db63 (tag:
> binu_ss_19990502) Author: Richard Henderson <rth@redhat.com>
> Date: Mon May 3 07:29:11 1999 +0000
>
> 19990502 sourceware import
According to the Changelog of the mentioned import the check for '%'
was added in February 1999.
I don't know if you realized that the git repository does contain older
history. AFAICT that history is only available through file history.
Blame of a current source can only point to the sourceware import
commit as the "oldest" version because the repository was recreated by
this commit. An earlier commit emptied the repository. I suppose this
is an artifact of the way the git (svn?) repository was constructed.
Regards,
Gunther