ETISS 0.11.2
ExtendableTranslatingInstructionSetSimulator(version0.11.2)
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
OrcJit Class Reference
Collaboration diagram for OrcJit:
Collaboration graph
[legend]

Public Member Functions

 OrcJit (llvm::orc::JITTargetMachineBuilder JTMB, llvm::DataLayout DL)
 
const llvm::DataLayout & getDataLayout () const
 
llvm::LLVMContext & getContext ()
 
void addModule (std::unique_ptr< llvm::Module > M)
 
llvm::Expected< compat::lookup_symbol_T > lookup (llvm::StringRef Name)
 
bool loadLib (const std::string &libName, const std::set< std::string > &libPaths)
 

Static Public Member Functions

static llvm::Expected< std::unique_ptr< OrcJit > > Create ()
 
static llvm::orc::ThreadSafeModule optimizeModule (llvm::orc::ThreadSafeModule TSM, const llvm::orc::MaterializationResponsibility &R)
 

Public Attributes

std::unique_ptr< llvm::orc::ExecutionSession > ES { compat::createExecutionSession() }
 
llvm::orc::RTDyldObjectLinkingLayer ObjectLayer
 
llvm::orc::IRCompileLayer CompileLayer
 
llvm::orc::IRTransformLayer OptimizeLayer
 
llvm::DataLayout DL
 
llvm::orc::MangleAndInterner Mangle
 
llvm::orc::ThreadSafeContext Ctx
 
llvm::orc::JITDylib & MainJITDylib
 

Detailed Description

Definition at line 23 of file LLVMJIT.cpp.

Constructor & Destructor Documentation

◆ OrcJit()

OrcJit::OrcJit ( llvm::orc::JITTargetMachineBuilder  JTMB,
llvm::DataLayout  DL 
)
inline

Definition at line 26 of file LLVMJIT.cpp.

Member Function Documentation

◆ addModule()

void OrcJit::addModule ( std::unique_ptr< llvm::Module >  M)
inline

Definition at line 55 of file LLVMJIT.cpp.

References Ctx, MainJITDylib, and OptimizeLayer.

◆ Create()

static llvm::Expected< std::unique_ptr< OrcJit > > OrcJit::Create ( )
inlinestatic

Definition at line 39 of file LLVMJIT.cpp.

References DL.

Referenced by etiss::LLVMJIT::LLVMJIT().

Here is the caller graph for this function:

◆ getContext()

llvm::LLVMContext & OrcJit::getContext ( )
inline

Definition at line 53 of file LLVMJIT.cpp.

References Ctx.

◆ getDataLayout()

const llvm::DataLayout & OrcJit::getDataLayout ( ) const
inline

Definition at line 52 of file LLVMJIT.cpp.

References DL.

◆ loadLib()

bool OrcJit::loadLib ( const std::string &  libName,
const std::set< std::string > &  libPaths 
)
inline

Definition at line 65 of file LLVMJIT.cpp.

References DL, and MainJITDylib.

◆ lookup()

llvm::Expected< compat::lookup_symbol_T > OrcJit::lookup ( llvm::StringRef  Name)
inline

Definition at line 60 of file LLVMJIT.cpp.

References ES, MainJITDylib, and Mangle.

◆ optimizeModule()

static llvm::orc::ThreadSafeModule OrcJit::optimizeModule ( llvm::orc::ThreadSafeModule  TSM,
const llvm::orc::MaterializationResponsibility &  R 
)
inlinestatic

Definition at line 82 of file LLVMJIT.cpp.

Member Data Documentation

◆ CompileLayer

llvm::orc::IRCompileLayer OrcJit::CompileLayer

Definition at line 108 of file LLVMJIT.cpp.

◆ Ctx

llvm::orc::ThreadSafeContext OrcJit::Ctx

Definition at line 113 of file LLVMJIT.cpp.

Referenced by addModule(), and getContext().

◆ DL

llvm::DataLayout OrcJit::DL

Definition at line 111 of file LLVMJIT.cpp.

Referenced by Create(), getDataLayout(), and loadLib().

◆ ES

std::unique_ptr<llvm::orc::ExecutionSession> OrcJit::ES { compat::createExecutionSession() }

Definition at line 106 of file LLVMJIT.cpp.

Referenced by lookup().

◆ MainJITDylib

llvm::orc::JITDylib& OrcJit::MainJITDylib

Definition at line 114 of file LLVMJIT.cpp.

Referenced by addModule(), loadLib(), and lookup().

◆ Mangle

llvm::orc::MangleAndInterner OrcJit::Mangle

Definition at line 112 of file LLVMJIT.cpp.

Referenced by lookup().

◆ ObjectLayer

llvm::orc::RTDyldObjectLinkingLayer OrcJit::ObjectLayer

Definition at line 107 of file LLVMJIT.cpp.

◆ OptimizeLayer

llvm::orc::IRTransformLayer OrcJit::OptimizeLayer

Definition at line 109 of file LLVMJIT.cpp.

Referenced by addModule().


The documentation for this class was generated from the following file: