LLVM: llvm::orc::ConcurrentIRCompiler Class Reference (original) (raw)
A thread-safe version of SimpleCompiler. More...
#include "[llvm/ExecutionEngine/Orc/CompileUtils.h](CompileUtils%5F8h%5Fsource.html)"
Inheritance diagram for llvm::orc::ConcurrentIRCompiler:
[legend]
| Public Member Functions | |
|---|---|
| ConcurrentIRCompiler (JITTargetMachineBuilder JTMB, ObjectCache *ObjCache=nullptr) | |
| void | setObjectCache (ObjectCache *ObjCache) |
| Expected< std::unique_ptr< MemoryBuffer > > | operator() (Module &M) override |
| Public Member Functions inherited from llvm::orc::IRCompileLayer::IRCompiler | |
| IRCompiler (IRSymbolMapper::ManglingOptions MO) | |
| virtual | ~IRCompiler () |
| const IRSymbolMapper::ManglingOptions & | getManglingOptions () const |
| Additional Inherited Members | |
|---|---|
| Protected Member Functions inherited from llvm::orc::IRCompileLayer::IRCompiler | |
| IRSymbolMapper::ManglingOptions & | manglingOptions () |
Detailed Description
A thread-safe version of SimpleCompiler.
This class creates a new TargetMachine and SimpleCompiler instance for each compile.
Definition at line 83 of file CompileUtils.h.
Constructor & Destructor Documentation
| llvm::orc::ConcurrentIRCompiler::ConcurrentIRCompiler | ( | JITTargetMachineBuilder | JTMB, |
|---|---|---|---|
| ObjectCache * | ObjCache = nullptr ) |
Definition at line 83 of file CompileUtils.cpp.
References llvm::orc::IRCompileLayer::IRCompiler::IRCompiler(), llvm::orc::irManglingOptionsFromTargetOptions(), and llvm::move().
Member Function Documentation
◆ operator()()
| Expected< std::unique_ptr< MemoryBuffer > > llvm::orc::ConcurrentIRCompiler::operator() ( Module & M) | overridevirtual |
|---|
Implements llvm::orc::IRCompileLayer::IRCompiler.
Definition at line 89 of file CompileUtils.cpp.
References llvm::CallingConv::C, and llvm::cantFail().
◆ setObjectCache()
| void llvm::orc::ConcurrentIRCompiler::setObjectCache ( ObjectCache * ObjCache) | inline |
|---|
Definition at line 88 of file CompileUtils.h.
The documentation for this class was generated from the following files:
- include/llvm/ExecutionEngine/Orc/CompileUtils.h
- lib/ExecutionEngine/Orc/CompileUtils.cpp