llvm-project/llvm/lib/ExecutionEngine
Lang Hames a98546ebcd [Orc] Add a method for ObjectLinkingLayer to return ownership of object buffers.
RTDyldObjectLinkingLayer allowed clients to register a NotifyEmitted function to
reclaim ownership of object buffers once they had been linked. This patch adds
similar functionality to ObjectLinkingLayer: Clients can now optionally call the
ObjectLinkingLayer::setReturnObjectBuffer method to register a function that
will be called when discarding object buffers. If set, this function will be
called to return ownership of the object regardless of whether the link
succeeded or failed.

Use cases for this function include debug dumping (it provides a way to dump
all objects linked into JIT'd code) and object re-use (e.g. storing an
object in a cache).

llvm-svn: 374951
2019-10-15 21:41:12 +00:00
..
IntelJITEvents [DebugInfo] IntelJitEventListener follow up for "add SectionedAddress ..." 2019-03-25 13:50:26 +00:00
Interpreter Replace llvm::MutexGuard/UniqueLock with their standard equivalents 2019-08-07 10:57:25 +00:00
JITLink [JITLink] Switch to slab allocation for InProcessMemoryManager, re-enable test. 2019-10-15 21:06:57 +00:00
MCJIT Replace llvm::MutexGuard/UniqueLock with their standard equivalents 2019-08-07 10:57:25 +00:00
OProfileJIT [llvm] Migrate llvm::make_unique to std::make_unique 2019-08-15 15:54:37 +00:00
Orc [Orc] Add a method for ObjectLinkingLayer to return ownership of object buffers. 2019-10-15 21:41:12 +00:00
PerfJITEvents [llvm] Migrate llvm::make_unique to std::make_unique 2019-08-15 15:54:37 +00:00
RuntimeDyld [Alignment][NFC] Remove unneeded llvm:: scoping on Align types 2019-09-27 12:54:21 +00:00
CMakeLists.txt Initial implementation of JITLink - A replacement for RuntimeDyld. 2019-04-20 17:10:34 +00:00
ExecutionEngine.cpp [ExecutionEngine] Don't dereference a dyn_cast result. NFCI. 2019-09-16 15:19:11 +00:00
ExecutionEngineBindings.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
GDBRegistrationListener.cpp Replace llvm::MutexGuard/UniqueLock with their standard equivalents 2019-08-07 10:57:25 +00:00
LLVMBuild.txt Initial implementation of JITLink - A replacement for RuntimeDyld. 2019-04-20 17:10:34 +00:00
SectionMemoryManager.cpp [Support] Renamed member 'Size' to 'AllocatedSize' in MemoryBlock and OwningMemoryBlock. 2019-05-20 20:53:05 +00:00
TargetSelect.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00