bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/20830] .plt.got section is lacking unwind info


From: cvs-commit at gcc dot gnu.org
Subject: [Bug ld/20830] .plt.got section is lacking unwind info
Date: Tue, 10 Jan 2017 21:34:10 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=20830

--- Comment #9 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot 
gnu.org> ---
The master branch has been updated by H.J. Lu <address@hidden>:

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

commit fff53daefb7838b5718422c87946330e4a8288ce
Author: H.J. Lu <address@hidden>
Date:   Tue Jan 10 13:31:59 2017 -0800

    i386/x86-64: Add unwind info for .plt.got section

    When there are both PLT and GOT references to the same function symbol,
    linker combines GOTPLT and GOT slots into a single GOT slot and create
    an entry in .plt.got section for PLT access via the GOT slot.  This
    patch adds unwind info for .plt.got section.

    bfd/

        PR ld/20830
        * elf32-i386.c (elf_i386_eh_frame_plt_got): New.
        (PLT_GOT_FDE_LENGTH): Likewise.
        (elf_i386_plt_layout): Add eh_frame_plt_got and
        eh_frame_plt_got_size.
        (elf_i386_plt): Updated.
        (elf_i386_link_hash_table): Add plt_got_eh_frame.
        (elf_i386_check_relocs): Create .eh_frame section for .plt.got.
        (elf_i386_size_dynamic_sections): Allocate and initialize
        .eh_frame section for .plt.got.
        (elf_i386_finish_dynamic_sections): Adjust .eh_frame section for
        .plt.got.
        (elf_i386_nacl_plt): Add FIXME for eh_frame_plt_got and
        eh_frame_plt_got_size.
        * elf64-x86-64.c (elf_x86_64_eh_frame_plt_got): New.
        (PLT_GOT_FDE_LENGTH): Likewise.
        (elf_x86_64_backend_data): Add eh_frame_plt_got and
        eh_frame_plt_got_size.
        (elf_x86_64_arch_bed): Updated.
        (elf_x86_64_bnd_arch_bed): Add FIXME for eh_frame_plt_got and
        eh_frame_plt_got_size.
        (elf_x86_64_nacl_arch_bed): Likewise.
        (elf_x86_64_link_hash_table): Add plt_got_eh_frame.
        (elf_x86_64_check_relocs): Create .eh_frame section for .plt.got.
        (elf_x86_64_size_dynamic_sections): Allocate and initialize
        .eh_frame section for .plt.got.
        (elf_x86_64_finish_dynamic_sections): Adjust .eh_frame section
        for .plt.got.

    ld/

        PR ld/20830
        * testsuite/ld-i386/i386.exp: Run pr20830.
        * testsuite/ld-x86-64/x86-64.exp: Likewise.
        * testsuite/ld-i386/pr20830.d: New file.
        * testsuite/ld-i386/pr20830.s: Likewise.
        * testsuite/ld-x86-64/pr20830.d: Likewise.
        * testsuite/ld-x86-64/pr20830.s: Likewise.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]