llvm-project/lld/ELF/Arch
Sean Fertile d2e887d2f6 [PPC64] Emit plt call stubs to the text section rather then the plt section.
On PowerPC calls to functions through the plt must be done through a call stub
that is responsible for:
1) Saving the toc pointer to the stack.
2) Loading the target functions address from the plt into both r12 and the
   count register.
3) Indirectly branching to the target function.

Previously we have been emitting these call stubs to the .plt section, however
the .plt section should be reserved for the lazy symbol resolution stubs. This
patch moves the call stubs to the text section by moving the implementation from
writePlt to the thunk framework.

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

llvm-svn: 331607
2018-05-06 19:13:29 +00:00
..
AArch64.cpp [ELF][AArch64] Implement the AArch64 TLSLD_LDST_LO12 family of relocs 2018-05-04 08:53:34 +00:00
AMDGPU.cpp Rename SymbolBody -> Symbol 2017-11-03 21:21:47 +00:00
ARM.cpp [ELF] - Eliminate Target::isPicRel method. 2018-04-05 12:07:20 +00:00
AVR.cpp Rename SymbolBody -> Symbol 2017-11-03 21:21:47 +00:00
Mips.cpp [ELF][MIPS] Reorganize isMipsPIC routine. NFC 2018-05-04 20:48:53 +00:00
MipsArchTree.cpp [ELF][mips] Print the full file path for files with incompatible ISA 2017-12-07 16:08:59 +00:00
PPC.cpp [ELF] Recommit 327248 with Arm using the .got for _GLOBAL_OFFSET_TABLE_ 2018-03-19 06:52:51 +00:00
PPC64.cpp [PPC64] Emit plt call stubs to the text section rather then the plt section. 2018-05-06 19:13:29 +00:00
SPARCV9.cpp Do not use template for check{Int,UInt,IntUInt,Alignment}. 2018-03-29 22:40:52 +00:00
X86.cpp [ELF] - Relax checks for R_386_8/R_386_16 relocations. 2018-04-03 12:19:04 +00:00
X86_64.cpp [ELF] - Eliminate Target::isPicRel method. 2018-04-05 12:07:20 +00:00