[llvm-branch-commits] [llvm] [DirectX] Validating Root flags are denying shader stage (PR #153287)
Finn Plummer via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Mon Sep 15 13:53:05 PDT 2025
================
@@ -225,7 +237,9 @@ static void validateRootSignature(Module &M,
Builder.findOverlapping(ReportedBinding);
reportOverlappingRegisters(M, ReportedBinding, Overlaping);
});
+
const hlsl::BoundRegs &BoundRegs = Builder.takeBoundRegs();
+ bool HasBindings = false;
----------------
inbelic wrote:
IIUC I think the logic below could be simplified a bit to something like:
```c++
if (!Reg) {
reportRegNotBound(M, RC, Binding);
continue;
}
bool IsRootSRVOrUAV = RC == ResourceClass::SRV || RC == ResourceClass::UAV;
bool IsRawOrStructuredBuffer = RK != ResourceKind::RawBuffer && RK != ResourceKind::StructuredBuffer;
if (IsRootSRVOrUAV && !IsRawOrStructuredBuffer) {
reportInvalidHandleTyError(M, RC, Binding);
continue;
}
HasBindings = true;
```
https://github.com/llvm/llvm-project/pull/153287
More information about the llvm-branch-commits
mailing list