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/binutils-2_26-branch] Fix ppc64le S-record test fail


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

commit a01d012a5d3ed82cbe83b521298197e6ba59b590
Author: Alan Modra <amodra@gmail.com>
Date:   Tue Jun 28 20:46:31 2016 +0930

    Fix ppc64le S-record test fail
    
    Segfaults on --defsym symbol (__stack_chk_fail in this instance).
    
    	* elf64-ppc.c (ppc64_elf_branch_reloc): Check for NULL owner
    	before dereferencing.

Diff:
---
 bfd/ChangeLog   | 7 +++++++
 bfd/elf64-ppc.c | 1 +
 2 files changed, 8 insertions(+)

diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index f88580c..5430f0d 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,5 +1,12 @@
 2016-06-28  Alan Modra  <amodra@gmail.com>
 
+	Apply from master
+	2016-05-19  Alan Modra  <amodra@gmail.com>
+	* elf64-ppc.c (ppc64_elf_branch_reloc): Check for NULL owner
+	before dereferencing.
+
+2016-06-28  Alan Modra  <amodra@gmail.com>
+
 	PR ld/19264
 	* elf64-ppc.c (STUB_SHRINK_ITER): Define.
 	(ppc64_elf_size_stubs): Exit stub sizing loop past STUB_SHRINK_ITER
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index 8c6a14b..aa6fe08 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -2570,6 +2570,7 @@ ppc64_elf_branch_reloc (bfd *abfd, arelent *reloc_entry, asymbol *symbol,
       elf_symbol_type *elfsym = (elf_symbol_type *) symbol;
 
       if (symbol->section->owner != abfd
+	  && symbol->section->owner != NULL
 	  && abiversion (symbol->section->owner) >= 2)
 	{
 	  unsigned int i;


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