Skip to content

[HLSL] Implement the Root Signature Parser for Descriptor Tables #126569

Closed
@inbelic

Description

@inbelic

This issues handles the implementation of parsing the root signature in its token form into the in-memory representation of RootElements. Specifically, it handles all Descriptor Table related tokens and parses these into the DescriptorTable and DescriptorTableClause struct representation.

This will define all the helper methods of Root Signature Parser needed for the other Root Element types and so it constitutes the "first 90%" of work for implementing the complete parser.

Note that this parser definition will be completely self-contained and can be invoked externally when creating the HLSLRootSignatureAttr

This issue is dependent on #126563

AC:

  • Define the in-memory representation of RootElement, DescriptorTable and DescriptorTableClause in HLSLRootSignatures.h
  • Define RootSignatureParser and provide a public Parse that will take an input RootSignatureLexer and generate a list of RootElements
  • Implement the internal methods and helper methods required to parse the different types of RootElements
  • Add unit testing in ParseHLSLRootSignatureTest.cpp

Metadata

Metadata

Assignees

Labels

HLSLHLSL Language Support

Type

No type

Projects

Status

Closed

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions