KhronosGroup / KhronosGroup/SPIRV-Tools

Check universal rule for Aliased decorations

Open
#498 0 comments 0 reactions 0 assignees View on GitHub
component:validation enhancement
Dominant language
C++
Stars
1.4k
Forks
709
Avg merge
1d 22h
Merged PRs (30d)
28

Description

2.16.1 says "The Aliased Decoration can only be applied to intermediate objects that are pointers to non-void types."

Test all cases that can produce a pointer result id in the Logical Addressing model: OpVariable
OpAccessChain
OpInBoundsAccessChain
OpFunctionParameter
OpImageTexelPointer
OpCopyObject

Also, in physical addressing, result of:
Op*AccessChain, OpLoad. Others?

Contributor guide

Open the contributing guide

Research direction

Start with the SPIR-V 2.16.1 rule for Aliased decorations and enumerate pointer-producing results in the Logical Addressing model: OpVariable, OpAccessChain, OpInBoundsAccessChain, OpFunctionParameter, OpImageTexelPointer, and OpCopyObject. Then check Op*AccessChain and OpLoad in physical addressing, determine whether other operations apply, and add coverage for every applicable case.

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
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.