1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-25 20:23:11 +01:00
llvm-mirror/lib/ExecutionEngine
Rafael Auler 69e63fa13a [RuntimeDyld] Add allowStubs/allowZeroSyms
This patch introduces functionality used by BOLT when
re-linking the final binary. It adds to MemoryManager a new member
function allowStubAllocation to control whether this MemoryManager
supports increasing code size with stubs or not. Since BOLT can
rewrite some files in-place, it needs to avoid stub insertion done
by the linker. This patch also introduces allowsZeroSymbols to the
JITSymbolResolver class, enabling us to finish a link successfully
even when some symbols resolve to the value zero. When rewriting a
binary, sometimes we do need to resolve a target to zero in case
the input binary calls address zero and we want to be bug
compatible. We also expose reassignSectionAddress as it is used by
BOLT.

Reviewed By: lhames

Differential Revision: https://reviews.llvm.org/D97898
2021-05-18 11:35:27 -07:00
..
IntelJITEvents New tag for ittapi - fix an error related to cross-compiling ITTAPI in LLVM with mingw 2021-05-14 08:18:49 +03:00
Interpreter Revert "Allow invokable sub-classes of IntrinsicInst" 2021-04-20 15:38:38 -07:00
JITLink [JITLink] Fix symbol comparator in LinkGraph::dump. 2021-05-16 10:11:58 -07:00
MCJIT
OProfileJIT
Orc [ORC] Don't try to obtain a ref to a non-existent buffer. 2021-05-18 08:44:15 -07:00
PerfJITEvents
RuntimeDyld [RuntimeDyld] Add allowStubs/allowZeroSyms 2021-05-18 11:35:27 -07:00
CMakeLists.txt [lli] Add JITLink in-process debug support 2021-03-02 15:07:36 +01:00
ExecutionEngine.cpp
ExecutionEngineBindings.cpp
GDBRegistrationListener.cpp [lli] Add JITLink in-process debug support 2021-03-02 15:07:36 +01:00
SectionMemoryManager.cpp
TargetSelect.cpp