22 using namespace clang;
23 using namespace CodeGen;
ReturnValueSlot - Contains the address where the return value of a function can be stored...
void end(CodeGenFunction &CGF)
void EmitBranchOnBoolExpr(const Expr *Cond, llvm::BasicBlock *TrueBlock, llvm::BasicBlock *FalseBlock, uint64_t TrueCount)
EmitBranchOnBoolExpr - Emit a branch on a boolean condition (e.g.
Defines the clang::Expr interface and subclasses for C++ expressions.
An object to manage conditionally-evaluated expressions.
CodeGenFunction - This class organizes the per-function state that is used while generating LLVM code...
virtual RValue EmitCUDAKernelCallExpr(CodeGenFunction &CGF, const CUDAKernelCallExpr *E, ReturnValueSlot ReturnValue)
const CallExpr * getConfig() const
RValue EmitSimpleCallExpr(const CallExpr *E, ReturnValueSlot ReturnValue)
Emit a CallExpr without considering whether it might be a subclass.
llvm::BasicBlock * createBasicBlock(const Twine &name="", llvm::Function *parent=nullptr, llvm::BasicBlock *before=nullptr)
createBasicBlock - Create an LLVM basic block.
void begin(CodeGenFunction &CGF)
RValue - This trivial value class is used to represent the result of an expression that is evaluated...
Dataflow Directional Tag Classes.
Represents a call to a CUDA kernel function.
void EmitBlock(llvm::BasicBlock *BB, bool IsFinished=false)
EmitBlock - Emit the given block.
void EmitBranch(llvm::BasicBlock *Block)
EmitBranch - Emit a branch to the specified basic block from the current insert block, taking care to avoid creation of branches from dummy blocks.
static RValue get(llvm::Value *V)