gdb and binutils branch hjl/plt.got created. 9d4548eb2666a8c5e9024f37ae799ac431cbbe3e

hjl@sourceware.org hjl@sourceware.org
Sun Nov 23 14:18: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, hjl/plt.got has been created
        at  9d4548eb2666a8c5e9024f37ae799ac431cbbe3e (commit)

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

commit 9d4548eb2666a8c5e9024f37ae799ac431cbbe3e
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Nov 19 11:51:07 2014 -0800

    Create .plt.got to avoid x86 JUMP_SLOT relocation
    
    bfd/
    
    	* elf32-i386.c (elf_i386_got_plt_entry): New.
    	(elf_i386_pic_got_plt_entry): Likewise.
    	(elf_i386_link_hash_entry): Add plt_got.
    	(elf_i386_link_hash_table): Likewise.
    	(elf_i386_link_hash_newfunc): Initialize plt_got.offset to -1.
    	(elf_i386_get_local_sym_hash): Likewise.
    	(elf_i386_check_relocs): Create the GOT PLT if there are both
    	PLT and GOT references when the regular PLT is used.
    	(elf_i386_allocate_dynrelocs): Use the GOT PLT if there are
    	both PLT and GOT references unless pointer equality is needed.
    	(elf_i386_relocate_section): Also check the GOT PLT when
    	resolving R_386_PLT32.
    	(elf_i386_finish_dynamic_symbol): Use the GOT PLT if it is
    	available.
    
    	* elf64-x86-64.c (elf_x86_64_link_hash_entry): Add plt_got.
    	(elf_x86_64_link_hash_table): Likewise.
    	(elf_x86_64_link_hash_newfunc): Initialize plt_got.offset to -1.
    	(elf_x86_64_get_local_sym_hash): Likewise.
    	(elf_x86_64_check_relocs): Create the GOT PLT if there are both
    	PLT and GOT references when the regular PLT is used.
    	(elf_x86_64_allocate_dynrelocs): Use the GOT PLT if there are
    	both PLT and GOT references unless pointer equality is needed.
    	(elf_x86_64_relocate_section): Also check the GOT PLT when
    	resolving R_X86_64_PLT32.
    	(elf_x86_64_finish_dynamic_symbol): Use the GOT PLT if it is
    
    ld/
    
    	* emulparams/elf_i386.sh (TINY_READONLY_SECTION): New.
    	* emulparams/elf_x86_64.sh (TINY_READONLY_SECTION): Add .plt.got.
    
    ld/testsuite/
    
    	* ld-i386/i386.exp: Add run-time relocation tests for plt-main.
    	* ld-i386/plt-main.rd: New file.
    	* ld-x86-64/plt-main-bnd.dd: Likewise.
    	* ld-x86-64/plt-main.rd: Likewise.
    	* d-x86-64/x86-64.exp: Add run-time relocation tests for
    	plt-main.

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


hooks/post-receive
-- 
gdb and binutils



More information about the Src-cvs mailing list