16 #ifndef LLVM_CLANG_LIB_CODEGEN_CGCUDARUNTIME_H 17 #define LLVM_CLANG_LIB_CODEGEN_CGCUDARUNTIME_H 26 class CUDAKernelCallExpr;
30 class CodeGenFunction;
32 class FunctionArgList;
33 class ReturnValueSlot;
43 ExternDeviceVar = 0x01,
44 ConstantDeviceVar = 0x02,
56 virtual void registerDeviceVar(llvm::GlobalVariable &Var,
unsigned Flags) = 0;
60 virtual llvm::Function *makeModuleCtorFunction() = 0;
64 virtual llvm::Function *makeModuleDtorFunction() = 0;
ReturnValueSlot - Contains the address where the return value of a function can be stored...
DominatorTree GraphTraits specialization so the DominatorTree can be iterable by generic graph iterat...
CodeGenFunction - This class organizes the per-function state that is used while generating LLVM code...
RValue - This trivial value class is used to represent the result of an expression that is evaluated...
FunctionArgList - Type for representing both the decl and type of parameters to a function...
This class organizes the cross-function state that is used while generating LLVM code.
Dataflow Directional Tag Classes.
Represents a call to a CUDA kernel function.
CGCUDARuntime * CreateNVCUDARuntime(CodeGenModule &CGM)
Creates an instance of a CUDA runtime class.
CGCUDARuntime(CodeGenModule &CGM)