bug-binutils
[Top][All Lists]
Advanced

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

[Bug ld/18963] Addition is not commutative


From: cvs-commit at gcc dot gnu.org
Subject: [Bug ld/18963] Addition is not commutative
Date: Fri, 18 Sep 2015 03:30:13 +0000

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

--- Comment #4 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot 
gnu.org> ---
The master branch has been updated by Alan Modra <address@hidden>:

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

commit 975f8a9e3144e4d3d3f391e907c8bf94b23dc8b6
Author: Alan Modra <address@hidden>
Date:   Fri Sep 18 09:14:25 2015 +0930

    Delay converting linker script defined symbols from absolute

    Giving linker script symbols defined outside of output sections a
    section-relative value early, leads to them being used in expressions
    as if they were defined inside an output section.  This can mean loss
    of the section VMA, and wrong results.

    ld/
        PR ld/18963
        * ldexp.h (struct ldexp_control): Add rel_from_abs.
        (ldexp_finalize_syms): Declare.
        * ldexp.c (new_rel_from_abs): Keep absolute for expressions
        outside of output section statements.  Set rel_from_abs.
        (make_abs, exp_fold_tree, exp_fold_tree_no_dot): Clear rel_from_abs.
        (struct definedness_hash_entry): Add final_sec, and comment.
        (update_definedness): Set final_sec.
        (set_sym_sections, ldexp_finalize_syms): New functions.
        * ldlang.c (lang_process): Call ldexp_finalize_syms.
    ld/testsuite
        PR ld/18963
        * ld-scripts/pr18963.d,
        * ld-scripts/pr18963.t: New test.
        * ld-scripts/expr.exp: Run it.
        * ld-elf/provide-hidden-2.ld: Explicitly make "dot" absolute.
        * ld-mips-elf/gp-hidden.sd: Don't care about _gp section.
        * ld-mips-elf/no-shared-1-n32.d: Don't care about symbol shown at
        start of .data section.
        * ld-mips-elf/no-shared-1-n64.d: Likewise.
        * ld-mips-elf/no-shared-1-o32.d: 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]