KhronosGroup / KhronosGroup/SPIRV-Tools

Add a custom hook/extension mechanism for user defined passes

Open
#6,781 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
1.4k
Forks
709
Avg merge
1d 22h
Merged PRs (30d)
28

Description

We've had requests from some ISVs to enable a way to hook new passes for validation and optimization without having to fork the codebase or add patches to the main codebase. Having a way to do this would allow some ISVs to more frequently update their versions of spirv-tools, by not requiring patch modifications, and instead making it more "plug'n'play". This is not a small effort, but recording it here to track its viability, and to focus discussion.

Contributor guide

Open the contributing guide

Research direction

The issue names no files, tests, or entry points. Start by reviewing how SPIR-V Tools currently represents validation and optimization passes, then assess the proposed extension mechanism with the ongoing discussion; done means a concrete, agreed design for user-defined passes and its viability.

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
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.