https://sourceware.org/bugzilla/show_bug.cgi?id=20522
Alan Modra <amodra at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2016-08-29
CC| |amodra at gmail dot com
Ever confirmed|0 |1
--- Comment #1 from Alan Modra <amodra at gmail dot com> ---
I think what is going on here is that with both -pie -and --emit-relocs we have
dynamic relocs *and* the non-alloc relocation sections that are adjusted copies
of the input relocations.
The linux kernel script contains the following
.rela.dyn : AT(ADDR(.rela.dyn) - (0xc000000000000000 -0x00000000))
{
__rela_dyn_start = .;
*(.rela*)
}
I think gold is attempting to mash together the dynamic relocs and the copies
of input relocations, which is just plain wrong. GNU ld ignores the script
above for the non-alloc relocation sections..
Incidentally, changing the kernel script "*(.rela*)" to "*(.rela.dyn)" avoids
the problem. The changed script works with GNU ld too, except when -z
nocombreloc is in effect.
--
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