bug-binutils
[Top][All Lists]
Advanced

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

[Bug ld/16787] LD gives wrong error messages


From: cvs-commit at gcc dot gnu.org
Subject: [Bug ld/16787] LD gives wrong error messages
Date: Wed, 23 Apr 2014 05:07:03 +0000

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

--- Comment #14 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  cd0449ab05e9045682a81bf521bd0c8732c98feb (commit)
      from  1547d98f5a774617b38f2bdd9be3b5c21c2b9312 (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=cd0449ab05e9045682a81bf521bd0c8732c98feb

commit cd0449ab05e9045682a81bf521bd0c8732c98feb
Author: Alan Modra <address@hidden>
Date:   Wed Apr 23 14:26:19 2014 +0930

    PR ld/16787, stale dwarf2 stash

    Throw away the dwarf2 stash if it becomes invalid due to section
    VMAs changing.  It would be nice to reclaim all the bfd_alloc
    memory here when we throw away the stash, perhaps by putting
    everything we alloc on a private dwarf2 objalloc, but I haven't done
    that with this patch.

    I've also fixed a problem with bfd_perform_relocation losing reloc
    addends, which meant a second or subsequent look at debug info
    sections did not properly relocate the sections.  I can't see why
    bfd_perform_relocation should need to change addends except for ld -r,
    and the history (985fca12, e98e6ec1) doesn't help much.

    Finally, the patch tweaks place_sections to avoid unnecessary work.
    If we've mapped input to output sections, then input section VMA
    isn't used so there's not much point in adjusting it.  Incidentally,
    this also means place_sections isn't effective in all cases.

        PR ld/16787
        * dwarf2.c (struct dwarf2_debug): Add sec_vma field.
        (place_sections): Do not modify VMA of sections when called from
        linker after sections have been placed in output sections.  Short
        circuit single section case.
        (save_section_vma, section_vma_same): New functions.
        (_bfd_dwarf2_slurp_debug_info): Throw away stash if section VMAs
        change.
        * reloc.c (bfd_perform_relocation): Do not modify reloc addend
        when non-relocatable.

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

Summary of changes:
 bfd/ChangeLog |   13 +++++++++
 bfd/dwarf2.c  |   85 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
 bfd/reloc.c   |    4 ---
 3 files changed, 91 insertions(+), 11 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]