diff options
author | Maciej W. Rozycki <macro@linux-mips.org> | 2013-08-24 22:16:41 +0000 |
---|---|---|
committer | Maciej W. Rozycki <macro@linux-mips.org> | 2013-08-24 22:16:41 +0000 |
commit | 387f8054ca819e73bd9d0c17d23dbe4e68c67947 (patch) | |
tree | f5de35e954fd23c64de9b724604b5a96394ac275 /bfd | |
parent | b122423813ed1cf2255243e21bd0a6229fcadef6 (diff) | |
download | gdb-387f8054ca819e73bd9d0c17d23dbe4e68c67947.zip gdb-387f8054ca819e73bd9d0c17d23dbe4e68c67947.tar.gz gdb-387f8054ca819e73bd9d0c17d23dbe4e68c67947.tar.bz2 |
* elf32-tilepro.c (tilepro_elf_finish_dynamic_sections): Don't
set GOT's entry size if there is no ELF section data.
* elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise.
* elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_sections):
Likewise.
Diffstat (limited to 'bfd')
-rw-r--r-- | bfd/ChangeLog | 8 | ||||
-rw-r--r-- | bfd/elf32-tilepro.c | 5 | ||||
-rw-r--r-- | bfd/elf64-s390.c | 5 | ||||
-rw-r--r-- | bfd/elfxx-sparc.c | 7 |
4 files changed, 18 insertions, 7 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 6e34cc7..cc4d7fd 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,11 @@ +2013-08-24 Maciej W. Rozycki <macro@linux-mips.org> + + * elf32-tilepro.c (tilepro_elf_finish_dynamic_sections): Don't + set GOT's entry size if there is no ELF section data. + * elf64-s390.c (elf_s390_finish_dynamic_sections): Likewise. + * elfxx-sparc.c (_bfd_sparc_elf_finish_dynamic_sections): + Likewise. + 2013-08-23 H.J. Lu <hongjiu.lu@intel.com> * elf64-x86-64.c (get_elf_x86_64_arch_data): New. diff --git a/bfd/elf32-tilepro.c b/bfd/elf32-tilepro.c index 62b9553..c36da2b 100644 --- a/bfd/elf32-tilepro.c +++ b/bfd/elf32-tilepro.c @@ -3909,8 +3909,9 @@ tilepro_elf_finish_dynamic_sections (bfd *output_bfd, PLT_ENTRY_SIZE - PLT_HEADER_SIZE); } - elf_section_data (splt->output_section)->this_hdr.sh_entsize - = PLT_ENTRY_SIZE; + if (elf_section_data (splt->output_section) != NULL) + elf_section_data (splt->output_section)->this_hdr.sh_entsize + = PLT_ENTRY_SIZE; } if (htab->elf.sgotplt) diff --git a/bfd/elf64-s390.c b/bfd/elf64-s390.c index 75413e0..3aea98c 100644 --- a/bfd/elf64-s390.c +++ b/bfd/elf64-s390.c @@ -3692,8 +3692,9 @@ elf_s390_finish_dynamic_sections (bfd *output_bfd, - htab->elf.splt->output_section->vma - 6)/2, htab->elf.splt->contents + 8); } - elf_section_data (htab->elf.splt->output_section) - ->this_hdr.sh_entsize = PLT_ENTRY_SIZE; + if (elf_section_data (htab->elf.splt->output_section) != NULL) + elf_section_data (htab->elf.splt->output_section)->this_hdr.sh_entsize + = PLT_ENTRY_SIZE; } if (htab->elf.sgotplt) diff --git a/bfd/elfxx-sparc.c b/bfd/elfxx-sparc.c index ba00105..94da360 100644 --- a/bfd/elfxx-sparc.c +++ b/bfd/elfxx-sparc.c @@ -4793,9 +4793,10 @@ _bfd_sparc_elf_finish_dynamic_sections (bfd *output_bfd, struct bfd_link_info *i } } - elf_section_data (splt->output_section)->this_hdr.sh_entsize - = (htab->is_vxworks || !ABI_64_P (output_bfd)) - ? 0 : htab->plt_entry_size; + if (elf_section_data (splt->output_section) != NULL) + elf_section_data (splt->output_section)->this_hdr.sh_entsize + = ((htab->is_vxworks || !ABI_64_P (output_bfd)) + ? 0 : htab->plt_entry_size); } /* Set the first entry in the global offset table to the address of |