-
- Downloads
Strip global symbol defined in discarded section
When a global symbol is defined in COMDAT group, we shouldn't leave an undefined symbol in symbol table when the symbol section is discarded unless there is a reference to the symbol outside of COMDAT group. bfd/ PR ld/17550 * elf-bfd.h (elf_link_hash_entry): Update comments for indx, documenting that indx == -3 if symbol is defined in a discarded section. * elflink.c (elf_link_add_object_symbols): Set indx to -3 if symbol is defined in a discarded section. (elf_link_output_extsym): Strip a global symbol defined in a discarded section. ld/ PR ld/17550 * testsuite/ld-elf/pr17550-1.s: New file. * testsuite/ld-elf/pr17550-2.s: Likewise. * testsuite/ld-elf/pr17550-3.s: Likewise. * testsuite/ld-elf/pr17550-4.s: Likewise. * testsuite/ld-elf/pr17550a.d: Likewise. * testsuite/ld-elf/pr17550b.d: Likewise. * testsuite/ld-elf/pr17550c.d: Likewise. * testsuite/ld-elf/pr17550d.d: Likewise.
Showing
- bfd/ChangeLog 11 additions, 0 deletionsbfd/ChangeLog
- bfd/elf-bfd.h 2 additions, 1 deletionbfd/elf-bfd.h
- bfd/elflink.c 12 additions, 0 deletionsbfd/elflink.c
- ld/ChangeLog 12 additions, 0 deletionsld/ChangeLog
- ld/testsuite/ld-elf/pr17550-1.s 9 additions, 0 deletionsld/testsuite/ld-elf/pr17550-1.s
- ld/testsuite/ld-elf/pr17550-2.s 6 additions, 0 deletionsld/testsuite/ld-elf/pr17550-2.s
- ld/testsuite/ld-elf/pr17550-3.s 14 additions, 0 deletionsld/testsuite/ld-elf/pr17550-3.s
- ld/testsuite/ld-elf/pr17550-4.s 15 additions, 0 deletionsld/testsuite/ld-elf/pr17550-4.s
- ld/testsuite/ld-elf/pr17550a.d 14 additions, 0 deletionsld/testsuite/ld-elf/pr17550a.d
- ld/testsuite/ld-elf/pr17550b.d 14 additions, 0 deletionsld/testsuite/ld-elf/pr17550b.d
- ld/testsuite/ld-elf/pr17550c.d 9 additions, 0 deletionsld/testsuite/ld-elf/pr17550c.d
- ld/testsuite/ld-elf/pr17550d.d 13 additions, 0 deletionsld/testsuite/ld-elf/pr17550d.d
Loading
Please register or sign in to comment