This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/82005] [8 regression] early lto debug creates invalid assembly on Darwin
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 30 Aug 2017 10:02:35 +0000
- Subject: [Bug target/82005] [8 regression] early lto debug creates invalid assembly on Darwin
- Auto-submitted: auto-generated
- References: <bug-82005-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82005
--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
That is, looking for documentation on Mach-O I find in mach-o/reloc.h
* Another type of generic relocation, GENERIC_RELOC_SECTDIFF, is to support
* the difference of two symbols defined in different sections. That is the
* expression "symbol1 - symbol2 + constant" is a relocatable expression when
* both symbols are defined in some section. For this type of relocation the
* both relocations entries are scattered relocation entries. The value of
* symbol1 is stored in the first relocation entry's r_value field and the
* value of symbol2 is stored in the pair's r_value field.
which I thought would apply here. Looks like this doesn't work for UNDEFs
for some weird reason?
Note all of these relocations are resolvable by the link editor.