KhronosGroup / KhronosGroup/SPIRV-Registry

Function return uniformity without maximal reconvergence

Open
#338 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
HTML
Stars
149
Forks
99
Avg merge
4d 21h
Merged PRs (30d)
2

Description

With the maximal reconvergence extension, function returns are explicitly marked as reconvergence points. But according to the base spec in section 2.2.5, it is only defined that invocations reconverge at the merge block (assuming control flow was uniform before). So if a function returns inside non-uniform control flow, does the control flow still reconverge at the call site or does it just stay non-uniform for the rest of the program?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing base specification section 2.2.5 alongside the maximal reconvergence extension. Determine the specified behavior for a function return under non-uniform control flow, then record the resolved interpretation in the relevant SPIR-V specification material or issue discussion.

Written by the indexing model from the issue text.

Assessment

Domain
compilers, documentation
Issue type
Documentation
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.