1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 11:02:59 +02:00
llvm-mirror/lib/ExecutionEngine
Hiroshi Inoue 127b396fb9 [PowerPC] fix broken JIT-compiled code with tail call optimization
The relocation for branch instructions in the dynamic loader of ExecutionEngine assumes branch instructions with R_PPC64_REL24 relocation type are only bl. However, with the tail call optimization, b instructions can be also used to jump into another function.
This patch makes the relocation to keep bits in the branch instruction other than the jump offset to avoid relocation rewrites a b instruction into bl.

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

llvm-svn: 333502
2018-05-30 04:48:29 +00:00
..
IntelJITEvents [C-API] Add functions to create GDB, Intel, Oprofile event listeners. 2018-05-24 21:32:54 +00:00
Interpreter Rename DEBUG macro to LLVM_DEBUG. 2018-05-14 12:53:11 +00:00
MCJIT Rename ObjectMemoryBuffer to SmallVectorMemoryBuffer; NFCI 2018-04-16 03:44:03 +00:00
OProfileJIT [C-API] Add functions to create GDB, Intel, Oprofile event listeners. 2018-05-24 21:32:54 +00:00
Orc [ORC] Fix an ambiguous make_unique call. 2018-05-30 02:40:40 +00:00
RuntimeDyld [PowerPC] fix broken JIT-compiled code with tail call optimization 2018-05-30 04:48:29 +00:00
CMakeLists.txt [cmake] Expose the dependencies of ExecutionEngine as PUBLIC 2017-08-11 13:25:20 +00:00
ExecutionEngine.cpp Add handling for GlobalAliases in ExecutionEngine::getConstantValue. 2018-05-24 19:07:34 +00:00
ExecutionEngineBindings.cpp Fix layering by moving Support/CodeGenCWrappers.h to Target 2018-03-23 23:58:21 +00:00
GDBRegistrationListener.cpp [C-API] Add functions to create GDB, Intel, Oprofile event listeners. 2018-05-24 21:32:54 +00:00
LLVMBuild.txt
SectionMemoryManager.cpp Add missing vtable anchors 2018-04-11 23:09:20 +00:00
TargetSelect.cpp [TLS] use emulated TLS if the target supports only this mode 2018-02-28 17:48:55 +00:00