clang 20.0.0git
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
clang::CodeGen::CGHLSLRuntime Class Reference

#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/CodeGen/CGHLSLRuntime.h"

Classes

struct  Buffer
 
struct  BufferResBinding
 

Public Member Functions

 GENERATE_HLSL_INTRINSIC_FUNCTION (CreateHandleFromBinding, resource_handlefrombinding) GENERATE_HLSL_INTRINSIC_FUNCTION(GroupMemoryBarrierWithGroupSync
 
 CGHLSLRuntime (CodeGenModule &CGM)
 
virtual ~CGHLSLRuntime ()
 
llvm::Type * convertHLSLSpecificType (const Type *T)
 
void annotateHLSLResource (const VarDecl *D, llvm::GlobalVariable *GV)
 
void generateGlobalCtorDtorCalls ()
 
void addBuffer (const HLSLBufferDecl *D)
 
void finishCodeGen ()
 
void setHLSLEntryAttributes (const FunctionDecl *FD, llvm::Function *Fn)
 
void emitEntryFunction (const FunctionDecl *FD, llvm::Function *Fn)
 
void setHLSLFunctionAttributes (const FunctionDecl *FD, llvm::Function *Fn)
 
void handleGlobalVarDefinition (const VarDecl *VD, llvm::GlobalVariable *Var)
 
bool needsResourceBindingInitFn ()
 
llvm::Function * createResourceBindingInitFn ()
 
llvm::Instruction * getConvergenceToken (llvm::BasicBlock &BB)
 

Protected Member Functions

llvm::Value * emitInputSemantic (llvm::IRBuilder<> &B, const ParmVarDecl &D, llvm::Type *Ty)
 

Protected Attributes

CodeGenModuleCGM
 

Detailed Description

Definition at line 69 of file CGHLSLRuntime.h.

Constructor & Destructor Documentation

◆ CGHLSLRuntime()

clang::CodeGen::CGHLSLRuntime::CGHLSLRuntime ( CodeGenModule CGM)
inline

Definition at line 142 of file CGHLSLRuntime.h.

◆ ~CGHLSLRuntime()

virtual clang::CodeGen::CGHLSLRuntime::~CGHLSLRuntime ( )
inlinevirtual

Definition at line 143 of file CGHLSLRuntime.h.

Member Function Documentation

◆ addBuffer()

void CGHLSLRuntime::addBuffer ( const HLSLBufferDecl D)

Definition at line 176 of file CGHLSLRuntime.cpp.

References D.

Referenced by clang::CodeGen::CodeGenModule::EmitTopLevelDecl().

◆ annotateHLSLResource()

void CGHLSLRuntime::annotateHLSLResource ( const VarDecl D,
llvm::GlobalVariable *  GV 
)

◆ convertHLSLSpecificType()

llvm::Type * CGHLSLRuntime::convertHLSLSpecificType ( const Type T)

◆ createResourceBindingInitFn()

llvm::Function * CGHLSLRuntime::createResourceBindingInitFn ( )

◆ emitEntryFunction()

void CGHLSLRuntime::emitEntryFunction ( const FunctionDecl FD,
llvm::Function *  Fn 
)

◆ emitInputSemantic()

llvm::Value * CGHLSLRuntime::emitInputSemantic ( llvm::IRBuilder<> &  B,
const ParmVarDecl D,
llvm::Type *  Ty 
)
protected

◆ finishCodeGen()

void CGHLSLRuntime::finishCodeGen ( )

◆ GENERATE_HLSL_INTRINSIC_FUNCTION()

clang::CodeGen::CGHLSLRuntime::GENERATE_HLSL_INTRINSIC_FUNCTION ( CreateHandleFromBinding  ,
resource_handlefrombinding   
)

◆ generateGlobalCtorDtorCalls()

void CGHLSLRuntime::generateGlobalCtorDtorCalls ( )

◆ getConvergenceToken()

llvm::Instruction * CGHLSLRuntime::getConvergenceToken ( llvm::BasicBlock &  BB)

◆ handleGlobalVarDefinition()

void CGHLSLRuntime::handleGlobalVarDefinition ( const VarDecl VD,
llvm::GlobalVariable *  Var 
)

◆ needsResourceBindingInitFn()

bool CGHLSLRuntime::needsResourceBindingInitFn ( )

Definition at line 557 of file CGHLSLRuntime.cpp.

Referenced by createResourceBindingInitFn().

◆ setHLSLEntryAttributes()

void clang::CodeGen::CGHLSLRuntime::setHLSLEntryAttributes ( const FunctionDecl FD,
llvm::Function *  Fn 
)

Definition at line 342 of file CGHLSLRuntime.cpp.

References clang::Decl::getAttr().

Referenced by emitEntryFunction().

◆ setHLSLFunctionAttributes()

void CGHLSLRuntime::setHLSLFunctionAttributes ( const FunctionDecl FD,
llvm::Function *  Fn 
)

Definition at line 458 of file CGHLSLRuntime.cpp.

References clang::Decl::isInExportDeclContext().

Member Data Documentation

◆ CGM

CodeGenModule& clang::CodeGen::CGHLSLRuntime::CGM
protected

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