https://sourceware.org/bugzilla/show_bug.cgi?id=18561
Alan Modra <amodra at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
CC| |amodra at gmail dot com
Resolution|--- |WONTFIX
--- Comment #8 from Alan Modra <amodra at gmail dot com> ---
You'll find that there are expressions where a weak or global symbol should be
resolved by the assembler, which is why S_FORCE_RELOC has a "strict"
paramenter.
In fact, most expressions on most targets involving subtraction of defined
symbols ought to be resolved, because these expressions are calculating some
property of the *local* object/function. eg. .size expressions, relative
offset to function in debug info. (Yes I know gcc generally emits local
symbols for such offsets in debug info, but this wasn't always the case. Does
all handcrafted debug or .eh_frame info use local symbols?)
If either of the patches Nick has attached here are applied I can almost 100%
guarantee you will break things. That's what I found when making similar
changes a long time ago, using exactly the same reasoning about weak symbols.
So, given that resolving subtraction expressions is a long-standing assembler
behaviour, I think this is simply a SH gcc bug.
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
bug-binutils mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-binutils