From: Nick Clifton Date: Thu, 19 Nov 2020 17:36:24 +0000 (+0000) Subject: Fix a bug in the s390x linker when discarding all inpuit files. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a4eba6087d4cec81f8b41477b4da56ff87b88e91;p=binutils-gdb.git Fix a bug in the s390x linker when discarding all inpuit files. PR 26918 * elf64-s390.c (elf_s390_finish_dynamic_sections): Check for the existance of an sgot output section before setting the sh_entsize. --- diff --git a/bfd/ChangeLog b/bfd/ChangeLog index a23da61653d..2aa89d01db8 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,10 @@ +2020-11-19 Nick Clifton + + 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 H.J. Lu diff --git a/bfd/elf64-s390.c b/bfd/elf64-s390.c index 0522850a5d8..41b19bcd2ce 100644 --- a/bfd/elf64-s390.c +++ b/bfd/elf64-s390.c @@ -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. */