This is the mail archive of the
binutils-cvs@sourceware.org
mailing list for the binutils project.
gdb and binutils branch master updated. 3972882e52d7199000bb5dfc753a86aa296a567a
- From: hjl at sourceware dot org
- To: binutils-cvs at sourceware dot org
- Date: 5 Dec 2014 00:56:27 -0000
- Subject: gdb and binutils branch master updated. 3972882e52d7199000bb5dfc753a86aa296a567a
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, master has been updated
via 3972882e52d7199000bb5dfc753a86aa296a567a (commit)
from 82cf9cb2653b39c426f330854c64028eab4cb65d (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=3972882e52d7199000bb5dfc753a86aa296a567a
commit 3972882e52d7199000bb5dfc753a86aa296a567a
Author: H.J. Lu <hjl.tools@gmail.com>
Date: Thu Dec 4 14:19:41 2014 -0800
Add _bfd_elf_ifunc_get_synthetic_symtab
In i386 and x86-64 binaries with ifunc, relocations against .got.plt
section may not be in the same order as entries in PLT section. This
patch adds _bfd_elf_ifunc_get_synthetic_symtab. It takes a function
pointer which returns an array of PLT entry symbol values. It calls
the function pointer to get the PLT entry symbol value array indexed
by relocation index, instead of calling plt_sym_val on each relocation
index.
PR binutils/17677
* elf-bfd.h (_bfd_elf_ifunc_get_synthetic_symtab): New prototype.
* elf-ifunc.c (_bfd_elf_ifunc_get_synthetic_symtab): New
function.
* elf32-i386.c (elf_i386_plt_sym_val): Removed.
(elf_backend_plt_sym_val): Likewise.
(elf_i386_get_plt_sym_val): New.
(elf_i386_get_synthetic_symtab): Likewise.
(bfd_elf32_get_synthetic_symtab): Likewise.
* elf64-x86-64.c (elf_x86_64_plt_sym_val): Removed.
(elf_x86_64_plt_sym_val_offset_plt_bnd): Likewise.
(elf_backend_plt_sym_val): Likewise.
(elf_x86_64_get_plt_sym_val): New.
(elf_x86_64_get_synthetic_symtab): Use
_bfd_elf_ifunc_get_synthetic_symtab.
(bfd_elf64_get_synthetic_symtab): Don't undefine for NaCl.
-----------------------------------------------------------------------
Summary of changes:
bfd/ChangeLog | 19 ++++
bfd/elf-bfd.h | 3 +
bfd/elf-ifunc.c | 125 ++++++++++++++++++++++++++++
bfd/elf32-i386.c | 101 ++++++++++++++++-------
bfd/elf64-x86-64.c | 235 ++++++++++++++++-----------------------------------
5 files changed, 292 insertions(+), 191 deletions(-)
hooks/post-receive
--
gdb and binutils