[PATCH] elf: Also check linked-to section for SHT_NOTE section
H.J. Lu
hjl.tools@gmail.com
Wed Sep 30 13:43:03 GMT 2020
On Wed, Sep 30, 2020 at 3:56 AM Nick Clifton <nickc@redhat.com> wrote:
>
> Hi Fangrui, Hi H.J.,
>
> > If the section group intention of .annobin.text is so that .annobin.text
> > can be discarded if the associated .text is discarded (--gc-sections),
> > an alternative is SHF_LINK_ORDER
>
> Sorry to bother you with this, but I am having some troubles
> getting to grip with using SHF_LINK_ORDER to eliminate unused
> sections. I create a small test file to compare using groups
> and link_orders but it does not work as I would expect:
>
> % cat eliminate.s
> .text
> .nop
>
> .section .unused1, "ax", %progbits
> .nop
>
> .section .unused2, "axG", %progbits, unused_group
> .nop
>
> .section .gnu.note.text, "", %note
> .word 1
>
> .section .gnu.note1, "o", %note, .unused1
> .word 2
>
> .section .gnu.note2, "G", %note, unused_group
> .word 3
>
> % as eliminate.s -o elminate.o
> % ld -e0 --gc-sections --print-gc-sections elminate.o
> ld: removing unused section '.group' in file 'eliminate.o'
> ld: removing unused section '.text' in file 'eliminate.o'
> ld: removing unused section '.unused1' in file 'eliminate.o'
> ld: removing unused section '.unused2[unused_group]' in file 'eliminate.o'
> ld: removing unused section '.gnu.note2[unused_group]' in file 'eliminate.o'
> ld: a.out: sh_link of section `.gnu.note1' points to discarded section `.unused1' of `eliminate.o'
> ld/: final link failed: bad value
>
> I thought that the sh_link from .gnu.note1 to .unused1 would mean that it
> should be discarded when .unused1 is discarded. But instead I get an
> error.
>
> I am probably doing something silly, but please could you point me in the
> right direction ?
>
Please try this patch.
--
H.J.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-elf-Also-check-linked-to-section-for-SHT_NOTE-sectio.patch
Type: application/x-patch
Size: 2576 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20200930/39f04c7b/attachment.bin>
More information about the Binutils
mailing list