gdb) bt
#0  elf32_arm_count_additional_relocs (sec=0x6aa410)
    at ../../bfd/elf32-arm.c:18175
#1  0x00007ffff7b71b8a in bfd_elf_final_link (abfd=abfd@entry=0x68a9e0, 
    info=info@entry=0x685260 <link_info>) at ../../bfd/elflink.c:11224
#2  0x00007ffff7b48f2b in elf32_arm_final_link (abfd=0x68a9e0, 
    info=0x685260 <link_info>) at ../../bfd/elf32-arm.c:12096
#3  0x000000000041adf7 in ldwrite () at ../../ld/ldwrite.c:577
#4  0x0000000000405a97 in main (argc=<optimized out>, argv=<optimized out>)
    at ../../ld/ldmain.c:431


And here's the patch to fix it:

---
 bfd/elf32-arm.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: binutils-2.27/bfd/elf32-arm.c
===================================================================
--- binutils-2.27.orig/bfd/elf32-arm.c  2016-10-14 11:12:25.223492731 +1100
+++ binutils-2.27/bfd/elf32-arm.c       2016-10-14 11:19:42.470752509 +1100
@@ -18172,7 +18172,7 @@ elf32_arm_count_additional_relocs (asect
 {
   struct _arm_elf_section_data *arm_data;
   arm_data = get_arm_elf_section_data (sec);
-  return arm_data->additional_reloc_count;
+  return arm_data ? arm_data->additional_reloc_count : 0;
 }
 
 /* Called to set the sh_flags, sh_link and sh_info fields of OSECTION which



-- 
Dr Peter Chubb         Tel: +61 2 9490 5852      http://ts.data61.csiro.au/
Trustworthy Systems Group                           Data61 (formerly NICTA)

Reply via email to