[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.
- [Bug ld/18963] New: Addition is not commutative, felix.von.s at posteo dot de, 2015/09/15
- [Bug ld/18963] Addition is not commutative, nickc at redhat dot com, 2015/09/16
- [Bug ld/18963] Addition is not commutative, nickc at redhat dot com, 2015/09/16
- [Bug ld/18963] Addition is not commutative, felix.von.s at posteo dot de, 2015/09/16
- [Bug ld/18963] Addition is not commutative, amodra at gmail dot com, 2015/09/16
- [Bug ld/18963] Addition is not commutative,
cvs-commit at gcc dot gnu.org <=
- [Bug ld/18963] Addition is not commutative, amodra at gmail dot com, 2015/09/18