[HLSL] Correct ShaderOp SRV resource states - #8665
Closed
JoeCitizen wants to merge 1 commit into
Closed
Conversation
This was referenced Jul 23, 2026
JoeCitizen
force-pushed
the
linalg-hlk-srv-buffer-flags
branch
2 times, most recently
from
July 29, 2026 22:43
af0ec95 to
2991228
Compare
Create SRV buffers without UAV flags and transition them for both pixel and non-pixel shader access. Use a direct resource-initialization list so the graphics-only pixel state is legal. Assisted-by: GitHub Copilot Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 83725f5d-8e98-4c1d-91ee-ad47629e007b
JoeCitizen
force-pushed
the
linalg-hlk-srv-buffer-flags
branch
from
July 30, 2026 00:25
2991228 to
31ab0dc
Compare
Collaborator
Author
|
Closing for now to avoid running CI on a long series of draft PRs while #8666 is under review. The branch |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
PIXEL_SHADER_RESOURCEto their transition stateWhy
The framework follow-up @tex3d asked for when approving #8366, tracked by #8378:
addSRVBuffercreates read-only buffers, so the UAV flag over-declares them and costs the debug layer its ability to catch a genuine SRV/UAV mismatch. The helper has no knowledge of the consuming stage, so it should advertise the full shader-resource read state.That widening is what pulls in the infrastructure change:
PIXEL_SHADER_RESOURCEis not legal on a COMPUTE list, andCreateResourceswas the only one of fourCreateForDevicecall sites not deriving its list type from the ShaderOp. Test dispatch and draw are unaffected.Validation
Local Release
ExecHLSLTestson WARP, version-matched D3D12Core and d3d12SDKLayers,ExperimentalShaders=*, debug layer enabled. Differential against unmodifiedmainon identical binaries and runtime, compared per test rather than by totals:mainLinAlg::DxilConf_SM610_LinAlg::**BasicTriangleOpTest*No individual result differs. The four failures and one skip are pre-existing runtime gaps that reproduce unchanged on
main.BasicTriangleOpTestexercises the DIRECT-list change on a graphics ShaderOp. No debug layer errors were emitted, and no physical GPU or HLK lab execution is claimed.Refs #7841
Refs #8378
Closes #8684
Assisted-by: GitHub Copilot