[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Invalid R_X86_64_GOTPCREL -> R_X86_64_PC32 conversions with binutils 2.2
From: |
Steve Vormwald |
Subject: |
Invalid R_X86_64_GOTPCREL -> R_X86_64_PC32 conversions with binutils 2.24/2.25? |
Date: |
Tue, 23 Jun 2015 21:56:44 +0000 |
When updating from binutils 2.23 to 2.25, we have run into "truncated to fit:
R_X86_64_PC32 against symbol" errors for symbols that only have
R_X86_64_GOTPCREL relocations. One of the object files that is being linked
contains a handful of large arrays that end up being placed more than 2GB away
from the text that references them, hence the use of R_X86_64_GOTPCREL
relocations rather than "simpler" relocations with offset limitations. It
looks like the linker is automatically converting these back to a relocation
with stricter distance limits due to mod
80d873266deca488bd8059e32780e8ce3ef6191d (Convert mov to lea for loading local
function address). Are we misusing R_X86_64_GOTPCREL or is this an ld bug?
Steven Vormwald
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Invalid R_X86_64_GOTPCREL -> R_X86_64_PC32 conversions with binutils 2.24/2.25?,
Steve Vormwald <=