[Bug target/63542] My build log is full of "non-delegitimized UNSPEC UNSPEC_GOT (0) found in variable location"
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Oct 15 07:45:00 GMT 2014
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63542
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2014-10-15
CC| |evstupac at gmail dot com,
| |jakub at gcc dot gnu.org
Ever confirmed|0 |1
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Not just UNSPEC_GOT (0), but also UNSPEC_GOTOFF (1):
grep UNSPEC_ LOG | sed 's/^.*: note:/note:/' | sort | uniq -c
9140 note: non-delegitimized UNSPEC UNSPEC_GOT (0) found in variable
location
4179 note: non-delegitimized UNSPEC UNSPEC_GOTOFF (1) found in variable
location
in i686-linux bootstrap.
This has been discussed, and I think I've suggested what to do in those cases:
https://gcc.gnu.org/ml/gcc-patches/2014-09/msg02513.html
- if you don't have a known PIC register to subtract, subtract
_GLOBAL_OFFSET_TABLE_ symbol instead. Relocations in .debug_* sections are
resolved at link time, thus even if on some i?86/x86_64 target
_GLOBAL_OFFSET_TABLE_ doesn't have hidden visibility, it would still resolve to
the local copy.
More information about the Gcc-bugs
mailing list