New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
spirv-val: Disallow stores according to VUID 06924 #5368
base: main
Are you sure you want to change the base?
Conversation
If I understand the CI failures correctly, HLSL-to-SPIR-V translation by glslang and shaderc seems to result in some violations of this VUID, as HLSL allows the construct. Any suggestions what to do here? |
What does glslang do in the GLSL path when you have a local acceleration structure variable? |
GLSL allows acceleration structures (and images/samplers) only as uniforms or function parameters, and glslang diagnoses incorrect uses:
|
Does DXC handle this? I expect this is a case where glslang is missing some legalization optimizations. |
Does this check cases where there is a |
|
Ensure that the validator rejects stores to objects of types `OpTypeSampledImage` and `OpTypeAccelerationStructureKHR`, according to `VUID-StandaloneSpirv-OpTypeImage-06924`. Stores to objects of types `OpTypeImage` and `OpTypeSampler` should be rejected too, but HLSL-to-SPIR-V translation by glslang and shaderc seems to result in some violations; so leave validation of those as future work. Contributes to KhronosGroup#4796 Signed-off-by: Sven van Haastregt <sven.vanhaastregt@arm.com>
To progress on this, I've excluded validation of stores to objects of types |
Ensure that the validator rejects stores to objects of types
OpTypeSampledImage
andOpTypeAccelerationStructureKHR
, accordingto
VUID-StandaloneSpirv-OpTypeImage-06924
.Stores to objects of types
OpTypeImage
andOpTypeSampler
should berejected too, but HLSL-to-SPIR-V translation by glslang and shaderc
seems to result in some violations; so leave validation of those as
future work.
Contributes to #4796