llvm-project/llvm/lib/ExecutionEngine/Orc
Lang Hames b12867230c [ORC] Allow JITDylib definition generators to return Errors.
Background: A definition generator can be attached to a JITDylib to generate
new definitions in response to queries. For example: a generator that forwards
calls to dlsym can map symbols from a dynamic library into the JIT process on
demand.

If definition generation fails then the generator should be able to return an
error. This allows the JIT API to distinguish between the case where a
generator does not provide a definition, and the case where it was not able to
determine whether it provided a definition due to an error.

The immediate motivation for this is cross-process symbol lookups: If the
remote-lookup generator is attached to a JITDylib early in the search list, and
if a generator failure is misinterpreted as "no definition in this JITDylib" then
lookup may continue and bind to a different definition in a later JITDylib, which
is a bug.

llvm-svn: 359521
2019-04-30 00:03:26 +00:00
..
CMakeLists.txt Initial implementation of JITLink - A replacement for RuntimeDyld. 2019-04-20 17:10:34 +00:00
CompileOnDemandLayer.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Core.cpp [ORC] Allow JITDylib definition generators to return Errors. 2019-04-30 00:03:26 +00:00
ExecutionUtils.cpp [ORC] Allow JITDylib definition generators to return Errors. 2019-04-30 00:03:26 +00:00
IRCompileLayer.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IRTransformLayer.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
IndirectionUtils.cpp [opaque pointer types] Pass value type to LoadInst creation. 2019-02-01 20:44:24 +00:00
JITTargetMachineBuilder.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LLJIT.cpp [ORC] Replace the LLJIT/LLLazyJIT Create methods with Builder utilities. 2019-04-29 22:37:27 +00:00
LLVMBuild.txt [JITLink][ORC] Add JITLink to the list of dependencies for ORC. 2019-04-20 22:15:57 +00:00
Layer.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
LazyReexports.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
Legacy.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
NullResolver.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ObjectLinkingLayer.cpp [ORC] Add a 'plugin' interface to ObjectLinkingLayer for events/configuration. 2019-04-26 22:58:39 +00:00
ObjectTransformLayer.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
OrcABISupport.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
OrcCBindings.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
OrcCBindingsStack.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
OrcError.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
OrcMCJITReplacement.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
OrcMCJITReplacement.h Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
RPCUtils.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
RTDyldObjectLinkingLayer.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
ThreadSafeModule.cpp Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00