#include <Func.hpp>
|
| FuncBase (JitModule &J, FunctionCallee FC) |
|
Function * | getFunction () |
|
AllocaInst * | emitAlloca (Type *Ty, StringRef Name) |
|
IRBuilderBase & | getIRBuilder () |
|
Var & | declVarInternal (StringRef Name, Type *Ty, Type *PointerElemType=nullptr) |
|
template<typename T > |
Var & | declVar (StringRef Name="var") |
|
template<typename T > |
Var & | defVar (T Val, StringRef Name="var") |
|
template<typename T > |
Var & | defRuntimeConst (T Val, StringRef Name="run.const.var") |
|
template<typename... ArgT> |
auto | defRuntimeConsts (ArgT &&...Args) |
|
template<typename... Ts> |
void | declArgs () |
|
Var & | getArg (unsigned int ArgNo) |
|
void | beginFunction (const char *File=__builtin_FILE(), int Line=__builtin_LINE()) |
|
void | endFunction () |
|
void | beginIf (Var &CondVar, const char *File=__builtin_FILE(), int Line=__builtin_LINE()) |
|
void | endIf () |
|
void | beginFor (Var &IterVar, Var &InitVar, Var &UpperBound, Var &IncVar, const char *File=__builtin_FILE(), int Line=__builtin_LINE()) |
|
void | endFor () |
|
template<typename RetT , typename... ArgT> |
std::enable_if_t<!std::is_void_v< RetT >, Var & > | call (StringRef Name) |
|
template<typename RetT , typename... ArgT> |
std::enable_if_t< std::is_void_v< RetT >, void > | call (StringRef Name) |
|
Var & | callBuiltin (function_ref< Var &(FuncBase &)> Lower) |
|
void | ret (std::optional< std::reference_wrapper< Var > > OptRet=std::nullopt) |
|
StringRef | getName () const |
|
void | setName (StringRef NewName) |
|
◆ ScopeKind
Enumerator |
---|
FUNCTION | |
IF | |
FOR | |
◆ FuncBase()
proteus::FuncBase::FuncBase |
( |
JitModule & |
J, |
|
|
FunctionCallee |
FC |
|
) |
| |
◆ beginFor()
void proteus::FuncBase::beginFor |
( |
Var & |
IterVar, |
|
|
Var & |
InitVar, |
|
|
Var & |
UpperBound, |
|
|
Var & |
IncVar, |
|
|
const char * |
File = __builtin_FILE() , |
|
|
int |
Line = __builtin_LINE() |
|
) |
| |
◆ beginFunction()
void proteus::FuncBase::beginFunction |
( |
const char * |
File = __builtin_FILE() , |
|
|
int |
Line = __builtin_LINE() |
|
) |
| |
◆ beginIf()
void proteus::FuncBase::beginIf |
( |
Var & |
CondVar, |
|
|
const char * |
File = __builtin_FILE() , |
|
|
int |
Line = __builtin_LINE() |
|
) |
| |
◆ call() [1/2]
template<typename RetT , typename... ArgT>
std::enable_if_t<!std::is_void_v< RetT >, Var & > proteus::FuncBase::call |
( |
StringRef |
Name | ) |
|
◆ call() [2/2]
template<typename RetT , typename... ArgT>
std::enable_if_t< std::is_void_v< RetT >, void > proteus::FuncBase::call |
( |
StringRef |
Name | ) |
|
◆ callBuiltin()
Var & proteus::FuncBase::callBuiltin |
( |
function_ref< Var &(FuncBase &)> |
Lower | ) |
|
|
inline |
◆ declArgs()
template<typename... Ts>
void proteus::FuncBase::declArgs |
( |
| ) |
|
|
inline |
◆ declVar()
template<typename T >
Var & proteus::FuncBase::declVar |
( |
StringRef |
Name = "var" | ) |
|
|
inline |
◆ declVarInternal()
Var & proteus::FuncBase::declVarInternal |
( |
StringRef |
Name, |
|
|
Type * |
Ty, |
|
|
Type * |
PointerElemType = nullptr |
|
) |
| |
◆ defRuntimeConst()
template<typename T >
Var & proteus::FuncBase::defRuntimeConst |
( |
T |
Val, |
|
|
StringRef |
Name = "run.const.var" |
|
) |
| |
|
inline |
◆ defRuntimeConsts()
template<typename... ArgT>
auto proteus::FuncBase::defRuntimeConsts |
( |
ArgT &&... |
Args | ) |
|
|
inline |
◆ defVar()
template<typename T >
Var & proteus::FuncBase::defVar |
( |
T |
Val, |
|
|
StringRef |
Name = "var" |
|
) |
| |
|
inline |
◆ emitAlloca()
AllocaInst * proteus::FuncBase::emitAlloca |
( |
Type * |
Ty, |
|
|
StringRef |
Name |
|
) |
| |
◆ endFor()
void proteus::FuncBase::endFor |
( |
| ) |
|
◆ endFunction()
void proteus::FuncBase::endFunction |
( |
| ) |
|
◆ endIf()
void proteus::FuncBase::endIf |
( |
| ) |
|
◆ getArg()
Var & proteus::FuncBase::getArg |
( |
unsigned int |
ArgNo | ) |
|
◆ getFunction()
Function * proteus::FuncBase::getFunction |
( |
| ) |
|
◆ getIRBuilder()
IRBuilderBase & proteus::FuncBase::getIRBuilder |
( |
| ) |
|
◆ getName()
StringRef proteus::FuncBase::getName |
( |
| ) |
const |
|
inline |
◆ ret()
void proteus::FuncBase::ret |
( |
std::optional< std::reference_wrapper< Var > > |
OptRet = std::nullopt | ) |
|
◆ setName()
void proteus::FuncBase::setName |
( |
StringRef |
NewName | ) |
|
|
inline |
◆ toString()
std::string proteus::FuncBase::toString |
( |
ScopeKind |
Kind | ) |
|
|
inlineprotected |
◆ Arguments
std::deque<Var> proteus::FuncBase::Arguments |
|
protected |
◆ FC
FunctionCallee proteus::FuncBase::FC |
|
protected |
◆ IP
IRBuilderBase::InsertPoint proteus::FuncBase::IP |
|
protected |
◆ IRB
IRBuilder proteus::FuncBase::IRB |
|
protected |
◆ Name
std::string proteus::FuncBase::Name |
|
protected |
◆ RuntimeConstants
std::deque<Var> proteus::FuncBase::RuntimeConstants |
|
protected |
◆ Scopes
std::vector<Scope> proteus::FuncBase::Scopes |
|
protected |
◆ Variables
std::deque<Var> proteus::FuncBase::Variables |
|
protected |
The documentation for this class was generated from the following files: