gdb and binutils branch binutils-2_25-branch updated. 3e5d8b05745a9fa1d9ad120459143e6e36cfbde0

hjl@sourceware.org hjl@sourceware.org
Sun Dec 14 07:53:00 GMT 2014


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "gdb and binutils".

The branch, binutils-2_25-branch has been updated
       via  3e5d8b05745a9fa1d9ad120459143e6e36cfbde0 (commit)
      from  27cef631a78b56f8ad030ba6231432e04cc1838e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

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

commit 3e5d8b05745a9fa1d9ad120459143e6e36cfbde0
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Sat Dec 13 23:37:22 2014 -0800

    Handle weak alias for PIE with copy reloc
    
    When there is a weak symbol with a real definition, the processor
    independent code will have arranged for us to see the real definition
    first.  We need to copy the needs_copy bit from the real definition and
    check it when allowing copy reloc in PIE.
    
    bfd/
    
    	PR ld/17689
    	* elf64-x86-64.c (elf_x86_64_link_hash_entry): Add needs_copy.
    	Change has_bnd_reloc to bit field.
    	(elf_x86_64_link_hash_newfunc): Initialize needs_copy and
    	has_bnd_reloc to 0.
    	(elf_x86_64_check_relocs): Set has_bnd_reloc to 1 instead
    	of TRUE.
    	(elf_x86_64_adjust_dynamic_symbol): Copy needs_copy from the
    	real definition to a weak symbol.
    	(elf_x86_64_allocate_dynrelocs): Also check needs_copy of a
    	weak symbol for PIE when discarding space for relocs against
    	symbols which turn out to need copy relocs.
    	(elf_x86_64_relocate_section): Also check needs_copy of a
    	weak symbol for PIE with copy reloc.
    
    ld/testsuite/
    
    	PR ld/17689
    	* ld-x86-64/pr17689.out: New file.
    	* ld-x86-64/pr17689.rd: Likewise.
    	* ld-x86-64/pr17689a.c: Likewise.
    	* ld-x86-64/pr17689b.S: Likewise.
    
    	* ld-x86-64/x86-64.exp: Run PR ld/17689 tests.

-----------------------------------------------------------------------

Summary of changes:
 bfd/ChangeLog                                      |   22 ++++++++++++++++
 bfd/elf64-x86-64.c                                 |   27 ++++++++++++++-----
 ld/testsuite/ChangeLog                             |   10 +++++++
 .../{ld-elf/dl5.out => ld-x86-64/pr17689.out}      |    0
 ld/testsuite/ld-x86-64/pr17689.rd                  |    3 ++
 ld/testsuite/ld-x86-64/pr17689a.c                  |   10 +++++++
 ld/testsuite/ld-x86-64/pr17689b.S                  |   12 +++++++++
 ld/testsuite/ld-x86-64/x86-64.exp                  |   24 +++++++++++++++++
 8 files changed, 101 insertions(+), 7 deletions(-)
 copy ld/testsuite/{ld-elf/dl5.out => ld-x86-64/pr17689.out} (100%)
 create mode 100644 ld/testsuite/ld-x86-64/pr17689.rd
 create mode 100644 ld/testsuite/ld-x86-64/pr17689a.c
 create mode 100644 ld/testsuite/ld-x86-64/pr17689b.S


hooks/post-receive
-- 
gdb and binutils



More information about the Binutils-cvs mailing list