Skip to content

[HLSL] Add support for Root Signature versions #126557

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
7 tasks
inbelic opened this issue Feb 10, 2025 · 0 comments · May be fixed by #142491
Open
7 tasks

[HLSL] Add support for Root Signature versions #126557

inbelic opened this issue Feb 10, 2025 · 0 comments · May be fixed by #142491
Assignees
Labels
HLSL HLSL Language Support

Comments

@inbelic
Copy link
Contributor

inbelic commented Feb 10, 2025

As introduced here, we now need a way to specify and handle the various root signature versions in the front-end so that we can generate the correct LLVM IR metadata that complies with what the backend expects.

This change requires that we add a new flag to the compiler to let the user manually specify a root signature version, update the clang attribute to retain the version info, update some validations in the parser that is version dependent and to correctly emit the version as part of the root signature pair metadata.

This change is dependent on #126569, #119014 and #119011

AC:

  • Update Options.td to allow for the -hlsl-rootsig-ver flag to let users specify the flag
  • Use AdditionalMembers of HLSLRootSignatureAttr to store the version enum
  • Update the instantiation in SemaHLSL to set the version
  • Update the parsing/semantic analysis of the relevant flags to validate based on the version
  • Update the metadata generation of the root signature function pair to include the version
  • Add new unit tests for the new version specific validation diagnostics
  • Update previous tests to account for the new attribute
@inbelic inbelic self-assigned this Feb 10, 2025
@inbelic inbelic added HLSL HLSL Language Support and removed new issue labels Feb 10, 2025
@inbelic inbelic moved this to Planning in HLSL Support Feb 10, 2025
@damyanp damyanp moved this from Planning to Ready in HLSL Support Feb 11, 2025
@inbelic inbelic moved this from Ready to Active in HLSL Support Apr 10, 2025
@inbelic inbelic moved this from Active to Ready in HLSL Support Apr 28, 2025
@inbelic inbelic moved this from Ready to Active in HLSL Support May 22, 2025
@inbelic inbelic linked a pull request Jun 2, 2025 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
HLSL HLSL Language Support
Projects
Status: Active
Development

Successfully merging a pull request may close this issue.

2 participants