* elf32-tilepro.c (tilepro_elf_finish_dynamic_sections): Don't
authorMaciej W. Rozycki <macro@linux-mips.org>
Sat, 24 Aug 2013 22:16:41 +0000 (22:16 +0000)
committerMaciej W. Rozycki <macro@linux-mips.org>
Sat, 24 Aug 2013 22:16:41 +0000 (22:16 +0000)
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.

bfd/ChangeLog
bfd/elf32-tilepro.c
bfd/elf64-s390.c
bfd/elfxx-sparc.c

index 6e34cc7..cc4d7fd 100644 (file)
@@ -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.
index 62b9553..c36da2b 100644 (file)
@@ -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)
index 75413e0..3aea98c 100644 (file)
@@ -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)
index ba00105..94da360 100644 (file)
@@ -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