This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] Set sh_entsize for .init_array and similar.


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=606851fbf66c4a9e47c958014579dd363a74ba76

commit 606851fbf66c4a9e47c958014579dd363a74ba76
Author: Alan Modra <amodra@gmail.com>
Date:   Fri May 20 00:33:42 2016 +0930

    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.

Diff:
---
 bfd/ChangeLog | 6 ++++++
 bfd/elf.c     | 9 ++++++---
 2 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index c17c2bd..878f22f 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,9 @@
+2016-05-20  Alan Modra  <amodra@gmail.com>
+
+	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  <cmiranda@synopsys.com>
 
 	* elf32-arc.c (arc_elf_final_write_processing): Changed.
diff --git a/bfd/elf.c b/bfd/elf.c
index 1592183..fa4cc4c 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;


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]