Proteus
Programmable JIT compilation and optimization for C/C++ using LLVM
Loading...
Searching...
No Matches
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
proteus::LLVMCodeBuilder::Impl Struct Reference

Classes

struct  Scope
 

Public Member Functions

IRValuewrap (llvm::Value *V)
 
IRFunctionwrapFunction (llvm::Function *Fn)
 
 Impl (LLVMContext &Ctx)
 
 Impl (std::unique_ptr< LLVMContext > Ctx, std::unique_ptr< Module > Mod)
 
void init ()
 

Static Public Member Functions

static llvm::Value * unwrap (IRValue *V)
 

Public Attributes

std::unique_ptr< LLVMContext > OwnedCtx
 
std::unique_ptr< Module > OwnedMod
 
IRBuilder IRB
 
IRBuilderBase::InsertPoint IP
 
std::vector< ScopeScopes
 
std::deque< LLVMIRValueValues
 
std::deque< LLVMIRFunctionFunctions
 

Constructor & Destructor Documentation

◆ Impl() [1/2]

proteus::LLVMCodeBuilder::Impl::Impl ( LLVMContext &  Ctx)
inlineexplicit

◆ Impl() [2/2]

proteus::LLVMCodeBuilder::Impl::Impl ( std::unique_ptr< LLVMContext >  Ctx,
std::unique_ptr< Module >  Mod 
)
inline

Member Function Documentation

◆ init()

void proteus::LLVMCodeBuilder::Impl::init ( )
inline

◆ unwrap()

static llvm::Value * proteus::LLVMCodeBuilder::Impl::unwrap ( IRValue V)
inlinestatic

◆ wrap()

IRValue * proteus::LLVMCodeBuilder::Impl::wrap ( llvm::Value *  V)
inline

◆ wrapFunction()

IRFunction * proteus::LLVMCodeBuilder::Impl::wrapFunction ( llvm::Function *  Fn)
inline

Member Data Documentation

◆ Functions

std::deque<LLVMIRFunction> proteus::LLVMCodeBuilder::Impl::Functions

◆ IP

IRBuilderBase::InsertPoint proteus::LLVMCodeBuilder::Impl::IP

◆ IRB

IRBuilder proteus::LLVMCodeBuilder::Impl::IRB

◆ OwnedCtx

std::unique_ptr<LLVMContext> proteus::LLVMCodeBuilder::Impl::OwnedCtx

◆ OwnedMod

std::unique_ptr<Module> proteus::LLVMCodeBuilder::Impl::OwnedMod

◆ Scopes

std::vector<Scope> proteus::LLVMCodeBuilder::Impl::Scopes

◆ Values

std::deque<LLVMIRValue> proteus::LLVMCodeBuilder::Impl::Values

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