From 606851fbf66c4a9e47c958014579dd363a74ba76 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Fri, 20 May 2016 00:33:42 +0930 Subject: [PATCH] Set sh_entsize for .init_array and similar. PR gas/20118 * elf.c (elf_fake_sections): Set sh_entsize for SHT_INIT_ARRAY, SHT_FINI_ARRAY, and SHT_PREINIT_ARRAY. --- bfd/ChangeLog | 6 ++++++ bfd/elf.c | 9 ++++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index c17c2bdca77..878f22f54e3 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2016-05-20 Alan Modra + + PR gas/20118 + * elf.c (elf_fake_sections): Set sh_entsize for SHT_INIT_ARRAY, + SHT_FINI_ARRAY, and SHT_PREINIT_ARRAY. + 2016-05-19 Cupertino Miranda * elf32-arc.c (arc_elf_final_write_processing): Changed. diff --git a/bfd/elf.c b/bfd/elf.c index 1592183fae7..fa4cc4c468e 100644 --- a/bfd/elf.c +++ b/bfd/elf.c @@ -3208,14 +3208,17 @@ elf_fake_sections (bfd *abfd, asection *asect, void *fsarg) break; case SHT_STRTAB: - case SHT_INIT_ARRAY: - case SHT_FINI_ARRAY: - case SHT_PREINIT_ARRAY: case SHT_NOTE: case SHT_NOBITS: case SHT_PROGBITS: break; + case SHT_INIT_ARRAY: + case SHT_FINI_ARRAY: + case SHT_PREINIT_ARRAY: + this_hdr->sh_entsize = bed->s->arch_size / 8; + break; + case SHT_HASH: this_hdr->sh_entsize = bed->s->sizeof_hash_entry; break; -- 2.30.2