KhronosGroup / KhronosGroup/SPIRV-Tools

spirv-fuzz: Adjust the limit on the maximum number of parameters

Open
#3,424 1 comment 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

`TransformationAddParameters` randomly adds new parameters to the function. However, we must make sure that we don't exceed the universal limit on this quantity which is `255` as of today (section 2.17 is SPIR-V spec). We also wouldn't want to end up having all functions with the `255` parameters. Thus, we are using a custom limit - `128` in `FuzzerContext`. Consider whether there is a better alternative for this number.

Contributor guide

Open the contributing guide

Research direction

Start by reading TransformationAddParameters and FuzzerContext to understand how the current limit of 128 is applied. Compare possible alternatives against the SPIR-V universal limit of 255 and the goal of avoiding uniformly large parameter counts; the work is done when a justified limit strategy is implemented and covered by relevant tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers, testing-qa
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.