|
LLVM 24.0.0git
|
Namespaces | |
| namespace | PointerTypeAnalysis |
An analysis to compute the PointerTypes for pointers in a Module. | |
Classes | |
| class | AnyResourceExtType |
| struct | Attributes |
| class | BitcodeWriter |
| class | CBufferDataLayout |
| class | CBufferExtType |
| The dx.CBuffer target extension type. More... | |
| struct | ComputedShaderFlags |
| class | DXILBitcodeWriter |
| class | DXILDebugInfo |
| A pass that downgrades debug information to forms supported by DXIL. More... | |
| class | DXILDebugInfoMap |
| class | DXILOpBuilder |
| struct | EntryProperties |
| class | FeedbackTextureExtType |
| The dx.FeedbackTexture target extension type. More... | |
| class | LayoutExtType |
| The dx.Layout target extension type. More... | |
| class | LegacyCBufferLayout |
| struct | ModuleMetadataInfo |
| struct | ModuleShaderFlags |
| class | MSTextureExtType |
| The dx.MSTexture target extension type. More... | |
| class | PaddingExtType |
| The dx.Padding target extension type. More... | |
| class | RawBufferExtType |
| The dx.RawBuffer target extension type. More... | |
| class | ResourceInfo |
| class | ResourceTypeInfo |
| class | RootSignatureAnalysis |
| class | RootSignatureAnalysisPrinter |
| Printer pass for RootSignatureAnalysis results. More... | |
| class | RootSignatureAnalysisWrapper |
| Wrapper pass for the legacy pass manager. More... | |
| class | RootSignatureBindingInfo |
| class | SamplerExtType |
| The dx.Sampler target extension type. More... | |
| class | ShaderFlagsAnalysis |
| class | ShaderFlagsAnalysisPrinter |
| Printer pass for ShaderFlagsAnalysis results. More... | |
| class | ShaderFlagsAnalysisWrapper |
| Wrapper pass for the legacy pass manager. More... | |
| class | TextureExtType |
| The dx.Texture target extension type. More... | |
| class | TypedBufferExtType |
| The dx.TypedBuffer target extension type. More... | |
| class | ValueEnumerator |
Typedefs | |
| using | PointerTypeMap = DenseMap<const Value *, Type *> |
Enumerations | |
| enum class | ResourceCounterDirection { Increment , Decrement , Unknown , Invalid } |
| enum class | ResourceClass : uint8_t { SRV = 0 , UAV , CBuffer , Sampler , LastEntry = Sampler } |
| enum class | ResourceDimension : uint8_t { Unknown = 0 , Dim1D , Dim2D , Dim3D , Cube } |
| enum class | ResourceKind : uint32_t { Invalid = 0 , Texture1D , Texture2D , Texture2DMS , Texture3D , TextureCube , Texture1DArray , Texture2DArray , Texture2DMSArray , TextureCubeArray , TypedBuffer , RawBuffer , StructuredBuffer , CBuffer , Sampler , TBuffer , RTAccelerationStructure , FeedbackTexture2D , FeedbackTexture2DArray , NumEntries } |
| The kind of resource for an SRV or UAV resource. More... | |
| enum class | ElementType : uint32_t { Invalid = 0 , I1 , I16 , U16 , I32 , U32 , I64 , U64 , F16 , F32 , F64 , SNormF16 , UNormF16 , SNormF32 , UNormF32 , SNormF64 , UNormF64 , PackedS8x32 , PackedU8x32 , LastEntry = PackedU8x32 } |
| The element type of an SRV or UAV resource. More... | |
| enum class | ExtPropTags : uint32_t { ElementType = 0 , StructuredBufferStride = 1 , SamplerFeedbackKind = 2 , Atomic64Use = 3 } |
| Metadata tags for extra resource properties. More... | |
| enum class | SamplerType : uint32_t { Default = 0 , Comparison = 1 , Mono = 2 } |
| enum class | SamplerFeedbackType : uint32_t { MinMip = 0 , MipRegionUsed = 1 } |
| enum class | AtomicBinOpCode : uint32_t { Add = 0 , And = 1 , Or = 2 , Xor = 3 , IMin = 4 , IMax = 5 , UMin = 6 , UMax = 7 , Exchange = 8 } |
| Opcodes for the DXIL AtomicBinOp op (78). More... | |
| enum class | OpCode : unsigned |
| enum class | OpCodeClass : unsigned |
| enum class | OpParamType : unsigned |
| enum | MetadataAbbrev : unsigned { LastPlusOne } |
Functions | |
| LLVM_ABI StringRef | getResourceNameFromBindingCall (CallInst *CI) |
| LLVM_ABI StringRef | getResourceClassName (ResourceClass RC) |
| const AttributeMask & | getNonDXILAttributeMask () |
| Attributes | operator| (Attributes a, Attributes b) |
| Attributes & | operator|= (Attributes &a, Attributes &b) |
| static Error | makeOpError (dxil::OpCode OpCode, Twine Msg) |
| void | WriteDXILToFile (Module &M, raw_ostream &Out) |
| Write the specified module to the specified raw output stream. | |
| DXILDebugInfoMap | collectDXILDebugInfo (Module &M) |
Variables | |
| const unsigned | MinWaveSize = 4 |
| const unsigned | MaxWaveSize = 128 |
| using llvm::dxil::PointerTypeMap = DenseMap<const Value *, Type *> |
Definition at line 26 of file PointerTypeAnalysis.h.
|
strong |
|
strong |
|
strong |
| Enumerator | |
|---|---|
| LastPlusOne | |
Definition at line 61 of file DXILBitcodeWriter.cpp.
|
strong |
Definition at line 18 of file DXILConstants.h.
|
strong |
Definition at line 23 of file DXILConstants.h.
|
strong |
Definition at line 28 of file DXILConstants.h.
|
strong |
|
strong |
| Enumerator | |
|---|---|
| Increment | |
| Decrement | |
| Unknown | |
| Invalid | |
Definition at line 365 of file DXILResource.h.
|
strong |
|
strong |
The kind of resource for an SRV or UAV resource.
Sometimes referred to as "Shape" in the DXIL docs.
|
strong |
|
strong |
| DXILDebugInfoMap llvm::dxil::collectDXILDebugInfo | ( | Module & | M | ) |
Definition at line 54 of file DXILDebugInfoMap.cpp.
References A(), B(), llvm::cast(), llvm::DebugInfoFinder::compile_units(), llvm::dyn_cast(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::end(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::erase(), F, llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::find(), llvm::ConstantAsMetadata::get(), llvm::MDNode::get(), llvm::MDTuple::get(), llvm::ValueAsMetadata::get(), llvm::MDNode::getDistinct(), llvm::DISourceLanguageName::getName(), llvm::DISourceLanguageName::getVersion(), llvm::DebugInfoFinder::global_variables(), llvm::DISourceLanguageName::hasVersionedName(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::insert(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::lookup_or(), llvm::dxil::DXILDebugInfoMap::MDExtra, llvm::dxil::DXILDebugInfoMap::MDReplace, llvm::DebugInfoFinder::processModule(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), replaceDbgValue(), llvm::DebugInfoFinder::scopes(), llvm::DebugInfoFinder::subprograms(), T, llvm::dwarf::toDW_LANG(), and llvm::DebugInfoFinder::types().
Referenced by prettyPrint(), and WriteDXILToFile().
| const AttributeMask & llvm::dxil::getNonDXILAttributeMask | ( | ) |
Definition at line 17 of file DXILAttributes.cpp.
References llvm::AttributeMask::addAttribute(), llvm::AttributeMask::contains(), llvm::Attribute::EndAttrKinds, and llvm::Attribute::None.
Referenced by lowerDXILDebugInfo().
| StringRef llvm::dxil::getResourceClassName | ( | dxil::ResourceClass | RC | ) |
Definition at line 21 of file DXILABI.cpp.
References CBuffer, llvm_unreachable, Sampler, SRV, and UAV.
Referenced by llvm::hlsl::rootsig::operator<<(), llvm::dxil::ResourceTypeInfo::print(), reportInvalidHandleTyError(), reportOverlappingRegisters(), reportRegNotBound(), and llvm::dxil::RootSignatureAnalysisPrinter::run().
Definition at line 822 of file DXILResource.cpp.
References assert(), llvm::dyn_cast(), llvm::CallBase::getArgOperand(), llvm::CallBase::getCalledFunction(), llvm::Function::getIntrinsicID(), and llvm_unreachable.
|
static |
Definition at line 519 of file DXILOpBuilder.cpp.
References llvm::inconvertibleErrorCode(), llvm::make_error(), and Msg.
Referenced by llvm::dxil::DXILOpBuilder::tryCreateOp().
|
inline |
Definition at line 38 of file DXILConstants.h.
|
inline |
Definition at line 45 of file DXILConstants.h.
| void llvm::dxil::WriteDXILToFile | ( | Module & | M, |
| raw_ostream & | Out ) |
Write the specified module to the specified raw output stream.
Write the specified module to the specified output stream.
For streams where it matters, the given stream should be in "binary" mode.
Definition at line 405 of file DXILBitcodeWriter.cpp.
References llvm::SmallVectorTemplateCommon< T, typename >::begin(), llvm::BWH_HeaderSize, collectDXILDebugInfo(), llvm::dwarf_linker::DebugInfo, llvm::SmallVectorTemplateCommon< T, typename >::empty(), llvm::SmallVectorTemplateCommon< T, typename >::front(), llvm::SmallVectorImpl< T >::insert(), llvm::SmallVectorImpl< T >::reserve(), llvm::SmallVectorTemplateCommon< T, typename >::size(), llvm::raw_ostream::write(), and llvm::dxil::BitcodeWriter::writeModule().