mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 03:02:36 +01:00
310a62559f
implementation as lazy compile callbacks, and a "lazy re-exports" utility that builds lazy call-throughs. Lazy call-throughs are similar to lazy compile callbacks (and are based on the same underlying state saving/restoring trampolines) but resolve their targets by performing a standard ORC lookup rather than invoking a user supplied compiler callback. This allows them to inherit the thread-safety of ORC lookups while blocking only the calling thread (whereas compile callbacks also block one compile thread). Lazy re-exports provide a simple way of building lazy call-throughs. Unlike a regular re-export, a lazy re-export generates a new address (a stub entry point) that will act like the re-exported symbol when called. The first call via a lazy re-export will trigger compilation of the re-exported symbol before calling through to it. llvm-svn: 343061 |
||
---|---|---|
.. | ||
CMakeLists.txt | ||
CompileOnDemandLayerTest.cpp | ||
CoreAPIsTest.cpp | ||
GlobalMappingLayerTest.cpp | ||
IndirectionUtilsTest.cpp | ||
LazyCallThroughAndReexportsTest.cpp | ||
LazyEmittingLayerTest.cpp | ||
LegacyAPIInteropTest.cpp | ||
ObjectTransformLayerTest.cpp | ||
OrcCAPITest.cpp | ||
OrcTestCommon.cpp | ||
OrcTestCommon.h | ||
QueueChannel.cpp | ||
QueueChannel.h | ||
RemoteObjectLayerTest.cpp | ||
RPCUtilsTest.cpp | ||
RTDyldObjectLinkingLayer2Test.cpp | ||
RTDyldObjectLinkingLayerTest.cpp | ||
SymbolStringPoolTest.cpp |