diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2021-03-18 20:46:28 -0700 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2021-03-18 20:57:02 -0700 |
commit | 3818d4ab066ee40b976513b247b5da5f20379b66 (patch) | |
tree | ebb68ff9dea8c35f68178204ce3de18989126655 /bfd/ChangeLog | |
parent | 51f6e7a9f4210aed0f8156c1d2e348de6f96f37d (diff) | |
download | gdb-3818d4ab066ee40b976513b247b5da5f20379b66.zip gdb-3818d4ab066ee40b976513b247b5da5f20379b66.tar.gz gdb-3818d4ab066ee40b976513b247b5da5f20379b66.tar.bz2 |
elf: Handle .gnu.debuglto_.debug_* sections
commit 994b25132814f4c2be93ce53a616a74139c4cf3c
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Sun Jan 17 20:01:16 2021 -0800
ld/elf: Ignore section symbols when matching linkonce with comdat
ignored section symbols when comparing symbols in 2 sections. Since all
references to debugging sections are done with section symbols, symbols
in debugging sections are ignored and we fail to match symbols in comdat
debugging sections. Also .gnu.debuglto_.debug_* sections aren't treated
as debugging sections.
1. Treate .gnu.debuglto_.debug_ section as debugging section unless it
is marked with SHF_EXCLUDE.
2. Revert commit 994b2513281 in elf_create_symbuf.
3. Ignore section symbols only when matching non-debugging sections or
linkonce section with comdat section.
bfd/
PR ld/27590
* elf.c (_bfd_elf_make_section_from_shdr): Treate
.gnu.debuglto_.debug_ section as debugging section unless it is
marked with SHF_EXCLUDE.
* elflink.c (elf_create_symbuf): Revert commit 994b2513281.
(bfd_elf_match_symbols_in_sections): Ignore section symbols when
matching non-debugging sections or linkonce section with comdat
section.
ld/
PR ld/27590
* testsuite/ld-elf/pr27590.s: New file.
* testsuite/ld-elf/pr27590a.d: Likewise.
* testsuite/ld-elf/pr27590b.d: Likewise.
* testsuite/ld-i386/i386.exp: Also run ld/27193 test with
--reduce-memory-overheads.
Diffstat (limited to 'bfd/ChangeLog')
-rw-r--r-- | bfd/ChangeLog | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 94155de..2e43a4d 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,5 +1,16 @@ 2021-03-18 H.J. Lu <hongjiu.lu@intel.com> + PR ld/27590 + * elf.c (_bfd_elf_make_section_from_shdr): Treate + .gnu.debuglto_.debug_ section as debugging section unless it is + marked with SHF_EXCLUDE. + * elflink.c (elf_create_symbuf): Revert commit 994b2513281. + (bfd_elf_match_symbols_in_sections): Ignore section symbols when + matching non-debugging sections or linkonce section with comdat + section. + +2021-03-18 H.J. Lu <hongjiu.lu@intel.com> + PR ld/27587 * dwarf2.c (read_attribute_value): Check version >= 3 for DW_FORM_ref_addr. |