[Top][All Lists]

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

[Bug ld/16546] powerpc __tls_get_addr should be ignored in ppc_elf_relax

From: cvs-commit at gcc dot gnu.org
Subject: [Bug ld/16546] powerpc __tls_get_addr should be ignored in ppc_elf_relax_section
Date: Wed, 12 Feb 2014 11:41:18 +0000


--- Comment #2 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot 
gnu.org> ---
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  9f7552cff4367fc58246f72223d7a1de84c660b7 (commit)
       via  795bc6b3eac9e3f80279df69c05d70fc44eaaa4c (commit)
       via  b407645f7ef086a9a527c8f62499b4255868e748 (commit)
      from  93ffa5b939aef24f7530a8a400f877bfb24f0a73 (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 -----------------------------------------------------------------

commit 9f7552cff4367fc58246f72223d7a1de84c660b7
Author: Alan Modra <address@hidden>
Date:   Wed Feb 12 21:04:32 2014 +1030

    Fix bad interaction between --relax and tls optimisation

    Adding long-branch stubs for __tls_get_addr calls that are optimised
    away is silly.  It also causes assertion failures on newer object files
    that use R_PPC_TLSGD and R_PPC_TLSLD marker relocs, and half-optimised
    (ie. broken) code for older object files.

        PR 16546
        * elf32-ppc.c (ppc_elf_relax_section): Don't build long-branch
        stubs for calls to __tls_get_addr that we know will later be
        optimised away.


commit 795bc6b3eac9e3f80279df69c05d70fc44eaaa4c
Author: Alan Modra <address@hidden>
Date:   Wed Feb 12 16:44:36 2014 +1030

    Enable ppc476 workaround for ld -r.

    The Linux kernel builds modules using ld -r.  These might need the
    ppc476 workaround, so enable it for ld -r if sections have sufficient
    alignment to tell location within a page.

        * elf32-ppc.c (ppc_elf_relax_section): Enable ppc476 workaround
        for ld -r, when code sections are sufficiently aligned.
        * elf32-ppc.h (struct ppc_elf_params): Delete pagesize.  Add
        * emultempl/ppc32elf.em (pagesize): New static var.
        (ppc_after_open_output): Set params.pagesize_p2 from pagesize.
        (PARSE_AND_LIST_ARGS_CASES): Adjust to use pagesize.


commit b407645f7ef086a9a527c8f62499b4255868e748
Author: Alan Modra <address@hidden>
Date:   Wed Feb 12 21:08:01 2014 +1030

    PR15530, mark symbol in executables if it matches dynamic_list

    For powerpc64 as HJ did earlier for other ELF targets, and a tidy.

        PR gold/15530
        * elf64-ppc.c (ppc64_elf_gc_mark_dynamic_ref): Support
        --export-dynamic and --dynamic-list marking of symbols.
        * elflink.c (bfd_elf_gc_mark_dynamic_ref_symbol): Reorder
        cheap tests first.


Summary of changes:
 bfd/ChangeLog            |   21 +++++++++++++
 bfd/elf32-ppc.c          |   73 ++++++++++++++++++++++++++++++++++++++++++----
 bfd/elf32-ppc.h          |    2 +-
 bfd/elf64-ppc.c          |    9 ++++-
 bfd/elflink.c            |   11 ++++---
 ld/ChangeLog             |    6 ++++
 ld/emultempl/ppc32elf.em |   13 +++++---
 7 files changed, 116 insertions(+), 19 deletions(-)

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]