llvm / llvm/llvm-project

[HLSL][Vulkan] Correctly validate static constraints around entrypoints

Open
#170,310 0 comments 0 reactions 0 assignees View on GitHub
HLSL SPIR-V
Dominant language
LLVM
Stars
40.5k
Forks
18.7k
PR merge metrics
PR metrics pending

Description

HLSL/Vulkan has a few restrictions like:
- there can be only one push constant statically used per entry point
- there can be no static recursion

Current Sema is not handling those.

Contributor guide

Open the contributing guide

Research direction

Start in Sema, tracing how HLSL/Vulkan entry points are analyzed and where static resource use and recursion are represented. Add coverage for the one-push-constant and no-static-recursion restrictions, then verify the relevant compiler tests reject invalid cases.

Written by the indexing model from the issue text.

Assessment

Domain
compilers
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.