MIPS BFD linker puts _gp_disp symbol into DSO files and assigns zero version definition index to it. This value means 'unversioned local symbol' while _gp_disp is a section global symbol. We have to handle this bug in the LLD because BFD linker is used for building MIPS toolchain libraries.
Details
Details
- Reviewers
• rafael - Commits
- rG79ce1bb135bf: Merging r324467 and r324468: --------------------------------------------------…
rG85815a314915: [ELF][MIPS] Ignore incorrect version definition index for _gp_disp symbol
rL324471: Merging r324467 and r324468:
rLLD324467: [ELF][MIPS] Ignore incorrect version definition index for _gp_disp symbol
rL324467: [ELF][MIPS] Ignore incorrect version definition index for _gp_disp symbol
Diff Detail
Diff Detail
- Repository
- rLLD LLVM Linker
Event Timeline
ELF/InputFiles.cpp | ||
---|---|---|
860 | I suggest to add "FIXME: " at the begining of comment, |
Comment Actions
Ping?
Here is the bug report and the corresponding patch for GNU BFD: https://sourceware.org/ml/binutils/2018-01/msg00390.html
I suggest to add "FIXME: " at the begining of comment,
saying that this hack can be removed once fixed in BFD and settle for a while.
It's consistent with other hacks/workarounds we have in code.