[all-commits] [llvm/llvm-project] 676755: Reland "[HLSL][RootSignature] Implement parsing of...

Finn Plummer via All-commits all-commits at lists.llvm.org
Tue Apr 1 14:58:51 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 676755561d5a2f074411ad289fed55c977571a32
      https://github.com/llvm/llvm-project/commit/676755561d5a2f074411ad289fed55c977571a32
  Author: Finn Plummer <canadienfinn at gmail.com>
  Date:   2025-04-01 (Tue, 01 Apr 2025)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Lex/HLSLRootSignatureTokenKinds.def
    M clang/include/clang/Lex/LexHLSLRootSignature.h
    A clang/include/clang/Parse/ParseHLSLRootSignature.h
    M clang/lib/Lex/LexHLSLRootSignature.cpp
    M clang/lib/Parse/CMakeLists.txt
    A clang/lib/Parse/ParseHLSLRootSignature.cpp
    M clang/unittests/CMakeLists.txt
    M clang/unittests/Lex/LexHLSLRootSignatureTest.cpp
    A clang/unittests/Parse/CMakeLists.txt
    A clang/unittests/Parse/ParseHLSLRootSignatureTest.cpp
    A llvm/include/llvm/Frontend/HLSL/HLSLRootSignature.h

  Log Message:
  -----------
  Reland "[HLSL][RootSignature] Implement parsing of a DescriptorTable with empty clauses" (#133958)

This pr relands https://github.com/llvm/llvm-project/pull/133302.

It resolves two issues:
- Linking error during build,
[here](https://github.com/llvm/llvm-project/pull/133302#issuecomment-2767259848).
There was a missing dependency for `clangLex` for the
`ParseHLSLRootSignatureTest.cpp` unit testing. This library was added to
the dependencies to resolve the error. It wasn't caught previously as
the library was transitively linked in most build environments
- Warning of unused declaration,
[here](https://github.com/llvm/llvm-project/pull/133302#issuecomment-2767091368).
There was a usability line in `LexHLSLRootSignature.h` of the form
`using TokenKind = enum RootSignatureToken::Kind` which causes this
error. The declaration is removed from the header file to be used
locally in the `.cpp` files that use it.
Notably, the original pr would also exposed `clang::hlsl::TokenKind` to
everywhere it was included, which had a name clash with
`tok::TokenKind`. This is another motivation to change to the proposed
resolution.

---------

Co-authored-by: Finn Plummer <finnplummer at microsoft.com>



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list