Skip to content
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

Add Vulkan validity checks for OpDecorate and OpMemberDecorate in validator #207

Closed
ghost opened this issue May 9, 2016 · 3 comments
Closed

Comments

@ghost
Copy link

ghost commented May 9, 2016

There is a set of non-trivial constraints in SPIR-V & Vulkan specs regarding decorating variables with:

  • location & binding qualifiers
  • interpolation and patch qualifiers
  • offset and alignment

Especially nested interface blocks / structs / arrays need to follow rules defined in "14.1. Shader Input and Output Interfaces" Vulkan spec chapter to get SPIR-V shaders properly "linked" during pipeline creation.

As there are apps (including glslang - KhronosGroup/glslang#269) misusing the decorations it would be good to have these checked in SPIR-V validator.

@dneto0
Copy link
Collaborator

dneto0 commented May 11, 2016

Agreed. @umar456 is working on the validator. I believe no Vulkan-specific checks have been implemented yet.

@dneto0 dneto0 changed the title Add validity checks for OpDecorate and OpMemberDecorate in validator Add Vulkan validity checks for OpDecorate and OpMemberDecorate in validator Jan 27, 2017
@prideout
Copy link

Note that spvValidate currently operates on a single binary, so I think this issue implies that it should actually take a list of binaries in order to validate consistent decorations, e.g. the outs of a VS should match the ins of a FS.

rjodinchr pushed a commit to rjodinchr/SPIRV-Tools that referenced this issue Jun 22, 2022
Fix OpTypeBufferSurfaceINTEL token description
@s-perron
Copy link
Collaborator

If there are validation rules that are still not being check, please open a new issue. Many new validation rules have been added already. I'm not sure what specifically is still missing.

Validator automation moved this from Ready to start to Done Mar 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Validator
  
Done
Development

No branches or pull requests

4 participants