KhronosGroup / KhronosGroup/SPIRV-Tools

spirv-fuzz: Wrap non-single-entry-single-exit regions in selection contructs

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

Description

Currently, `TransformationWrapRegionInSelection` only supports single-entry-single-exit regions of blocks. This means that the transformation doesn't support early returns from the function, `OpKill` and `OpUnreachable` instructions etc. Consider removing this requirement.

Contributor guide

Open the contributing guide

Research direction

Start by reading the TransformationWrapRegionInSelection implementation and its existing handling of single-entry-single-exit block regions. Determine how the transformation should support early function returns, OpKill, and OpUnreachable instructions. Done means the single-entry-single-exit requirement is removed while these non-single-entry-single-exit regions are supported.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.