[llvm] [HLSL] Add descriptor table metadata parsing (PR #142492)
Justin Bogner via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 19 20:54:20 PDT 2025
================
@@ -279,6 +438,22 @@ static bool validate(LLVMContext *Ctx, const mcdxbc::RootSignatureDesc &RSD) {
}
break;
}
+ case llvm::to_underlying(dxbc::RootParameterType::DescriptorTable): {
+ const mcdxbc::DescriptorTable &Table =
+ RSD.ParametersContainer.getDescriptorTable(Info.Location);
+ for (const dxbc::RTS0::v2::DescriptorRange &Range : Table) {
+ if (!verifyRangeType(Range.RangeType))
+ return reportValueError(Ctx, "RangeType", Range.RangeType);
+
+ if (!verifyRegisterSpace(Range.RegisterSpace))
+ return reportValueError(Ctx, "RegisterSpace", Range.RegisterSpace);
+
+ if (!verifyDescriptorRangeFlag(RSD.Version, Range.RangeType,
+ Range.Flags))
+ return reportValueError(Ctx, "DescriptorFlag", Range.Flags);
----------------
bogner wrote:
Should this differentiate from non-range DescriptorFlag?
```suggestion
return reportValueError(Ctx, "DescriptorRangeFlag", Range.Flags);
```
https://github.com/llvm/llvm-project/pull/142492
More information about the llvm-commits
mailing list