|
LLVM
4.0.0
|
Go to the source code of this file.
Typedefs | |
| typedef struct LLVMOrcOpaqueJITStack * | LLVMOrcJITStackRef |
| typedef uint32_t | LLVMOrcModuleHandle |
| typedef uint64_t | LLVMOrcTargetAddress |
| typedef uint64_t(* | LLVMOrcSymbolResolverFn )(const char *Name, void *LookupCtx) |
| typedef uint64_t(* | LLVMOrcLazyCompileCallbackFn )(LLVMOrcJITStackRef JITStack, void *CallbackCtx) |
Enumerations | |
| enum | LLVMOrcErrorCode { LLVMOrcErrSuccess = 0, LLVMOrcErrGeneric } |
| typedef struct LLVMOrcOpaqueJITStack* LLVMOrcJITStackRef |
Definition at line 32 of file OrcBindings.h.
| typedef uint64_t(* LLVMOrcLazyCompileCallbackFn)(LLVMOrcJITStackRef JITStack, void *CallbackCtx) |
Definition at line 36 of file OrcBindings.h.
| typedef uint32_t LLVMOrcModuleHandle |
Definition at line 33 of file OrcBindings.h.
Definition at line 35 of file OrcBindings.h.
| typedef uint64_t LLVMOrcTargetAddress |
Definition at line 34 of file OrcBindings.h.
| enum LLVMOrcErrorCode |
| Enumerator | |
|---|---|
| LLVMOrcErrSuccess | |
| LLVMOrcErrGeneric | |
Definition at line 39 of file OrcBindings.h.
| LLVMOrcModuleHandle LLVMOrcAddEagerlyCompiledIR | ( | LLVMOrcJITStackRef | JITStack, |
| LLVMModuleRef | Mod, | ||
| LLVMOrcSymbolResolverFn | SymbolResolver, | ||
| void * | SymbolResolverCtx | ||
| ) |
Add module to be eagerly compiled.
Definition at line 68 of file OrcCBindings.cpp.
References llvm::OrcCBindingsStack::addIRModuleEager(), and llvm::unwrap().
| LLVMOrcModuleHandle LLVMOrcAddLazilyCompiledIR | ( | LLVMOrcJITStackRef | JITStack, |
| LLVMModuleRef | Mod, | ||
| LLVMOrcSymbolResolverFn | SymbolResolver, | ||
| void * | SymbolResolverCtx | ||
| ) |
Add module to be lazily compiled one function at a time.
Definition at line 77 of file OrcCBindings.cpp.
References llvm::OrcCBindingsStack::addIRModuleLazy(), and llvm::unwrap().
| LLVMOrcModuleHandle LLVMOrcAddObjectFile | ( | LLVMOrcJITStackRef | JITStack, |
| LLVMObjectFileRef | Obj, | ||
| LLVMOrcSymbolResolverFn | SymbolResolver, | ||
| void * | SymbolResolverCtx | ||
| ) |
Add an object file.
| LLVMOrcErrorCode LLVMOrcCreateIndirectStub | ( | LLVMOrcJITStackRef | JITStack, |
| const char * | StubName, | ||
| LLVMOrcTargetAddress | InitAddr | ||
| ) |
Create a named indirect call stub.
Definition at line 53 of file OrcCBindings.cpp.
References llvm::OrcCBindingsStack::createIndirectStub(), and llvm::unwrap().
| LLVMOrcJITStackRef LLVMOrcCreateInstance | ( | LLVMTargetMachineRef | TM | ) |
Create an ORC JIT stack.
The client owns the resulting stack, and must call OrcDisposeInstance(...) to destroy it and free its memory. The JIT stack will take ownership of the TargetMachine, which will be destroyed when the stack is destroyed. The client should not attempt to dispose of the Target Machine, or it will result in a double-free.
Definition at line 15 of file OrcCBindings.cpp.
References llvm::orc::createLocalCompileCallbackManager(), llvm::orc::createLocalIndirectStubsManagerBuilder(), llvm::TargetMachine::getTargetTriple(), T, llvm::unwrap(), and llvm::wrap().
| LLVMOrcTargetAddress LLVMOrcCreateLazyCompileCallback | ( | LLVMOrcJITStackRef | JITStack, |
| LLVMOrcLazyCompileCallbackFn | Callback, | ||
| void * | CallbackCtx | ||
| ) |
Create a lazy compile callback.
Definition at line 46 of file OrcCBindings.cpp.
References llvm::OrcCBindingsStack::createLazyCompileCallback(), and llvm::unwrap().
| void LLVMOrcDisposeInstance | ( | LLVMOrcJITStackRef | JITStack | ) |
Dispose of an ORC JIT stack.
Definition at line 97 of file OrcCBindings.cpp.
References llvm::unwrap().
| void LLVMOrcDisposeMangledSymbol | ( | char * | MangledSymbol | ) |
Dispose of a mangled symbol.
Definition at line 43 of file OrcCBindings.cpp.
| const char* LLVMOrcGetErrorMsg | ( | LLVMOrcJITStackRef | JITStack | ) |
Get the error message for the most recent error (if any).
This message is owned by the ORC JIT Stack and will be freed when the stack is disposed of by LLVMOrcDisposeInstance.
Definition at line 30 of file OrcCBindings.cpp.
References llvm::OrcCBindingsStack::getErrorMessage(), and llvm::unwrap().
| void LLVMOrcGetMangledSymbol | ( | LLVMOrcJITStackRef | JITStack, |
| char ** | MangledSymbol, | ||
| const char * | Symbol | ||
| ) |
Mangle the given symbol.
Memory will be allocated for MangledSymbol to hold the result. The client
Definition at line 35 of file OrcCBindings.cpp.
References llvm::OrcCBindingsStack::mangle(), and llvm::unwrap().
| LLVMOrcTargetAddress LLVMOrcGetSymbolAddress | ( | LLVMOrcJITStackRef | JITStack, |
| const char * | SymbolName | ||
| ) |
Get symbol address from JIT instance.
Definition at line 90 of file OrcCBindings.cpp.
References llvm::OrcCBindingsStack::findSymbol(), llvm::JITSymbol::getAddress(), and llvm::unwrap().
| void LLVMOrcRemoveModule | ( | LLVMOrcJITStackRef | JITStack, |
| LLVMOrcModuleHandle | H | ||
| ) |
Remove a module set from the JIT.
This works for all modules that can be added via OrcAdd*, including object files.
Definition at line 85 of file OrcCBindings.cpp.
References llvm::OrcCBindingsStack::removeModule(), and llvm::unwrap().
| LLVMOrcErrorCode LLVMOrcSetIndirectStubPointer | ( | LLVMOrcJITStackRef | JITStack, |
| const char * | StubName, | ||
| LLVMOrcTargetAddress | NewAddr | ||
| ) |
Set the pointer for the given indirect stub.
Definition at line 60 of file OrcCBindings.cpp.
References llvm::OrcCBindingsStack::setIndirectStubPointer(), and llvm::unwrap().
1.8.6