Fix a bug in the s390x linker when discarding all inpuit files.
authorNick Clifton <nickc@redhat.com>
Thu, 19 Nov 2020 17:36:24 +0000 (17:36 +0000)
committerNick Clifton <nickc@redhat.com>
Thu, 19 Nov 2020 17:36:24 +0000 (17:36 +0000)
PR 26918
* elf64-s390.c (elf_s390_finish_dynamic_sections): Check for the
existance of an sgot output section before setting the
sh_entsize.

bfd/ChangeLog
bfd/elf64-s390.c

index a23da61653dbeda0e53747cace64fbf3db660235..2aa89d01db8927becc77197026cbed4b1e598f58 100644 (file)
@@ -1,3 +1,10 @@
+2020-11-19  Nick Clifton  <nickc@redhat.com>
+
+       PR 26918
+       * elf64-s390.c (elf_s390_finish_dynamic_sections): Check for the
+       existance of an sgot output section before setting the
+       sh_entsize.
+
 2020-11-18  Jozef Lawrynowicz  <jozef.l@mittosystems.com>
        H.J. Lu  <hongjiu.lu@intel.com>
 
index 0522850a5d8784fef2aece9a4b6c641c3b5ebce3..41b19bcd2cedb0441bd616a338fff303e7dd7b2d 100644 (file)
@@ -3547,8 +3547,9 @@ elf_s390_finish_dynamic_sections (bfd *output_bfd,
          bfd_put_64 (output_bfd, (bfd_vma) 0,
                      htab->elf.hgot->root.u.def.section->contents + 16);
        }
-      elf_section_data (htab->elf.sgot->output_section)
-       ->this_hdr.sh_entsize = 8;
+      if (elf_section_data (htab->elf.splt->output_section) != NULL)
+       elf_section_data (htab->elf.sgot->output_section)
+         ->this_hdr.sh_entsize = 8;
     }
 
   /* Finish dynamic symbol for local IFUNC symbols.  */