[llvm] [HLSL] Add descriptor table metadata parsing (PR #142492)
Alex Sepkowski via llvm-commits
llvm-commits at lists.llvm.org
Mon Jun 9 16:27:55 PDT 2025
================
@@ -241,6 +328,77 @@ static bool verifyRegisterSpace(uint32_t RegisterSpace) {
static bool verifyDescriptorFlag(uint32_t Flags) { return (Flags & ~0xE) == 0; }
+static bool verifyRangeType(uint32_t Type) {
+ switch (Type) {
+ case llvm::to_underlying(dxbc::DescriptorRangeType::CBV):
+ case llvm::to_underlying(dxbc::DescriptorRangeType::SRV):
+ case llvm::to_underlying(dxbc::DescriptorRangeType::UAV):
+ case llvm::to_underlying(dxbc::DescriptorRangeType::Sampler):
+ return true;
+ };
+
+ return false;
+}
+
+template <typename... FlagTypes>
+static bool isFlagSet(uint32_t Flags, FlagTypes... FlagsToCheck) {
+ return ((Flags & llvm::to_underlying(FlagsToCheck)) | ...) == Flags;
+}
+
+static bool verifyDescriptorRangeFlag(uint32_t Version, uint32_t Type,
+ uint32_t Flags) {
+ bool IsSampler =
----------------
alsepkow wrote:
```suggestion
const bool IsSampler =
```
https://github.com/llvm/llvm-project/pull/142492
More information about the llvm-commits
mailing list