Skip to content

[HLSL] Root Signature semantic analysis - Register Validations #129942

@inbelic

Description

@inbelic

This issue handles the additional semantic analysis of the parsed HLSLRootSignature attribute. This includes generating applicable diagnostics.

The relevant validations that this issue must implement are:

  • Validate that resource ranges don't overlap
  • Ensure that registers are only bound once

See previous validation implementation for reference on range analysis.

Dependent on: #126577 and #126569

AC:

  • Update ParseHLSLRootSignature defined in [HLSL] Generate AST for Root Signatures #119011 to implement semantic validation of HLSLRootSignature
  • Update handleHLSLRootSignature to implement semantic validation of HLSLRootSignature in SemaHLSL.cpp
  • Add thorough testing of correct diagnostics into clang/unittests/Sema/ParseHLSLRootSignatureTest.cpp
  • Add tests for some samples to ensure diagnostics are displayed correctly from HLSL input in AST/HLSL/RootSignatures-AST.hlsl

Metadata

Metadata

Assignees

Labels

HLSLHLSL Language Support

Type

No type

Projects

Status

Active

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions