|
clang 23.0.0git
|
#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/CodeGen/CGHLSLRuntime.h"
Public Member Functions | |
| GENERATE_HLSL_INTRINSIC_FUNCTION (FlattenedThreadIdInGroup, flattened_thread_id_in_group) GENERATE_HLSL_INTRINSIC_FUNCTION(CreateResourceGetPointer | |
| resource_getpointer | GENERATE_HLSL_INTRINSIC_FUNCTION (SampleCmpLevelZero, resource_samplecmplevelzero) GENERATE_HLSL_INTRINSIC_FUNCTION(CreateHandleFromBinding |
| resource_getpointer resource_handlefrombinding | GENERATE_HLSL_INTRINSIC_FUNCTION (CreateHandleFromImplicitBinding, resource_handlefromimplicitbinding) GENERATE_HLSL_INTRINSIC_FUNCTION(NonUniformResourceIndex |
| resource_getpointer resource_handlefrombinding resource_nonuniformindex GENERATE_HLSL_INTRINSIC_FUNCTION(GroupMemoryBarrierWithGroupSync, group_memory_barrier_with_group_sync) protected llvm::Value * | emitSystemSemanticLoad (llvm::IRBuilder<> &B, const FunctionDecl *FD, llvm::Type *Type, const clang::DeclaratorDecl *Decl, HLSLAppliedSemanticAttr *Semantic, std::optional< unsigned > Index) |
| void | emitSystemSemanticStore (llvm::IRBuilder<> &B, llvm::Value *Source, const clang::DeclaratorDecl *Decl, HLSLAppliedSemanticAttr *Semantic, std::optional< unsigned > Index) |
| llvm::Value * | handleScalarSemanticLoad (llvm::IRBuilder<> &B, const FunctionDecl *FD, llvm::Type *Type, const clang::DeclaratorDecl *Decl, HLSLAppliedSemanticAttr *Semantic) |
| void | handleScalarSemanticStore (llvm::IRBuilder<> &B, const FunctionDecl *FD, llvm::Value *Source, const clang::DeclaratorDecl *Decl, HLSLAppliedSemanticAttr *Semantic) |
| std::pair< llvm::Value *, specific_attr_iterator< HLSLAppliedSemanticAttr > > | handleStructSemanticLoad (llvm::IRBuilder<> &B, const FunctionDecl *FD, llvm::Type *Type, const clang::DeclaratorDecl *Decl, specific_attr_iterator< HLSLAppliedSemanticAttr > begin, specific_attr_iterator< HLSLAppliedSemanticAttr > end) |
| specific_attr_iterator< HLSLAppliedSemanticAttr > | handleStructSemanticStore (llvm::IRBuilder<> &B, const FunctionDecl *FD, llvm::Value *Source, const clang::DeclaratorDecl *Decl, specific_attr_iterator< HLSLAppliedSemanticAttr > AttrBegin, specific_attr_iterator< HLSLAppliedSemanticAttr > AttrEnd) |
| std::pair< llvm::Value *, specific_attr_iterator< HLSLAppliedSemanticAttr > > | handleSemanticLoad (llvm::IRBuilder<> &B, const FunctionDecl *FD, llvm::Type *Type, const clang::DeclaratorDecl *Decl, specific_attr_iterator< HLSLAppliedSemanticAttr > begin, specific_attr_iterator< HLSLAppliedSemanticAttr > end) |
| specific_attr_iterator< HLSLAppliedSemanticAttr > | handleSemanticStore (llvm::IRBuilder<> &B, const FunctionDecl *FD, llvm::Value *Source, const clang::DeclaratorDecl *Decl, specific_attr_iterator< HLSLAppliedSemanticAttr > AttrBegin, specific_attr_iterator< HLSLAppliedSemanticAttr > AttrEnd) |
| CGHLSLRuntime (CodeGenModule &CGM) | |
| virtual | ~CGHLSLRuntime () |
| llvm::Type * | convertHLSLSpecificType (const Type *T, const CGHLSLOffsetInfo &OffsetInfo) |
| llvm::Type * | convertHLSLSpecificType (const Type *T) |
| void | generateGlobalCtorDtorCalls () |
| void | addBuffer (const HLSLBufferDecl *D) |
| void | addRootSignature (const HLSLRootSignatureDecl *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) |
| llvm::Instruction * | getConvergenceToken (llvm::BasicBlock &BB) |
| llvm::StructType * | getHLSLBufferLayoutType (const RecordType *LayoutStructTy) |
| void | addHLSLBufferLayoutType (const RecordType *LayoutStructTy, llvm::StructType *LayoutTy) |
| void | emitInitListOpaqueValues (CodeGenFunction &CGF, InitListExpr *E) |
| std::optional< LValue > | emitResourceArraySubscriptExpr (const ArraySubscriptExpr *E, CodeGenFunction &CGF) |
| bool | emitResourceArrayCopy (LValue &LHS, Expr *RHSExpr, CodeGenFunction &CGF) |
| std::optional< LValue > | emitBufferArraySubscriptExpr (const ArraySubscriptExpr *E, CodeGenFunction &CGF, llvm::function_ref< llvm::Value *(bool Promote)> EmitIdxAfterBase) |
| RawAddress | createBufferMatrixTempAddress (const LValue &LV, SourceLocation Loc, CodeGenFunction &CGF) |
| bool | emitBufferCopy (CodeGenFunction &CGF, Address DestPtr, Address SrcPtr, QualType CType) |
| LValue | emitBufferMemberExpr (CodeGenFunction &CGF, const MemberExpr *E) |
Definition at line 117 of file CGHLSLRuntime.h.
|
inline |
Definition at line 247 of file CGHLSLRuntime.h.
References CGHLSLRuntime().
Referenced by CGHLSLRuntime().
|
inlinevirtual |
Definition at line 248 of file CGHLSLRuntime.h.
| void CGHLSLRuntime::addBuffer | ( | const HLSLBufferDecl * | D | ) |
Definition at line 419 of file CGHLSLRuntime.cpp.
References convertHLSLSpecificType(), createBufferHandleType(), clang::CodeGen::CGHLSLOffsetInfo::fromDecl(), clang::CodeGen::CodeGenModule::getModule(), clang::NamedDecl::getName(), and clang::HLSLBufferDecl::isCBuffer().
Referenced by clang::CodeGen::CodeGenModule::EmitTopLevelDecl().
| void CGHLSLRuntime::addHLSLBufferLayoutType | ( | const RecordType * | LayoutStructTy, |
| llvm::StructType * | LayoutTy ) |
Definition at line 470 of file CGHLSLRuntime.cpp.
References getHLSLBufferLayoutType().
| void CGHLSLRuntime::addRootSignature | ( | const HLSLRootSignatureDecl * | D | ) |
Definition at line 449 of file CGHLSLRuntime.cpp.
References clang::CodeGen::CodeGenModule::getModule(), clang::HLSLRootSignatureDecl::getRootElements(), and clang::HLSLRootSignatureDecl::getVersion().
Referenced by clang::CodeGen::CodeGenModule::EmitTopLevelDecl().
|
inline |
Definition at line 252 of file CGHLSLRuntime.h.
References convertHLSLSpecificType(), and clang::CodeGen::Type.
| llvm::Type * CGHLSLRuntime::convertHLSLSpecificType | ( | const Type * | T, |
| const CGHLSLOffsetInfo & | OffsetInfo ) |
Definition at line 274 of file CGHLSLRuntime.cpp.
References clang::CodeGen::TargetCodeGenInfo::getHLSLType(), clang::CodeGen::CodeGenModule::getTargetCodeGenInfo(), and clang::CodeGen::Type.
Referenced by addBuffer(), and convertHLSLSpecificType().
| RawAddress CGHLSLRuntime::createBufferMatrixTempAddress | ( | const LValue & | LV, |
| SourceLocation | Loc, | ||
| CodeGenFunction & | CGF ) |
Definition at line 1360 of file CGHLSLRuntime.cpp.
References clang::CodeGen::CodeGenFunction::CGM, clang::CodeGen::CodeGenFunction::ConvertTypeForMem(), clang::CodeGen::CodeGenFunction::CreateTempAlloca(), emitBufferCopy(), clang::CharUnits::fromQuantity(), clang::CodeGen::LValue::getAddress(), clang::QualType::getAddressSpace(), clang::CodeGen::CodeGenModule::getDataLayout(), clang::CodeGen::LValue::getType(), clang::hlsl_constant, clang::Type::isConstantMatrixType(), and clang::CodeGen::HLSLBufferLayoutBuilder::layOutType().
Referenced by EmitLoadOfMatrixLValue().
| std::optional< LValue > CGHLSLRuntime::emitBufferArraySubscriptExpr | ( | const ArraySubscriptExpr * | E, |
| CodeGenFunction & | CGF, | ||
| llvm::function_ref< llvm::Value *(bool Promote)> | EmitIdxAfterBase ) |
Definition at line 1386 of file CGHLSLRuntime.cpp.
References clang::Addr, clang::CharUnits::alignTo(), clang::CodeGen::CodeGenFunction::Builder, clang::cast(), clang::CodeGen::CodeGenFunction::CGM, clang::CodeGen::CodeGenTypes::ConvertTypeForMem(), clang::CodeGen::CGBuilderTy::CreateGEP(), clang::CodeGen::CodeGenFunction::EmitLValue(), clang::CodeGen::CodeGenFunction::EmitPointerWithAlignment(), clang::CharUnits::fromQuantity(), clang::CodeGen::LValue::getAddress(), clang::ArraySubscriptExpr::getBase(), clang::CastExpr::getCastKind(), clang::CodeGen::CodeGenModule::getDataLayout(), clang::CodeGen::TargetCodeGenInfo::getHLSLPadding(), clang::CodeGen::CodeGenFunction::getLangOpts(), clang::CodeGen::CodeGenFunction::getLLVMContext(), clang::CastExpr::getSubExpr(), clang::CodeGen::CodeGenModule::getTargetCodeGenInfo(), clang::Expr::getType(), clang::CodeGen::CodeGenModule::getTypes(), clang::CodeGen::CodeGenTypeCache::Int32Ty, clang::CodeGen::KnownNonNull, clang::CodeGen::HLSLBufferLayoutBuilder::layOutType(), and clang::CodeGen::CodeGenFunction::MakeAddrLValue().
| bool CGHLSLRuntime::emitBufferCopy | ( | CodeGenFunction & | CGF, |
| Address | DestPtr, | ||
| Address | SrcPtr, | ||
| QualType | CType ) |
Definition at line 1591 of file CGHLSLRuntime.cpp.
Referenced by createBufferMatrixTempAddress().
| LValue CGHLSLRuntime::emitBufferMemberExpr | ( | CodeGenFunction & | CGF, |
| const MemberExpr * | E ) |
Definition at line 1596 of file CGHLSLRuntime.cpp.
References clang::Qualifiers::addCVRQualifiers(), clang::Addr, clang::CodeGen::CodeGenFunction::Builder, clang::CodeGen::CodeGenFunction::CGM, clang::CodeGen::CodeGenTypes::ConvertTypeForMem(), clang::CodeGen::CGBuilderTy::CreateStructGEP(), clang::CodeGen::CodeGenFunction::EmitCheckedLValue(), clang::CharUnits::fromQuantity(), clang::Type::getAsCanonical(), clang::MemberExpr::getBase(), clang::ASTContext::getCanonicalTagType(), clang::CodeGen::CodeGenTypes::getCGRecordLayout(), clang::CodeGen::CodeGenModule::getContext(), clang::CodeGen::CodeGenModule::getDataLayout(), clang::CodeGen::CodeGenFunction::getLangOpts(), clang::CodeGen::CGRecordLayout::getLLVMFieldNo(), clang::MemberExpr::getMemberDecl(), clang::DeclContext::getParent(), clang::CodeGen::LValue::getQuals(), clang::CodeGen::CodeGenModule::getTargetCodeGenInfo(), clang::CodeGen::CodeGenModule::getTBAAAccessInfo(), clang::CodeGen::CodeGenModule::getTypes(), clang::CodeGen::CodeGenTypeCache::IntTy, clang::CodeGen::TargetCodeGenInfo::isHLSLPadding(), clang::Type::isStructureOrClassType(), clang::CodeGen::KnownNonNull, clang::CodeGen::HLSLBufferLayoutBuilder::layOutStruct(), clang::CodeGen::LValue::MakeAddr(), clang::CodeGen::CodeGenFunction::TCK_MemberAccess, and clang::CodeGen::Type.
| void CGHLSLRuntime::emitEntryFunction | ( | const FunctionDecl * | FD, |
| llvm::Function * | Fn ) |
Definition at line 921 of file CGHLSLRuntime.cpp.
References clang::CodeGen::Decl, clang::Function, clang::Decl::getAttr(), clang::Decl::getAttrs(), clang::CodeGen::CodeGenModule::getModule(), clang::NamedDecl::getName(), clang::FunctionDecl::getParamDecl(), handleSemanticLoad(), handleSemanticStore(), clang::Result, setHLSLEntryAttributes(), clang::CodeGen::CodeGenModule::shouldEmitConvergenceTokens(), clang::Decl::specific_attr_begin(), clang::Decl::specific_attr_end(), and clang::CodeGen::CodeGenTypeCache::VoidTy.
| void CGHLSLRuntime::emitInitListOpaqueValues | ( | CodeGenFunction & | CGF, |
| InitListExpr * | E ) |
| bool CGHLSLRuntime::emitResourceArrayCopy | ( | LValue & | LHS, |
| Expr * | RHSExpr, | ||
| CodeGenFunction & | CGF ) |
Definition at line 1320 of file CGHLSLRuntime.cpp.
References clang::cast(), clang::CodeGen::AggValueSlot::DoesNotNeedGCBarriers, clang::CodeGen::AggValueSlot::DoesNotOverlap, clang::CodeGen::AggValueSlot::forAddr(), clang::CodeGen::LValue::getAddress(), clang::Type::getAsCXXRecordDecl(), clang::Decl::getASTContext(), clang::ASTContext::getBaseElementType(), clang::Expr::getExprLoc(), clang::NamedDecl::getName(), clang::VarDecl::getStorageClass(), clang::Expr::getType(), clang::QualType::getTypePtr(), clang::hlsl::ResourceBindingAttrs::hasBinding(), clang::VarDecl::hasGlobalStorage(), clang::CodeGen::CodeGenTypeCache::IntTy, clang::Type::isHLSLResourceRecordArray(), clang::SC_Static, and clang::Zero.
| std::optional< LValue > CGHLSLRuntime::emitResourceArraySubscriptExpr | ( | const ArraySubscriptExpr * | E, |
| CodeGenFunction & | CGF ) |
Definition at line 1219 of file CGHLSLRuntime.cpp.
References clang::CodeGen::CodeGenFunction::Builder, clang::cast(), clang::CodeGen::CodeGenFunction::CGM, clang::CodeGen::CodeGenFunction::CreateMemTemp(), clang::CodeGen::Decl, clang::CodeGen::AggValueSlot::DoesNotNeedGCBarriers, clang::CodeGen::AggValueSlot::DoesNotOverlap, clang::CodeGen::CodeGenFunction::EmitLifetimeStart(), clang::CodeGen::CodeGenFunction::EmitScalarExpr(), clang::CodeGen::AggValueSlot::forAddr(), clang::Type::getAsCXXRecordDecl(), clang::Decl::getASTContext(), clang::ArraySubscriptExpr::getBase(), clang::ASTContext::getBaseElementType(), clang::ASTContext::getConstantArrayElementCount(), clang::ArraySubscriptExpr::getExprLoc(), clang::ArraySubscriptExpr::getIdx(), clang::NamedDecl::getName(), clang::CodeGen::RawAddress::getPointer(), clang::VarDecl::getStorageClass(), clang::Expr::getType(), clang::ValueDecl::getType(), clang::QualType::getTypePtr(), clang::hlsl::ResourceBindingAttrs::hasBinding(), clang::VarDecl::hasGlobalStorage(), clang::Expr::IgnoreParenImpCasts(), clang::CodeGen::CodeGenTypeCache::IntTy, clang::Type::isArrayType(), clang::Type::isHLSLResourceRecord(), clang::Type::isHLSLResourceRecordArray(), clang::CodeGen::CodeGenFunction::MakeAddrLValue(), clang::CodeGen::NormalEHLifetimeMarker, clang::CodeGen::CodeGenFunction::pushFullExprCleanup(), clang::SC_Static, and clang::CodeGen::Type.
| llvm::Value * CGHLSLRuntime::emitSystemSemanticLoad | ( | llvm::IRBuilder<> & | B, |
| const FunctionDecl * | FD, | ||
| llvm::Type * | Type, | ||
| const clang::DeclaratorDecl * | Decl, | ||
| HLSLAppliedSemanticAttr * | Semantic, | ||
| std::optional< unsigned > | Index ) |
Definition at line 711 of file CGHLSLRuntime.cpp.
References buildVectorInput(), createSPIRVBuiltinLoad(), clang::CodeGen::Decl, clang::Decl::getAttr(), clang::CodeGen::CodeGenModule::getIntrinsic(), clang::CodeGen::CodeGenModule::getModule(), clang::CodeGen::CodeGenModule::getTarget(), clang::TargetInfo::getTriple(), clang::CodeGen::CodeGenTypeCache::Int32Ty, and clang::CodeGen::Type.
Referenced by GENERATE_HLSL_INTRINSIC_FUNCTION(), and handleScalarSemanticLoad().
| void CGHLSLRuntime::emitSystemSemanticStore | ( | llvm::IRBuilder<> & | B, |
| llvm::Value * | Source, | ||
| const clang::DeclaratorDecl * | Decl, | ||
| HLSLAppliedSemanticAttr * | Semantic, | ||
| std::optional< unsigned > | Index ) |
Definition at line 787 of file CGHLSLRuntime.cpp.
References createSPIRVBuiltinStore(), clang::CodeGen::Decl, clang::CodeGen::CodeGenModule::getModule(), clang::CodeGen::CodeGenModule::getTarget(), and clang::TargetInfo::getTriple().
Referenced by GENERATE_HLSL_INTRINSIC_FUNCTION(), and handleScalarSemanticStore().
| void CGHLSLRuntime::finishCodeGen | ( | ) |
Definition at line 477 of file CGHLSLRuntime.cpp.
References generateGlobalCtorDtorCalls(), clang::CodeGen::CodeGenModule::getCodeGenOpts(), clang::CodeGen::CodeGenModule::getLangOpts(), clang::CodeGen::CodeGenModule::getModule(), clang::CodeGen::CodeGenModule::getTarget(), and clang::TargetInfo::getTargetOpts().
Referenced by clang::CodeGen::CodeGenModule::Release().
| resource_getpointer resource_handlefrombinding clang::CodeGen::CGHLSLRuntime::GENERATE_HLSL_INTRINSIC_FUNCTION | ( | CreateHandleFromImplicitBinding | , |
| resource_handlefromimplicitbinding | ) |
References clang::CodeGen::Decl, emitSystemSemanticLoad(), emitSystemSemanticStore(), GENERATE_HLSL_INTRINSIC_FUNCTION(), handleScalarSemanticLoad(), handleScalarSemanticStore(), handleSemanticLoad(), handleSemanticStore(), handleStructSemanticLoad(), handleStructSemanticStore(), and clang::CodeGen::Type.
| clang::CodeGen::CGHLSLRuntime::GENERATE_HLSL_INTRINSIC_FUNCTION | ( | FlattenedThreadIdInGroup | , |
| flattened_thread_id_in_group | ) |
References GENERATE_HLSL_INTRINSIC_FUNCTION(), isinf(), isnan(), normalize(), radians(), rsqrt(), Sample, sign(), and step().
Referenced by GENERATE_HLSL_INTRINSIC_FUNCTION(), GENERATE_HLSL_INTRINSIC_FUNCTION(), and GENERATE_HLSL_INTRINSIC_FUNCTION().
| resource_getpointer clang::CodeGen::CGHLSLRuntime::GENERATE_HLSL_INTRINSIC_FUNCTION | ( | SampleCmpLevelZero | , |
| resource_samplecmplevelzero | ) |
References GENERATE_HLSL_INTRINSIC_FUNCTION().
| void CGHLSLRuntime::generateGlobalCtorDtorCalls | ( | ) |
Definition at line 1046 of file CGHLSLRuntime.cpp.
References gatherFunctions(), getConvergenceToken(), and clang::CodeGen::CodeGenModule::getModule().
Referenced by finishCodeGen().
| llvm::Instruction * CGHLSLRuntime::getConvergenceToken | ( | llvm::BasicBlock & | BB | ) |
Definition at line 1158 of file CGHLSLRuntime.cpp.
References clang::CodeGen::CodeGenModule::shouldEmitConvergenceTokens().
Referenced by generateGlobalCtorDtorCalls().
| llvm::StructType * CGHLSLRuntime::getHLSLBufferLayoutType | ( | const RecordType * | LayoutStructTy | ) |
Definition at line 463 of file CGHLSLRuntime.cpp.
Referenced by addHLSLBufferLayoutType().
| void CGHLSLRuntime::handleGlobalVarDefinition | ( | const VarDecl * | VD, |
| llvm::GlobalVariable * | Var ) |
Definition at line 1152 of file CGHLSLRuntime.cpp.
References addSPIRVBuiltinDecoration(), and clang::Decl::getAttr().
| llvm::Value * CGHLSLRuntime::handleScalarSemanticLoad | ( | llvm::IRBuilder<> & | B, |
| const FunctionDecl * | FD, | ||
| llvm::Type * | Type, | ||
| const clang::DeclaratorDecl * | Decl, | ||
| HLSLAppliedSemanticAttr * | Semantic ) |
Definition at line 816 of file CGHLSLRuntime.cpp.
References clang::CodeGen::Decl, emitSystemSemanticLoad(), and clang::CodeGen::Type.
Referenced by GENERATE_HLSL_INTRINSIC_FUNCTION(), and handleSemanticLoad().
| void CGHLSLRuntime::handleScalarSemanticStore | ( | llvm::IRBuilder<> & | B, |
| const FunctionDecl * | FD, | ||
| llvm::Value * | Source, | ||
| const clang::DeclaratorDecl * | Decl, | ||
| HLSLAppliedSemanticAttr * | Semantic ) |
Definition at line 826 of file CGHLSLRuntime.cpp.
References clang::CodeGen::Decl, and emitSystemSemanticStore().
Referenced by GENERATE_HLSL_INTRINSIC_FUNCTION(), and handleSemanticStore().
| std::pair< llvm::Value *, specific_attr_iterator< HLSLAppliedSemanticAttr > > CGHLSLRuntime::handleSemanticLoad | ( | llvm::IRBuilder<> & | B, |
| const FunctionDecl * | FD, | ||
| llvm::Type * | Type, | ||
| const clang::DeclaratorDecl * | Decl, | ||
| specific_attr_iterator< HLSLAppliedSemanticAttr > | begin, | ||
| specific_attr_iterator< HLSLAppliedSemanticAttr > | end ) |
Definition at line 890 of file CGHLSLRuntime.cpp.
References clang::CodeGen::Decl, handleScalarSemanticLoad(), handleStructSemanticLoad(), and clang::CodeGen::Type.
Referenced by emitEntryFunction(), GENERATE_HLSL_INTRINSIC_FUNCTION(), and handleStructSemanticLoad().
| specific_attr_iterator< HLSLAppliedSemanticAttr > CGHLSLRuntime::handleSemanticStore | ( | llvm::IRBuilder<> & | B, |
| const FunctionDecl * | FD, | ||
| llvm::Value * | Source, | ||
| const clang::DeclaratorDecl * | Decl, | ||
| specific_attr_iterator< HLSLAppliedSemanticAttr > | AttrBegin, | ||
| specific_attr_iterator< HLSLAppliedSemanticAttr > | AttrEnd ) |
Definition at line 906 of file CGHLSLRuntime.cpp.
References clang::CodeGen::Decl, handleScalarSemanticStore(), and handleStructSemanticStore().
Referenced by emitEntryFunction(), GENERATE_HLSL_INTRINSIC_FUNCTION(), and handleStructSemanticStore().
| std::pair< llvm::Value *, specific_attr_iterator< HLSLAppliedSemanticAttr > > CGHLSLRuntime::handleStructSemanticLoad | ( | llvm::IRBuilder<> & | B, |
| const FunctionDecl * | FD, | ||
| llvm::Type * | Type, | ||
| const clang::DeclaratorDecl * | Decl, | ||
| specific_attr_iterator< HLSLAppliedSemanticAttr > | begin, | ||
| specific_attr_iterator< HLSLAppliedSemanticAttr > | end ) |
Definition at line 837 of file CGHLSLRuntime.cpp.
References clang::Aggregate, clang::cast(), clang::CodeGen::Decl, clang::RecordDecl::field_begin(), clang::RecordDecl::getNumFields(), handleSemanticLoad(), and clang::CodeGen::Type.
Referenced by GENERATE_HLSL_INTRINSIC_FUNCTION(), and handleSemanticLoad().
| specific_attr_iterator< HLSLAppliedSemanticAttr > CGHLSLRuntime::handleStructSemanticStore | ( | llvm::IRBuilder<> & | B, |
| const FunctionDecl * | FD, | ||
| llvm::Value * | Source, | ||
| const clang::DeclaratorDecl * | Decl, | ||
| specific_attr_iterator< HLSLAppliedSemanticAttr > | AttrBegin, | ||
| specific_attr_iterator< HLSLAppliedSemanticAttr > | AttrEnd ) |
Definition at line 862 of file CGHLSLRuntime.cpp.
References clang::cast(), clang::CodeGen::Decl, clang::RecordDecl::field_begin(), clang::Type::getAsRecordDecl(), clang::FunctionDecl::getDeclaredReturnType(), clang::RecordDecl::getNumFields(), and handleSemanticStore().
Referenced by GENERATE_HLSL_INTRINSIC_FUNCTION(), and handleSemanticStore().
| void clang::CodeGen::CGHLSLRuntime::setHLSLEntryAttributes | ( | const FunctionDecl * | FD, |
| llvm::Function * | Fn ) |
Definition at line 500 of file CGHLSLRuntime.cpp.
References clang::Decl::getAttr(), clang::CodeGen::CodeGenModule::getCodeGenOpts(), and clang::CodeGen::CodeGenModule::getLangOpts().
Referenced by emitEntryFunction().
| void clang::CodeGen::CGHLSLRuntime::setHLSLFunctionAttributes | ( | const FunctionDecl * | FD, |
| llvm::Function * | Fn ) |
References clang::CodeGen::Decl, and clang::CodeGen::Type.