KhronosGroup / KhronosGroup/SPIRV-Tools
spirv-val: structure with variable pointer member
- Dominant language
- C++
- Stars
- 1.4k
- Forks
- 709
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 28
Description
`spirv-val` invalidated a fuzzed shader because `OpCompositeExtract` was extracting a variable pointer from a structure. The result id was going to be used in a `OpStore` instruction. So, `spir-val` logged `OpStore Pointer is not a logical pointer.`
Contributor guide
Research direction
Start at the spirv-val validation path for OpCompositeExtract results used by OpStore, using the issue's variable-pointer structure scenario as the reproduction target. Determine whether the validator should accept this pointer flow or report a different error; done means the fuzzed shader is handled with correct validation behavior and a regression test covers it.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- compilers
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100