llvm-project/lld/test
Sean Fertile 614dc11ca8 [PPC64] Long branch thunks.
On PowerPC64, when a function call offset is too large to encode in a call
instruction the address is stored in a table in the data segment. A thunk is
used to load the branch target address from the table relative to the
TOC-pointer and indirectly branch to the callee. When linking position-dependent
code the addresses are stored directly in the table, for position-independent
code the table is allocated and filled in at load time by the dynamic linker.

For position-independent code the branch targets could have gone in the .got.plt
but using the .branch_lt section for both position dependent and position
independent binaries keeps it consitent and helps keep this PPC64 specific logic
seperated from the target-independent code handling the .got.plt.

Differential Revision: https://reviews.llvm.org/D53408

llvm-svn: 346877
2018-11-14 17:56:43 +00:00
..
COFF [COFF] Improve relocation against discarded section error 2018-11-08 18:38:17 +00:00
Driver/Inputs
ELF [PPC64] Long branch thunks. 2018-11-14 17:56:43 +00:00
MinGW [MinGW] Pass libpath to the COFF linker 2018-10-10 09:00:03 +00:00
Unit [lit] Rename lld and clang lit configs to end in .py 2017-09-21 17:38:13 +00:00
darwin [Darwin] Do not error on '-lto_library' option 2018-06-13 18:59:14 +00:00
mach-o Make YAML quote forward slashes. 2018-10-12 16:31:20 +00:00
wasm [WebAssembly] Respect `--no-mangle` in more locations 2018-11-09 16:57:41 +00:00
CMakeLists.txt [CMake] Add an lld-test-depends target 2018-08-29 17:30:45 +00:00
lit.cfg.py Support RISC-V 2018-08-09 17:59:56 +00:00
lit.site.cfg.py.in Import lit.llvm after rLLD341134 2018-08-31 00:23:09 +00:00