LLVM: lib/Target/DirectX/DXILRootSignature.cpp File Reference (original) (raw)
Go to the source code of this file.
| Variables | |
|---|---|
| dxil root signature | analysis |
| dxil root signature DXIL Root Signature | Analysis |
| dxil root signature DXIL Root Signature | true |
◆ analyzeModule()
Root Signature are specified as following in the metadata:
!dx.rootsignatures = !{!2} ; list of function/root signature pairs !2 = !{ ptr @main, !3 } ; function, root signature !3 = !{ !4, !5, !6, !7 } ; list of root signature elements
So for each MDNode inside dx.rootsignatures NamedMDNode (the Root parameter of this function), the parsing process needs to loop through each of its operands and process the function, signature pair.
Definition at line 53 of file DXILRootSignature.cpp.
References assert(), llvm::dyn_cast(), extractMdIntValue(), F, llvm::MDOperand::get(), llvm::NamedMDNode::getNumOperands(), llvm::ValueAsMetadata::getValue(), llvm::handleAllErrors(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::insert(), llvm::NamedMDNode::operands(), llvm::hlsl::rootsig::MetadataParser::ParseRootSignature(), reportError(), llvm::Triple::RootSignature, and llvm::Expected< T >::takeError().
Referenced by llvm::dxil::RootSignatureAnalysis::run(), and llvm::dxil::RootSignatureAnalysisWrapper::runOnModule().
◆ extractMdIntValue()
◆ INITIALIZE_PASS_BEGIN()
◆ reportError()
◆ Analysis
dxil root signature DXIL Root Signature Analysis
◆ analysis
dxil root signature analysis
◆ true
dxil root signature DXIL Root Signature true