* [PATCH] elf: Support lld-style link map for librtld.map
@ 2020-03-13 2:09 Fangrui Song
2020-04-07 20:31 ` Adhemerval Zanella
0 siblings, 1 reply; 4+ messages in thread
From: Fangrui Song @ 2020-03-13 2:09 UTC (permalink / raw)
To: libc-alpha
GNU ld and gold's -Map include a line like:
path/to/build/libc_pic.a(check_fds.os)
lld -Map does not have the archive member list, but we can still derive the
members from the following output
VMA LMA Size Align Out In Symbol
...
1a1c0 1a1c0 e2 16 path/to/build/libc_pic.a(check_fds.os):(.text)
---
elf/Makefile | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/elf/Makefile b/elf/Makefile
index da689a2c7b..b035407112 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -512,9 +512,10 @@ $(objpfx)librtld.map: $(objpfx)dl-allobjs.os $(common-objpfx)libc_pic.a
rm -f $@.o
mv -f $@T $@
+# For lld, skip preceding addresses and values before matching the archive and the member.
$(objpfx)librtld.mk: $(objpfx)librtld.map Makefile
LC_ALL=C \
- sed -n 's@^$(common-objpfx)\([^(]*\)(\([^)]*\.os\)) *.*$$@\1 \2@p' \
+ sed -n 's@^[0-9a-f ]*$(common-objpfx)\([^(]*\)(\([^)]*\.os\)) *.*$$@\1 \2@p' \
$< | \
while read lib file; do \
case $$lib in \
--
2.25.1
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] elf: Support lld-style link map for librtld.map
2020-03-13 2:09 [PATCH] elf: Support lld-style link map for librtld.map Fangrui Song
@ 2020-04-07 20:31 ` Adhemerval Zanella
2020-04-20 19:44 ` Fangrui Song
0 siblings, 1 reply; 4+ messages in thread
From: Adhemerval Zanella @ 2020-04-07 20:31 UTC (permalink / raw)
To: Fangrui Song, libc-alpha
On 12/03/2020 23:09, Fangrui Song wrote:
> GNU ld and gold's -Map include a line like:
>
> path/to/build/libc_pic.a(check_fds.os)
>
> lld -Map does not have the archive member list, but we can still derive the
> members from the following output
>
> VMA LMA Size Align Out In Symbol
> ...
> 1a1c0 1a1c0 e2 16 path/to/build/libc_pic.a(check_fds.os):(.text)
The new regex will match more entries, but I think it is ok.
LGTM, thanks.
>
> ---
> elf/Makefile | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/elf/Makefile b/elf/Makefile
> index da689a2c7b..b035407112 100644
> --- a/elf/Makefile
> +++ b/elf/Makefile
> @@ -512,9 +512,10 @@ $(objpfx)librtld.map: $(objpfx)dl-allobjs.os $(common-objpfx)libc_pic.a
> rm -f $@.o
> mv -f $@T $@
>
> +# For lld, skip preceding addresses and values before matching the archive and the member.
> $(objpfx)librtld.mk: $(objpfx)librtld.map Makefile
> LC_ALL=C \
> - sed -n 's@^$(common-objpfx)\([^(]*\)(\([^)]*\.os\)) *.*$$@\1 \2@p' \
> + sed -n 's@^[0-9a-f ]*$(common-objpfx)\([^(]*\)(\([^)]*\.os\)) *.*$$@\1 \2@p' \
> $< | \
> while read lib file; do \
> case $$lib in \
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] elf: Support lld-style link map for librtld.map
2020-04-07 20:31 ` Adhemerval Zanella
@ 2020-04-20 19:44 ` Fangrui Song
2020-04-20 20:18 ` Adhemerval Zanella
0 siblings, 1 reply; 4+ messages in thread
From: Fangrui Song @ 2020-04-20 19:44 UTC (permalink / raw)
To: Adhemerval Zanella; +Cc: libc-alpha
On 2020-04-07, Adhemerval Zanella wrote:
>On 12/03/2020 23:09, Fangrui Song wrote:
>> GNU ld and gold's -Map include a line like:
>>
>> path/to/build/libc_pic.a(check_fds.os)
>>
>> lld -Map does not have the archive member list, but we can still derive the
>> members from the following output
>>
>> VMA LMA Size Align Out In Symbol
>> ...
>> 1a1c0 1a1c0 e2 16 path/to/build/libc_pic.a(check_fds.os):(.text)
>
>The new regex will match more entries, but I think it is ok.
>
>LGTM, thanks.
>
>>
>> ---
>> elf/Makefile | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/elf/Makefile b/elf/Makefile
>> index da689a2c7b..b035407112 100644
>> --- a/elf/Makefile
>> +++ b/elf/Makefile
>> @@ -512,9 +512,10 @@ $(objpfx)librtld.map: $(objpfx)dl-allobjs.os $(common-objpfx)libc_pic.a
>> rm -f $@.o
>> mv -f $@T $@
>>
>> +# For lld, skip preceding addresses and values before matching the archive and the member.
>> $(objpfx)librtld.mk: $(objpfx)librtld.map Makefile
>> LC_ALL=C \
>> - sed -n 's@^$(common-objpfx)\([^(]*\)(\([^)]*\.os\)) *.*$$@\1 \2@p' \
>> + sed -n 's@^[0-9a-f ]*$(common-objpfx)\([^(]*\)(\([^)]*\.os\)) *.*$$@\1 \2@p' \
>> $< | \
>> while read lib file; do \
>> case $$lib in \
>>
Adhemerval, can you (or another maintainer) commit this on my behalf?
We havn't heard objections so far.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] elf: Support lld-style link map for librtld.map
2020-04-20 19:44 ` Fangrui Song
@ 2020-04-20 20:18 ` Adhemerval Zanella
0 siblings, 0 replies; 4+ messages in thread
From: Adhemerval Zanella @ 2020-04-20 20:18 UTC (permalink / raw)
To: Fangrui Song; +Cc: libc-alpha
On 20/04/2020 16:44, Fangrui Song wrote:
> On 2020-04-07, Adhemerval Zanella wrote:
>> On 12/03/2020 23:09, Fangrui Song wrote:
>>> GNU ld and gold's -Map include a line like:
>>>
>>> path/to/build/libc_pic.a(check_fds.os)
>>>
>>> lld -Map does not have the archive member list, but we can still derive the
>>> members from the following output
>>>
>>> VMA LMA Size Align Out In Symbol
>>> ...
>>> 1a1c0 1a1c0 e2 16 path/to/build/libc_pic.a(check_fds.os):(.text)
>>
>> The new regex will match more entries, but I think it is ok.
>>
>> LGTM, thanks.
>>
>>>
>>> ---
>>> elf/Makefile | 3 ++-
>>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/elf/Makefile b/elf/Makefile
>>> index da689a2c7b..b035407112 100644
>>> --- a/elf/Makefile
>>> +++ b/elf/Makefile
>>> @@ -512,9 +512,10 @@ $(objpfx)librtld.map: $(objpfx)dl-allobjs.os $(common-objpfx)libc_pic.a
>>> rm -f $@.o
>>> mv -f $@T $@
>>>
>>> +# For lld, skip preceding addresses and values before matching the archive and the member.
>>> $(objpfx)librtld.mk: $(objpfx)librtld.map Makefile
>>> LC_ALL=C \
>>> - sed -n 's@^$(common-objpfx)\([^(]*\)(\([^)]*\.os\)) *.*$$@\1 \2@p' \
>>> + sed -n 's@^[0-9a-f ]*$(common-objpfx)\([^(]*\)(\([^)]*\.os\)) *.*$$@\1 \2@p' \
>>> $< | \
>>> while read lib file; do \
>>> case $$lib in \
>>>
>
> Adhemerval, can you (or another maintainer) commit this on my behalf?
> We havn't heard objections so far.
I will do it.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-04-20 20:18 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-13 2:09 [PATCH] elf: Support lld-style link map for librtld.map Fangrui Song
2020-04-07 20:31 ` Adhemerval Zanella
2020-04-20 19:44 ` Fangrui Song
2020-04-20 20:18 ` Adhemerval Zanella
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).