Proteus
Programmable JIT compilation and optimization for C/C++ using LLVM
Loading...
Searching...
No Matches
proteus::CodeBuilder Member List

This is the complete list of members for proteus::CodeBuilder, including all inherited members.

addFunction(const std::string &Name, IRType RetTy, const std::vector< IRType > &ArgTys)=0proteus::CodeBuilderpure virtual
allocArray(const std::string &Name, AddressSpace AS, IRType ElemTy, size_t NElem)=0proteus::CodeBuilderpure virtual
allocPointer(const std::string &Name, IRType ElemTy, unsigned AddrSpace=0)=0proteus::CodeBuilderpure virtual
allocScalar(const std::string &Name, IRType ValueTy)=0proteus::CodeBuilderpure virtual
beginFor(IRValue *IterSlot, IRType IterTy, IRValue *InitVal, IRValue *UpperBoundVal, IRValue *IncVal, bool IsSigned, const char *File, int Line, LoopHints Hints={})=0proteus::CodeBuilderpure virtual
beginFunction(IRFunction *F, const char *File, int Line)=0proteus::CodeBuilderpure virtual
beginIf(IRValue *Cond, const char *File, int Line)=0proteus::CodeBuilderpure virtual
beginWhile(std::function< IRValue *()> CondFn, const char *File, int Line)=0proteus::CodeBuilderpure virtual
clearInsertPoint()=0proteus::CodeBuilderpure virtual
createAnd(IRValue *LHS, IRValue *RHS)=0proteus::CodeBuilderpure virtual
createArith(ArithOp Op, IRValue *LHS, IRValue *RHS, IRType Ty)=0proteus::CodeBuilderpure virtual
createAtomicAdd(IRValue *Addr, IRValue *Val)=0proteus::CodeBuilderpure virtual
createAtomicMax(IRValue *Addr, IRValue *Val)=0proteus::CodeBuilderpure virtual
createAtomicMin(IRValue *Addr, IRValue *Val)=0proteus::CodeBuilderpure virtual
createAtomicSub(IRValue *Addr, IRValue *Val)=0proteus::CodeBuilderpure virtual
createBitCast(IRValue *V, IRType DestTy)=0proteus::CodeBuilderpure virtual
createCall(const std::string &FName, IRType RetTy, const std::vector< IRType > &ArgTys, const std::vector< IRValue * > &Args)=0proteus::CodeBuilderpure virtual
createCall(const std::string &FName, IRType RetTy)=0proteus::CodeBuilderpure virtual
createCast(IRValue *V, IRType FromTy, IRType ToTy)=0proteus::CodeBuilderpure virtual
createCmp(CmpOp Op, IRValue *LHS, IRValue *RHS, IRType Ty)=0proteus::CodeBuilderpure virtual
createLoad(IRType Ty, IRValue *Ptr, const std::string &Name="")=0proteus::CodeBuilderpure virtual
createNot(IRValue *Val)=0proteus::CodeBuilderpure virtual
createOr(IRValue *LHS, IRValue *RHS)=0proteus::CodeBuilderpure virtual
createRet(IRValue *V)=0proteus::CodeBuilderpure virtual
createRetVoid()=0proteus::CodeBuilderpure virtual
createStore(IRValue *Val, IRValue *Ptr)=0proteus::CodeBuilderpure virtual
createXor(IRValue *LHS, IRValue *RHS)=0proteus::CodeBuilderpure virtual
createZExt(IRValue *V, IRType DestTy)=0proteus::CodeBuilderpure virtual
endFor()=0proteus::CodeBuilderpure virtual
endFunction()=0proteus::CodeBuilderpure virtual
endIf()=0proteus::CodeBuilderpure virtual
endWhile()=0proteus::CodeBuilderpure virtual
getArg(IRFunction *F, size_t Idx)=0proteus::CodeBuilderpure virtual
getConstantFP(IRType Ty, double Val)=0proteus::CodeBuilderpure virtual
getConstantInt(IRType Ty, uint64_t Val)=0proteus::CodeBuilderpure virtual
getElementPtr(IRValue *Base, IRType BaseTy, IRValue *Index, IRType ElemTy)=0proteus::CodeBuilderpure virtual
getElementPtr(IRValue *Base, IRType BaseTy, size_t Index, IRType ElemTy)=0proteus::CodeBuilderpure virtual
getTargetModel() const =0proteus::CodeBuilderpure virtual
loadAddress(IRValue *Slot, IRType AllocTy)=0proteus::CodeBuilderpure virtual
loadFromPointee(IRValue *Slot, IRType AllocTy, IRType ValueTy)=0proteus::CodeBuilderpure virtual
loadScalar(IRValue *Slot, IRType ValueTy)=0proteus::CodeBuilderpure virtual
setFunctionName(IRFunction *F, const std::string &Name)=0proteus::CodeBuilderpure virtual
setInsertPointAtEntry()=0proteus::CodeBuilderpure virtual
storeAddress(IRValue *Slot, IRValue *Addr)=0proteus::CodeBuilderpure virtual
storeScalar(IRValue *Slot, IRValue *Val)=0proteus::CodeBuilderpure virtual
storeToPointee(IRValue *Slot, IRType AllocTy, IRValue *Val)=0proteus::CodeBuilderpure virtual
~CodeBuilder()=defaultproteus::CodeBuildervirtual