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

#include <JitFrontend.hpp>

Public Member Functions

 JitModule (StringRef Target="host")
 
 JitModule (const JitModule &)=delete
 
JitModuleoperator= (const JitModule &)=delete
 
 JitModule (JitModule &&)=delete
 
JitModuleoperator= (JitModule &&)=delete
 
template<typename RetT , typename... ArgT>
Func< RetT, ArgT... > & addFunction (StringRef Name)
 
bool isCompiled () const
 
const Module & getModule () const
 
template<typename... ArgT>
KernelHandle< ArgT... > addKernel (StringRef Name)
 
void compile (bool Verify=false)
 
HashT getModuleHash () const
 
std::optional< MemoryBufferRef > getObjectModuleRef () const
 
const DispatchergetDispatcher () const
 
TargetModelType getTargetModel () const
 
void print ()
 

Constructor & Destructor Documentation

◆ JitModule() [1/3]

proteus::JitModule::JitModule ( StringRef  Target = "host")
inline

◆ JitModule() [2/3]

proteus::JitModule::JitModule ( const JitModule )
delete

◆ JitModule() [3/3]

proteus::JitModule::JitModule ( JitModule &&  )
delete

Member Function Documentation

◆ addFunction()

template<typename RetT , typename... ArgT>
Func< RetT, ArgT... > & proteus::JitModule::addFunction ( StringRef  Name)
inline

◆ addKernel()

template<typename... ArgT>
KernelHandle< ArgT... > proteus::JitModule::addKernel ( StringRef  Name)
inline

◆ compile()

void proteus::JitModule::compile ( bool  Verify = false)
inline

◆ getDispatcher()

const Dispatcher & proteus::JitModule::getDispatcher ( ) const
inline

◆ getModule()

const Module & proteus::JitModule::getModule ( ) const
inline

◆ getModuleHash()

HashT proteus::JitModule::getModuleHash ( ) const
inline

◆ getObjectModuleRef()

std::optional< MemoryBufferRef > proteus::JitModule::getObjectModuleRef ( ) const
inline

◆ getTargetModel()

TargetModelType proteus::JitModule::getTargetModel ( ) const
inline

◆ isCompiled()

bool proteus::JitModule::isCompiled ( ) const
inline

◆ operator=() [1/2]

JitModule & proteus::JitModule::operator= ( const JitModule )
delete

◆ operator=() [2/2]

JitModule & proteus::JitModule::operator= ( JitModule &&  )
delete

◆ print()

void proteus::JitModule::print ( )
inline

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