summaryrefslogtreecommitdiffstats
path: root/llvm/tools/llvm-rc/ResourceScriptParser.cpp
diff options
context:
space:
mode:
authorPeter Smith <peter.smith@linaro.org>2018-11-29 11:18:07 +0000
committerPeter Smith <peter.smith@linaro.org>2018-11-29 11:18:07 +0000
commitfd8aeb2c2a963e3835b83dd8bbc9a4d6844c9a36 (patch)
treecc614962cda80e98dcdff8d2268ad828dc01b6dd /llvm/tools/llvm-rc/ResourceScriptParser.cpp
parent7bed696915968a21122036502359f3eaea7714b3 (diff)
downloadbcm5719-llvm-fd8aeb2c2a963e3835b83dd8bbc9a4d6844c9a36.tar.gz
bcm5719-llvm-fd8aeb2c2a963e3835b83dd8bbc9a4d6844c9a36.zip
[LLD][ELF] Error if _GLOBAL_OFFSET_TABLE_ is defined in input objects
The _GLOBAL_OFFSET_TABLE_ is a linker defined symbol that is placed at some location relative to the .got, .got.plt or .toc section. On some targets such as Arm the correctness of some code sequences using a relocation to _GLOBAL_OFFSET_TABLE_ depend on the value of the symbol being in the linker defined place. Follow the ld.gold example and give a multiple symbol definition error. The ld.bfd behaviour is to ignore the definition in the input object and redefine it, which seems like it could be more surprising. fixes pr39587 Differential Revision: https://reviews.llvm.org/D54624 llvm-svn: 347854
Diffstat (limited to 'llvm/tools/llvm-rc/ResourceScriptParser.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud