summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/python_api/thread/main.cpp
diff options
context:
space:
mode:
authorFangrui Song <maskray@google.com>2019-08-13 09:43:40 +0000
committerFangrui Song <maskray@google.com>2019-08-13 09:43:40 +0000
commitdc06b0bc9ad055d06535462d91bfc2a744b2f589 (patch)
tree99116492cf3fb8f57273a070b0429f94b33b8450 /lldb/packages/Python/lldbsuite/test/python_api/thread/main.cpp
parent5390d25f2b5cd6a9b234e30269661d7019a9850e (diff)
downloadbcm5719-llvm-dc06b0bc9ad055d06535462d91bfc2a744b2f589.tar.gz
bcm5719-llvm-dc06b0bc9ad055d06535462d91bfc2a744b2f589.zip
[ELF] Don't special case symbolic relocations with 0 addend to ifunc in writable locations
Currently the following 3 relocation types do not trigger the creation of a canonical PLT (which changes STT_GNU_IFUNC to STT_FUNC and redirects all references): 1) GOT-generating (`needsGot`) 2) PLT-generating (`needsPlt`) 3) R_ABS with 0 addend in a writable location. This is used for for ifunc function pointers in writable sections such as .data and .toc. This patch deletes case 3) to simplify the R_*_IRELATIVE generating logic added in D57371. Other advantages: * It is guaranteed no more than 1 R_*_IRELATIVE is created for an ifunc. * PPC64: no need to special case ifunc in toc-indirect to toc-relative relaxation. See D65755 The deleted elf::addIRelativeRelocs demonstrates that one-pass scan through relocations makes several optimizations difficult. This is something we can think about in the future. Reviewed By: peter.smith Differential Revision: https://reviews.llvm.org/D65995 llvm-svn: 368661
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/thread/main.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud