Skip to content
This repository was archived by the owner on Dec 8, 2025. It is now read-only.
This repository was archived by the owner on Dec 8, 2025. It is now read-only.

Add ShaderTrap back-end to gfauto #1160

@afd

Description

@afd

gfauto is currently geared towards generating Amber tests. It would be useful to give it the ability to generate ShaderTrap tests, in order to be able to test GL and GLES drivers.

Currently gfauto has a fuzz_glsl_test file, which has most of the logic for the fuzzing process, and fuzz_spirv_test, which provides the ability to test using spirv-fuzz. fuzz_spirv_test uses quite a lot of the logic in fuzz_glsl_test.

Adding a ShaderTrap back-end without first refactoring could make things rather messy, so I propose the following pathway:

  • Refactor fuzz_glsl_test and fuzz_spirv_test to call them fuzz_glsl_amber_test and fuzz_spirv_amber_test, extracting any common code into a new fuzz_test_util file, so that neither fuzz_glsl_amber_test nor fuzz_spirv_amber_test depends on the other.
  • Add a ShaderTrap back-end in a new file, fuzz_glsl_shadertrap_test.
  • Assess whether the common code in fuzz_test_util should be common to both the Amber and ShaderTrap back-ends. If it is, no action is required. Otherwise think about having a fuzz_amber_test_util file with the Amber-specific common code.

For now, the ShaderTrap back-end will use the existing .json shader job format.

@paulthomson for info.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions