* elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Drop

unwanted zero terminators.
This commit is contained in:
Alan Modra 2008-07-21 07:49:58 +00:00
parent dc1859a6ef
commit f60e73e9fc
2 changed files with 10 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2008-07-21 Alan Modra <amodra@bigpond.net.au>
* elf-eh-frame.c (_bfd_elf_discard_section_eh_frame): Drop
unwanted zero terminators.
2008-07-21 Alan Modra <amodra@bigpond.net.au>
* elf32-spu.c (spu_elf_relocate_section): Expand

View File

@ -1077,7 +1077,11 @@ _bfd_elf_discard_section_eh_frame
hdr_info = &elf_hash_table (info)->eh_info;
for (ent = sec_info->entry; ent < sec_info->entry + sec_info->count; ++ent)
if (!ent->cie)
if (ent->size == 4)
/* There should only be one zero terminator, on the last input
file supplying .eh_frame (crtend.o). Remove any others. */
ent->removed = sec->map_head.s != NULL;
else if (!ent->cie)
{
cookie->rel = cookie->rels + ent->reloc_index;
BFD_ASSERT (cookie->rel < cookie->relend