LLVM 20.0.0git
|
#include "llvm/Analysis/DXILResource.h"
Public Member Functions | |
ResourceInfo (dxil::ResourceClass RC, dxil::ResourceKind Kind, Value *Symbol, StringRef Name) | |
bool | isUAV () const |
bool | isCBuffer () const |
bool | isSampler () const |
bool | isStruct () const |
bool | isTyped () const |
bool | isFeedback () const |
bool | isMultiSample () const |
void | bind (uint32_t RecordID, uint32_t Space, uint32_t LowerBound, uint32_t Size) |
void | setUAV (bool GloballyCoherent, bool HasCounter, bool IsROV) |
void | setCBuffer (uint32_t Size) |
void | setSampler (dxil::SamplerType Ty) |
void | setStruct (uint32_t Stride, MaybeAlign Alignment) |
void | setTyped (dxil::ElementType ElementTy, uint32_t ElementCount) |
void | setFeedback (dxil::SamplerFeedbackType Type) |
void | setMultiSample (uint32_t Count) |
bool | operator== (const ResourceInfo &RHS) const |
MDTuple * | getAsMetadata (LLVMContext &Ctx) const |
ResourceBinding | getBinding () const |
std::pair< uint32_t, uint32_t > | getAnnotateProps () const |
void | print (raw_ostream &OS) const |
Definition at line 27 of file DXILResource.h.
|
inline |
Definition at line 121 of file DXILResource.h.
|
inline |
Definition at line 134 of file DXILResource.h.
References Size.
|
static |
Definition at line 320 of file DXILResource.cpp.
References llvm::dxil::CBuffer, setCBuffer(), and Size.
|
static |
Definition at line 301 of file DXILResource.cpp.
References llvm::dxil::FeedbackTexture2D, setFeedback(), setUAV(), and llvm::dxil::UAV.
|
static |
Definition at line 311 of file DXILResource.cpp.
References llvm::dxil::FeedbackTexture2DArray, setFeedback(), setUAV(), and llvm::dxil::UAV.
Definition at line 421 of file DXILResource.cpp.
References CBufferSize, llvm::dxil::Comparison, Feedback, if(), isCBuffer(), isFeedback(), isMultiSample(), isSampler(), isStruct(), isTyped(), isUAV(), SamplerTy, Struct, llvm::to_underlying(), Typed, and UAVFlags.
MDTuple * ResourceInfo::getAsMetadata | ( | LLVMContext & | Ctx | ) | const |
Definition at line 359 of file DXILResource.cpp.
References CBufferSize, llvm::dxil::ElementType, llvm::SmallVectorBase< Size_T >::empty(), Feedback, llvm::ConstantAsMetadata::get(), llvm::MDNode::get(), llvm::MDString::get(), llvm::ValueAsMetadata::get(), llvm::Type::getInt1Ty(), llvm::Type::getInt32Ty(), llvm::Constant::getIntegerValue(), isCBuffer(), isFeedback(), isMultiSample(), isSampler(), isStruct(), isTyped(), isUAV(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::dxil::SamplerFeedbackKind, SamplerTy, Struct, llvm::dxil::StructuredBufferStride, llvm::to_underlying(), Typed, and UAVFlags.
|
inline |
Definition at line 219 of file DXILResource.h.
bool ResourceInfo::isCBuffer | ( | ) | const |
Definition at line 153 of file DXILResource.cpp.
References llvm::dxil::CBuffer.
Referenced by getAnnotateProps(), getAsMetadata(), operator==(), print(), and setCBuffer().
bool ResourceInfo::isFeedback | ( | ) | const |
Definition at line 190 of file DXILResource.cpp.
References llvm::dxil::FeedbackTexture2D, and llvm::dxil::FeedbackTexture2DArray.
Referenced by getAnnotateProps(), getAsMetadata(), operator==(), print(), and setFeedback().
bool ResourceInfo::isMultiSample | ( | ) | const |
Definition at line 195 of file DXILResource.cpp.
References llvm::dxil::Texture2DMS, and llvm::dxil::Texture2DMSArray.
Referenced by getAnnotateProps(), getAsMetadata(), operator==(), print(), setMultiSample(), SRV(), and UAV().
bool ResourceInfo::isSampler | ( | ) | const |
Definition at line 155 of file DXILResource.cpp.
References llvm::dxil::Sampler.
Referenced by getAnnotateProps(), getAsMetadata(), operator==(), and print().
bool ResourceInfo::isStruct | ( | ) | const |
Definition at line 157 of file DXILResource.cpp.
References llvm::dxil::StructuredBuffer.
Referenced by getAnnotateProps(), getAsMetadata(), operator==(), print(), setStruct(), SRV(), and UAV().
bool ResourceInfo::isTyped | ( | ) | const |
Definition at line 161 of file DXILResource.cpp.
References llvm::dxil::CBuffer, llvm::dxil::FeedbackTexture2D, llvm::dxil::FeedbackTexture2DArray, llvm::dxil::Invalid, llvm_unreachable, llvm::dxil::NumEntries, llvm::dxil::RawBuffer, llvm::dxil::RTAccelerationStructure, llvm::dxil::Sampler, llvm::dxil::StructuredBuffer, llvm::dxil::TBuffer, llvm::dxil::Texture1D, llvm::dxil::Texture1DArray, llvm::dxil::Texture2D, llvm::dxil::Texture2DArray, llvm::dxil::Texture2DMS, llvm::dxil::Texture2DMSArray, llvm::dxil::Texture3D, llvm::dxil::TextureCube, llvm::dxil::TextureCubeArray, and llvm::dxil::TypedBuffer.
Referenced by getAnnotateProps(), getAsMetadata(), operator==(), print(), setTyped(), SRV(), and UAV().
bool ResourceInfo::isUAV | ( | ) | const |
Definition at line 151 of file DXILResource.cpp.
References llvm::dxil::UAV.
Referenced by getAnnotateProps(), getAsMetadata(), operator==(), print(), and setUAV().
bool ResourceInfo::operator== | ( | const ResourceInfo & | RHS | ) | const |
Definition at line 334 of file DXILResource.cpp.
References assert(), CBufferSize, Feedback, isCBuffer(), isFeedback(), isMultiSample(), isSampler(), isStruct(), isTyped(), isUAV(), llvm::dxil::RawBuffer, RHS, SamplerTy, Struct, Typed, and UAVFlags.
void ResourceInfo::print | ( | raw_ostream & | OS | ) | const |
Definition at line 463 of file DXILResource.cpp.
References CBufferSize, Feedback, getElementTypeName(), getResourceClassName(), getResourceKindName(), getSamplerFeedbackTypeName(), getSamplerTypeName(), isCBuffer(), isFeedback(), isMultiSample(), isSampler(), isStruct(), isTyped(), isUAV(), OS, llvm::Value::printAsOperand(), SamplerTy, Struct, Typed, and UAVFlags.
|
static |
Definition at line 210 of file DXILResource.cpp.
References llvm::dxil::RawBuffer, and llvm::dxil::SRV.
|
static |
Definition at line 257 of file DXILResource.cpp.
References llvm::dxil::RawBuffer, setUAV(), and llvm::dxil::UAV.
|
static |
Definition at line 264 of file DXILResource.cpp.
References setStruct(), setUAV(), llvm::dxil::StructuredBuffer, and llvm::dxil::UAV.
|
static |
Definition at line 276 of file DXILResource.cpp.
References setMultiSample(), setTyped(), setUAV(), llvm::dxil::Texture2DMS, and llvm::dxil::UAV.
|
static |
Definition at line 288 of file DXILResource.cpp.
References setMultiSample(), setTyped(), setUAV(), llvm::dxil::Texture2DMSArray, and llvm::dxil::UAV.
|
static |
Definition at line 327 of file DXILResource.cpp.
References llvm::dxil::Sampler, SamplerTy, and setSampler().
|
inline |
Definition at line 147 of file DXILResource.h.
References assert(), CBufferSize, isCBuffer(), and Size.
Referenced by CBuffer().
|
inline |
Definition at line 162 of file DXILResource.h.
References assert(), Feedback, and isFeedback().
Referenced by FeedbackTexture2D(), and FeedbackTexture2DArray().
|
inline |
Definition at line 166 of file DXILResource.h.
References assert(), and isMultiSample().
Referenced by RWTexture2DMS(), RWTexture2DMSArray(), Texture2DMS(), and Texture2DMSArray().
|
inline |
|
inline |
Definition at line 152 of file DXILResource.h.
References assert(), isStruct(), llvm::Log2(), and Struct.
Referenced by RWStructuredBuffer(), and StructuredBuffer().
|
inline |
Definition at line 157 of file DXILResource.h.
References assert(), isTyped(), and Typed.
Referenced by RWTexture2DMS(), RWTexture2DMSArray(), SRV(), Texture2DMS(), Texture2DMSArray(), and UAV().
Definition at line 141 of file DXILResource.h.
References assert(), isUAV(), and UAVFlags.
Referenced by FeedbackTexture2D(), FeedbackTexture2DArray(), RWRawBuffer(), RWStructuredBuffer(), RWTexture2DMS(), RWTexture2DMSArray(), and UAV().
|
static |
Definition at line 200 of file DXILResource.cpp.
References assert(), isMultiSample(), isStruct(), isTyped(), setTyped(), and llvm::dxil::SRV.
|
static |
Definition at line 215 of file DXILResource.cpp.
References setStruct(), llvm::dxil::SRV, and llvm::dxil::StructuredBuffer.
|
static |
Definition at line 224 of file DXILResource.cpp.
References setMultiSample(), setTyped(), llvm::dxil::SRV, and llvm::dxil::Texture2DMS.
|
static |
Definition at line 234 of file DXILResource.cpp.
References setMultiSample(), setTyped(), llvm::dxil::SRV, and llvm::dxil::Texture2DMSArray.
|
static |
Definition at line 245 of file DXILResource.cpp.
References assert(), isMultiSample(), isStruct(), isTyped(), setTyped(), setUAV(), and llvm::dxil::UAV.
uint32_t llvm::dxil::ResourceInfo::CBufferSize |
Definition at line 107 of file DXILResource.h.
Referenced by getAnnotateProps(), getAsMetadata(), operator==(), print(), and setCBuffer().
FeedbackInfo llvm::dxil::ResourceInfo::Feedback |
Definition at line 115 of file DXILResource.h.
Referenced by getAnnotateProps(), getAsMetadata(), operator==(), print(), and setFeedback().
dxil::SamplerType llvm::dxil::ResourceInfo::SamplerTy |
Definition at line 108 of file DXILResource.h.
Referenced by getAnnotateProps(), getAsMetadata(), operator==(), print(), Sampler(), and setSampler().
StructInfo llvm::dxil::ResourceInfo::Struct |
Definition at line 113 of file DXILResource.h.
Referenced by getAnnotateProps(), getAsMetadata(), operator==(), print(), and setStruct().
TypedInfo llvm::dxil::ResourceInfo::Typed |
Definition at line 114 of file DXILResource.h.
Referenced by getAnnotateProps(), getAsMetadata(), operator==(), print(), and setTyped().
UAVInfo llvm::dxil::ResourceInfo::UAVFlags |
Definition at line 106 of file DXILResource.h.
Referenced by getAnnotateProps(), getAsMetadata(), operator==(), print(), and setUAV().