[clang] [llvm] [HLSL][RootSignature] Implement validation of resource ranges for `RootDescriptors` (PR #140962)

2025-06-20 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/140962 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add `hlsl-rootsig-ver` option to specify root signature version (PR #144813)

2025-06-19 Thread Finn Plummer via cfe-commits
inbelic wrote: Going through the commits 1 by 1 should be easier to read then from top to bottom of this diff. https://github.com/llvm/llvm-project/pull/144813 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [llvm] [HLSL][RootSignature] Implement validation of resource ranges for `RootDescriptors` (PR #140962)

2025-06-19 Thread Finn Plummer via cfe-commits
@@ -1068,10 +1069,139 @@ void SemaHLSL::ActOnFinishRootSignatureDecl( SemaRef.getASTContext(), /*DeclContext=*/SemaRef.CurContext, Loc, DeclIdent, Elements); + // Perform validation of constructs here + if (handleRootSignatureDecl(SignatureDecl, Loc)) +return

[clang] [llvm] [HLSL][RootSignature] Implement validation of resource ranges for `RootDescriptors` (PR #140962)

2025-06-19 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/140962 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Implement validation of resource ranges for `RootDescriptors` (PR #140962)

2025-06-19 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140962 >From 6ee2563c4b2d69b252467b9896a1d8b943af384d Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Tue, 20 May 2025 19:47:29 + Subject: [PATCH 1/2] rebased original version --- .../clang/Basic/DiagnosticSema

[clang] [llvm] [HLSL][RootSignature] Implement validation of resource ranges for `RootDescriptors` (PR #140962)

2025-06-19 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/140962 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add `hlsl-rootsig-ver` option to specify root signature version (PR #144813)

2025-06-18 Thread Finn Plummer via cfe-commits
https://github.com/inbelic created https://github.com/llvm/llvm-project/pull/144813 This pr provides the ability to specify the root signature version as a compiler option and to retain this in the root signature decl. It also updates the methods to serialize the version when dumping the decl

[clang] [llvm] [HLSL][RootSignature] Plug-in serialization and add full sample testcase (PR #144769)

2025-06-18 Thread Finn Plummer via cfe-commits
https://github.com/inbelic created https://github.com/llvm/llvm-project/pull/144769 This pr extends `dumpRootElements` to invoke the print methods of all `RootElement`s now that they are all implemented. Extends the `RootSignatures-AST.hlsl` testcase to have a root element of each type being

[clang] [llvm] [NFC][HLSL][DXIL] Move D3D12.h enums and flags to DXILABI (PR #143041)

2025-06-18 Thread Finn Plummer via cfe-commits
inbelic wrote: I will close this pr and create a new one to target once the StaticSampler and DescriptorTable back-end parsing is created. https://github.com/llvm/llvm-project/pull/143041 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https:/

[clang] [llvm] [NFC][HLSL][DXIL] Move D3D12.h enums and flags to DXILABI (PR #143041)

2025-06-18 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/143041 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][HLSL] Move Sema work from `ParseMicrosoftRootSignatureAttributeArgs` (PR #143184)

2025-06-17 Thread Finn Plummer via cfe-commits
inbelic wrote: @AaronBallman Thanks a lot for pointing it out and for the reviews, much appreciated https://github.com/llvm/llvm-project/pull/143184 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinf

[clang] [NFC][HLSL] Move Sema work from `ParseMicrosoftRootSignatureAttributeArgs` (PR #143184)

2025-06-17 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/143184 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][HLSL] Move Sema work from `ParseMicrosoftRootSignatureAttributeArgs` (PR #143184)

2025-06-17 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/143184 >From f8b165eecd613a4e9dc1576f5087e37ec74034e5 Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Fri, 6 Jun 2025 17:37:12 + Subject: [PATCH 1/7] define ActOnStartRootSignatureDecl --- clang/include/clang/S

[clang] [NFC][HLSL] Move Sema work from `ParseMicrosoftRootSignatureAttributeArgs` (PR #143184)

2025-06-17 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/143184 >From f8b165eecd613a4e9dc1576f5087e37ec74034e5 Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Fri, 6 Jun 2025 17:37:12 + Subject: [PATCH 1/7] define ActOnStartRootSignatureDecl --- clang/include/clang/S

[clang] [llvm] Reland "[HLSL][RootSignature] Implement serialization of RootConstants and RootFlags" (PR #143019)

2025-06-16 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/143019 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][HLSL] Move Sema work from `ParseMicrosoftRootSignatureAttributeArgs` (PR #143184)

2025-06-12 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/143184 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][HLSL] Move Sema work from `ParseMicrosoftRootSignatureAttributeArgs` (PR #143184)

2025-06-12 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/143184 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [NFC][HLSL][DXIL] Move D3D12.h enums and flags to DXILABI (PR #143041)

2025-06-10 Thread Finn Plummer via cfe-commits
https://github.com/inbelic converted_to_draft https://github.com/llvm/llvm-project/pull/143041 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [NFC][HLSL][DXIL] Move D3D12.h enums and flags to DXILABI (PR #143041)

2025-06-10 Thread Finn Plummer via cfe-commits
inbelic wrote: I will mark this as draft until I re-update it to use the values from DXContainer.h. Some of the enums are not yet defined, so either we will wait until they are defined to refactor, or, we can define them here. https://github.com/llvm/llvm-project/pull/143041 __

[clang] [NFC][HLSL] Move Sema work from `ParseMicrosoftRootSignatureAttributeArgs` (PR #143184)

2025-06-09 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/143184 >From f8b165eecd613a4e9dc1576f5087e37ec74034e5 Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Fri, 6 Jun 2025 17:37:12 + Subject: [PATCH 1/5] define ActOnStartRootSignatureDecl --- clang/include/clang/S

[clang] [llvm] [NFC][HLSL][DXIL] Move D3D12.h enums and flags to DXILABI (PR #143041)

2025-06-09 Thread Finn Plummer via cfe-commits
@@ -99,6 +99,128 @@ enum class SamplerFeedbackType : uint32_t { const unsigned MinWaveSize = 4; const unsigned MaxWaveSize = 128; +// Definition of the various d3d12.h enumerations and flags. The definitions of +// all values here correspond to their description in the d3d12.h

[clang] [llvm] [NFC][HLSL][DXIL] Move D3D12.h enums and flags to DXILABI (PR #143041)

2025-06-09 Thread Finn Plummer via cfe-commits
@@ -99,6 +99,128 @@ enum class SamplerFeedbackType : uint32_t { const unsigned MinWaveSize = 4; const unsigned MaxWaveSize = 128; +// Definition of the various d3d12.h enumerations and flags. The definitions of +// all values here correspond to their description in the d3d12.h

[clang] [NFC][HLSL] Move Sema work from `ParseMicrosoftRootSignatureAttributeArgs` (PR #143184)

2025-06-09 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/143184 >From f8b165eecd613a4e9dc1576f5087e37ec74034e5 Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Fri, 6 Jun 2025 17:37:12 + Subject: [PATCH 1/6] define ActOnStartRootSignatureDecl --- clang/include/clang/S

[clang] [llvm] [NFC][HLSL][DXIL] Move D3D12.h enums and flags to DXILABI (PR #143041)

2025-06-09 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/143041 >From e9d782af7335af47b83db3bffcc6b91a6465ee6f Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 5 Jun 2025 18:40:36 + Subject: [PATCH 1/6] move defs to DXILABI --- .../llvm/Frontend/HLSL/HLSLRootSign

[clang] [NFC][HLSL] Move Sema work from `ParseMicrosoftRootSignatureAttributeArgs` (PR #143184)

2025-06-09 Thread Finn Plummer via cfe-commits
@@ -3619,6 +3619,19 @@ class Sema final : public SemaBase { SourceLocation NameLoc, bool IsTemplateTypeArg); + /// Computes the unique Root Signature identifier from the given signature, + /// then l

[clang] [llvm] [NFC][HLSL][DXIL] Move D3D12.h enums and flags to DXILABI (PR #143041)

2025-06-06 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/143041 >From e9d782af7335af47b83db3bffcc6b91a6465ee6f Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 5 Jun 2025 18:40:36 + Subject: [PATCH 1/6] move defs to DXILABI --- .../llvm/Frontend/HLSL/HLSLRootSign

[clang] [llvm] Reland "[HLSL][RootSignature] Implement serialization of RootConstants and RootFlags" (PR #143019)

2025-06-06 Thread Finn Plummer via cfe-commits
inbelic wrote: Based on feedback here: https://github.com/llvm/llvm-project/pull/143198. I will address this feedback before this can be merged. https://github.com/llvm/llvm-project/pull/143019 ___ cfe-commits mailing list cfe-commits@lists.llvm.org h

[clang] [llvm] Reland "[HLSL][RootSignature] Implement serialization of RootConstants and RootFlags" (PR #143019)

2025-06-06 Thread Finn Plummer via cfe-commits
https://github.com/inbelic converted_to_draft https://github.com/llvm/llvm-project/pull/143019 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [NFC][HLSL][DXIL] Move D3D12.h enums and flags to DXILABI (PR #143041)

2025-06-06 Thread Finn Plummer via cfe-commits
@@ -99,6 +99,132 @@ enum class SamplerFeedbackType : uint32_t { const unsigned MinWaveSize = 4; const unsigned MaxWaveSize = 128; +// Definition of the various d3d12.h enumerations and flags. The definitions of +// all values here correspond to their description in the d3d12.h

[clang] [HLSL] Move `Sema` work out of `Parser::ParseMicrosoftRootSignatureAttributeArgs` (PR #143184)

2025-06-06 Thread Finn Plummer via cfe-commits
https://github.com/inbelic created https://github.com/llvm/llvm-project/pull/143184 This separates semantic analysis from parsing by moving `RootSignatureDecl` creation, scope storage, and lookup logic into `Sema`. For more context see: https://github.com/llvm/llvm-project/issues/142834. - De

[clang] [NFC][HLSL] Move Sema work from `ParseMicrosoftRootSignatureAttributeArgs` (PR #143184)

2025-06-06 Thread Finn Plummer via cfe-commits
@@ -3619,6 +3619,19 @@ class Sema final : public SemaBase { SourceLocation NameLoc, bool IsTemplateTypeArg); + /// Computes the unique Root Signature identifier from the given signature, -

[clang] [NFC][HLSL] Move Sema work from `ParseMicrosoftRootSignatureAttributeArgs` (PR #143184)

2025-06-06 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/143184 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [NFC][HLSL][DXIL] Move D3D12.h enums and flags to DXILABI (PR #143041)

2025-06-05 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/143041 >From e9d782af7335af47b83db3bffcc6b91a6465ee6f Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 5 Jun 2025 18:40:36 + Subject: [PATCH 1/4] move defs to DXILABI --- .../llvm/Frontend/HLSL/HLSLRootSign

[clang] [llvm] [NFC][HLSL][DXIL] Move D3D12.h enums and flags to DXILABI (PR #143041)

2025-06-05 Thread Finn Plummer via cfe-commits
https://github.com/inbelic created https://github.com/llvm/llvm-project/pull/143041 The `DXILABI.h` is intended to contain definitions of constants and enums that are required to remain stable for the sake of interpreting or constructing DXIL binaries. The enums and flags corresponding to tho

[clang] [llvm] Reland "[HLSL][RootSignature] Implement serialization of RootConstants and RootFlags" (PR #143019)

2025-06-05 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/143019 >From 2f7da28354a3c892ea11d1e2136a2a965996631a Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 29 May 2025 10:31:08 -0700 Subject: [PATCH 1/3] [HLSL][RootSignature] Implement serialization of `RootConsta

[clang] [llvm] Reland "[HLSL][RootSignature] Implement serialization of RootConstants and RootFlags" (PR #143019)

2025-06-05 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/143019 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Reland "[HLSL][RootSignature] Implement serialization of RootConstants and RootFlags" (PR #143019)

2025-06-05 Thread Finn Plummer via cfe-commits
https://github.com/inbelic created https://github.com/llvm/llvm-project/pull/143019 This relands #141130. The initial commit uncovered that we are missing the correct linking of FrontendHLSL into clang/lib/Parse and clang/lib/unittests/Parse. This change addreses this my linking them accordin

[clang] [llvm] [HLSL][RootSignature] Metadata generation of StaticSampler (PR #142642)

2025-06-05 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/142642 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Define and integrate rootsig clang attr and decl (PR #137690)

2025-06-04 Thread Finn Plummer via cfe-commits
@@ -5311,6 +5313,90 @@ void Parser::ParseMicrosoftUuidAttributeArgs(ParsedAttributes &Attrs) { } } +void Parser::ParseMicrosoftRootSignatureAttributeArgs(ParsedAttributes &Attrs) { + assert(Tok.is(tok::identifier) && + "Expected an identifier to denote which MS at

[clang] [llvm] [HLSL][RootSignature] Metadata generation of StaticSampler (PR #142642)

2025-06-03 Thread Finn Plummer via cfe-commits
https://github.com/inbelic created https://github.com/llvm/llvm-project/pull/142642 Implements metadata generation of a Root Signature from its in-memory representation. It follows the same style as: https://github.com/llvm/llvm-project/pull/139633. This pr handles `StaticSamplers`. It also h

[clang] [llvm] [NFC][RootSignature] Move RootSignature util functions (PR #142491)

2025-06-03 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/142491 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [NFC][RootSignature] Move RootSignature util functions (PR #142491)

2025-06-03 Thread Finn Plummer via cfe-commits
@@ -0,0 +1,65 @@ +//===- HLSLRootSignatureUtils.h - HLSL Root Signature helpers -===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apa

[clang] [llvm] [NFC][RootSignature] Move RootSignature util functions (PR #142491)

2025-06-02 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/142491 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [NFC][RootSignature] Move RootSignature util functions (PR #142491)

2025-06-02 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/142491 >From 1c8b81ec00e5403cc94a7f12275f0b76f7310b5d Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Mon, 2 Jun 2025 21:35:39 + Subject: [PATCH 1/3] [NFC][RootSignature] Let Root Signature struct defs have own

[clang] [llvm] [NFC][RootSignature] Move RootSignature util functions (PR #142491)

2025-06-02 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/142491 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [NFC][RootSignature] Move RootSignature util functions (PR #142491)

2025-06-02 Thread Finn Plummer via cfe-commits
https://github.com/inbelic created https://github.com/llvm/llvm-project/pull/142491 `HLSLRootSignature.h` was originally created to hold the struct definitions of an `llvm::hlsl::rootsig::RootElement` and some helper functions for it. However, there many users of the structs that don't require

[clang] [llvm] Reland "[HLSL][RootSignature] Add parsing of filter enum for StaticSampler" (PR #142441)

2025-06-02 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/142441 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Reland "[HLSL][RootSignature] Add parsing of filter enum for StaticSampler" (PR #142441)

2025-06-02 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/142441 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Reland "[HLSL][RootSignature] Add parsing of filter enum for StaticSampler" (PR #142441)

2025-06-02 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/142441 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Reland "[HLSL][RootSignature] Add parsing of filter enum for StaticSampler" (PR #142441)

2025-06-02 Thread Finn Plummer via cfe-commits
https://github.com/inbelic created https://github.com/llvm/llvm-project/pull/142441 This relands https://github.com/llvm/llvm-project/pull/140294. The initial naming of the enum class Filter and the Filter struct member causes ambiguity when compiling gcc. This change addresses this my renami

[clang] [llvm] [HLSL][RootSignature] Add space, visibility enums to StaticSampler (PR #140306)

2025-05-30 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/140306 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Metadata generation of RootFlags, RootConstants, RootDescriptors (PR #142010)

2025-05-30 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/142010 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add space, visibility enums to StaticSampler (PR #140306)

2025-05-30 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140306 >From 88af7ce4ebcc09932c292c8463e3d4eca4c9b839 Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Fri, 16 May 2025 20:33:09 + Subject: [PATCH] [HLSL][RootSignature] Add space, visibility enums to StaticSampl

[clang] [llvm] [HLSL][RootSignature] Add space, visibility enums to StaticSampler (PR #140306)

2025-05-30 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/140306 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Metadata generation of RootFlags, RootConstants, RootDescriptors (PR #142010)

2025-05-30 Thread Finn Plummer via cfe-commits
@@ -187,6 +193,46 @@ MDNode *MetadataBuilder::BuildRootSignature() { return MDNode::get(Ctx, GeneratedMetadata); } +MDNode *MetadataBuilder::BuildRootFlags(const RootFlags &Flags) { + IRBuilder<> Builder(Ctx); + return MDNode::get(Ctx, { + MDSt

[clang] [llvm] [HLSL][RootSignature] Metadata generation of RootFlags, RootConstants, RootDescriptors (PR #142010)

2025-05-30 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/142010 >From 34733d6f150360984a01b69ac22313f3bdf4b373 Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Mon, 26 May 2025 21:51:36 + Subject: [PATCH 1/9] nfc: rename matches --- clang/test/CodeGenHLSL/RootSignatur

[clang] [llvm] [HLSL][RootSignature] Add parsing of remaining enums to StaticSampler (PR #140305)

2025-05-30 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/140305 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing of remaining enums to StaticSampler (PR #140305)

2025-05-30 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140305 >From 94c9f29325d0609b896ac127bb6279aecc1fd36a Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Fri, 16 May 2025 19:53:17 + Subject: [PATCH 1/7] pre-req: add keywords --- .../clang/Lex/HLSLRootSignatureTo

[clang] [llvm] [HLSL][RootSignature] Add parsing of filter enum for StaticSampler (PR #140294)

2025-05-29 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140294 >From 8889c7f28b29a1afc0d41da645216efeda30c991 Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Fri, 16 May 2025 17:45:24 + Subject: [PATCH 1/3] pre-req: add keywords --- .../clang/Lex/HLSLRootSignatureTo

[clang] [llvm] [HLSL][RootSignature] Add parsing of filter enum for StaticSampler (PR #140294)

2025-05-29 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/140294 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing of address params in StaticSampler (PR #140293)

2025-05-29 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/140293 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing of address params in StaticSampler (PR #140293)

2025-05-29 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140293 >From 1eabfe2fe30eaed793bdcf03f0e58d1e0c14548f Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Fri, 16 May 2025 16:38:33 + Subject: [PATCH 1/4] pre-req: add keywords --- .../clang/Lex/HLSLRootSignatureTo

[clang] [llvm] [HLSL][RootSignature] Add parsing of address params in StaticSampler (PR #140293)

2025-05-29 Thread Finn Plummer via cfe-commits
@@ -252,6 +254,10 @@ TEST_F(ParseHLSLRootSignatureTest, ValidParseStaticSamplerTest) { ASSERT_TRUE(std::holds_alternative(Elem)); ASSERT_EQ(std::get(Elem).Reg.ViewType, RegisterType::SReg); ASSERT_EQ(std::get(Elem).Reg.Number, 0u); + ASSERT_EQ(std::get(Elem).AddressU, T

[clang] [llvm] [HLSL][RootSignature] Implement `ResourceRange` as an `IntervalMap` (PR #140957)

2025-05-29 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/140957 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Metadata generation of RootFlags, RootConstants, RootDescriptors (PR #142010)

2025-05-29 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/142010 >From 34733d6f150360984a01b69ac22313f3bdf4b373 Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Mon, 26 May 2025 21:51:36 + Subject: [PATCH 1/5] nfc: rename matches --- clang/test/CodeGenHLSL/RootSignatur

[clang] [llvm] [HLSL][RootSignature] Metadata generation of RootFlags, RootConstants, RootDescriptors (PR #142010)

2025-05-29 Thread Finn Plummer via cfe-commits
https://github.com/inbelic created https://github.com/llvm/llvm-project/pull/142010 Implements metadata generation of a Root Signature from its in-memory representation. This pr handles RootFlags, RootConstants and RootDescriptors. The metadata follows the format described [here](https://git

[clang] [llvm] [HLSL][RootSiganture] Add parsing of new number params in StaticSampler (PR #140291)

2025-05-29 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/140291 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSiganture] Add parsing of new number params in StaticSampler (PR #140291)

2025-05-29 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140291 >From 4002195ce0dad1d292efc73530c7584edc1ecf7f Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Fri, 16 May 2025 16:08:36 + Subject: [PATCH 1/9] pre-req: add keywords --- clang/include/clang/Lex/HLSLRootS

[clang] [llvm] [HLSL][RootSignature] Add parsing of floats for StaticSampler (PR #140181)

2025-05-29 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/140181 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing of floats for StaticSampler (PR #140181)

2025-05-28 Thread Finn Plummer via cfe-commits
@@ -821,22 +873,115 @@ std::optional RootSignatureParser::handleUIntLiteral() { PP.getSourceManager(), PP.getLangOpts(), PP.getTargetInfo(), PP.getDiagnostics()); if (Literal.hadError) -return tr

[clang] [llvm] [HLSL][RootSignature] Add parsing of floats for StaticSampler (PR #140181)

2025-05-28 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140181 >From 1c40e031725f1bd21c5c0d24d333781f99bd2a0a Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 15 May 2025 23:14:10 + Subject: [PATCH 01/18] pre-req: add missing token to Lexer --- clang/include/cla

[clang] [llvm] [HLSL][RootSignature] Add parsing of floats for StaticSampler (PR #140181)

2025-05-28 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/140181 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [HLSL] Add Buffer def to frontend (PR #141086)

2025-05-27 Thread Finn Plummer via cfe-commits
https://github.com/inbelic approved this pull request. LGTM given we have a way of tracking making sure it will be read-only https://github.com/llvm/llvm-project/pull/141086 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org

[clang] [llvm] [HLSL][RootSignature] Add parsing infastructure for StaticSampler (PR #140180)

2025-05-26 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/140180 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing infastructure for StaticSampler (PR #140180)

2025-05-26 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140180 >From 05cd843e21cd8d93a94914d13843871886146dab Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 15 May 2025 22:35:30 + Subject: [PATCH 1/3] [HLSL][RootSignature] Add parsing infastructure for StaticSa

[clang] [llvm] [HLSL][RootSignature] Add parsing infastructure for StaticSampler (PR #140180)

2025-05-26 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140180 >From 05cd843e21cd8d93a94914d13843871886146dab Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 15 May 2025 22:35:30 + Subject: [PATCH 1/2] [HLSL][RootSignature] Add parsing infastructure for StaticSa

[clang] [llvm] [HLSL][RootSignature] Add parsing infastructure for StaticSampler (PR #140180)

2025-05-26 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140180 >From 05cd843e21cd8d93a94914d13843871886146dab Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 15 May 2025 22:35:30 + Subject: [PATCH] [HLSL][RootSignature] Add parsing infastructure for StaticSample

[clang] [llvm] [HLSL][RootSignature] Add parsing infastructure for StaticSampler (PR #140180)

2025-05-26 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/140180 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [HLSL] Add Buffer def to frontend (PR #141086)

2025-05-23 Thread Finn Plummer via cfe-commits
https://github.com/inbelic commented: How does this/will this handle enforcing that it is a read-only buffer? https://github.com/llvm/llvm-project/pull/141086 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailma

[clang] [llvm] [HLSL][RootSignature] Add parsing of flags to RootDescriptor (PR #140152)

2025-05-23 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/140152 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing of flags to RootDescriptor (PR #140152)

2025-05-22 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140152 >From 3daccf83b60e2a5435097b950eaf3cf07a39b440 Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 15 May 2025 20:31:30 + Subject: [PATCH 1/3] [HLSL][RootSignature] Add parsing of flags to RootParam - de

[clang] [llvm] [HLSL][RootSignature] Add parsing of optional parameters for RootDescriptor (PR #140151)

2025-05-22 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/140151 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing of optional parameters for RootDescriptor (PR #140151)

2025-05-22 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140151 >From 57d166785f06fcdb8e9c9a1b796ec89a9cc91070 Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 15 May 2025 20:07:51 + Subject: [PATCH 1/3] [HLSL][RootSignature] Add parsing of optional parameters for

[clang] [llvm] [HLSL][RootSignature] Add parsing of optional parameters for RootDescriptor (PR #140151)

2025-05-22 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/140151 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing of optional parameters for RootDescriptor (PR #140151)

2025-05-22 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140151 >From 57d166785f06fcdb8e9c9a1b796ec89a9cc91070 Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 15 May 2025 20:07:51 + Subject: [PATCH 1/2] [HLSL][RootSignature] Add parsing of optional parameters for

[clang] [llvm] [HLSL][RootSignature] Add parsing of optional parameters for RootDescriptor (PR #140151)

2025-05-22 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/140151 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing of Register in params for RootDescriptors (PR #140148)

2025-05-22 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/140148 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing of Register in params for RootDescriptors (PR #140148)

2025-05-21 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140148 >From ae3cffb72588f7afa5107dbd0b7d47137336273a Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 15 May 2025 19:49:44 + Subject: [PATCH 1/3] [HLSL][RootSignature] Add parsing of Register in params for

[clang] [llvm] [HLSL][RootSignature] Add parsing of Register in params for RootDescriptors (PR #140148)

2025-05-21 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/140148 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing of Register in params for RootDescriptors (PR #140148)

2025-05-21 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140148 >From ae3cffb72588f7afa5107dbd0b7d47137336273a Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 15 May 2025 19:49:44 + Subject: [PATCH 1/2] [HLSL][RootSignature] Add parsing of Register in params for

[clang] [llvm] [HLSL][RootSignature] Add parsing for empty RootDescriptors (PR #140147)

2025-05-21 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/140147 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing for empty RootDescriptors (PR #140147)

2025-05-21 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/140147 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing for empty RootDescriptors (PR #140147)

2025-05-21 Thread Finn Plummer via cfe-commits
https://github.com/inbelic edited https://github.com/llvm/llvm-project/pull/140147 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing for empty RootParams (PR #140147)

2025-05-21 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140147 >From fc2fc60145e65a1b32542cbaf9b4bd6ce3b1509d Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 15 May 2025 17:48:07 + Subject: [PATCH 1/2] [HLSL][RootSignature] Add parsing for empty RootParams - def

[clang] [llvm] [HLSL][RootSignature] Add parsing for empty RootParams (PR #140147)

2025-05-21 Thread Finn Plummer via cfe-commits
https://github.com/inbelic updated https://github.com/llvm/llvm-project/pull/140147 >From fc2fc60145e65a1b32542cbaf9b4bd6ce3b1509d Mon Sep 17 00:00:00 2001 From: Finn Plummer Date: Thu, 15 May 2025 17:48:07 + Subject: [PATCH 1/2] [HLSL][RootSignature] Add parsing for empty RootParams - def

[clang] [llvm] [DirectX][SPIRV] Fix the lowering of dot4add (PR #140315)

2025-05-16 Thread Finn Plummer via cfe-commits
@@ -1,17 +1,19 @@ -// RUN: %clang_cc1 -finclude-default-header -triple \ -// RUN: dxil-pc-shadermodel6.3-compute %s -emit-llvm -disable-llvm-passes -o - | \ -// RUN: FileCheck %s -DTARGET=dx -// RUN: %clang_cc1 -finclude-default-header -triple \ -// RUN: spirv-pc-vulkan-com

[clang] [llvm] [DirectX][SPIRV] Fix the lowering of dot4add (PR #140315)

2025-05-16 Thread Finn Plummer via cfe-commits
https://github.com/inbelic approved this pull request. https://github.com/llvm/llvm-project/pull/140315 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add parsing for empty RootParams (PR #140147)

2025-05-15 Thread Finn Plummer via cfe-commits
https://github.com/inbelic created https://github.com/llvm/llvm-project/pull/140147 - define the RootParam in-memory struct containing its type - add test harness for testing First part of https://github.com/llvm/llvm-project/issues/126577 >From fc2fc60145e65a1b32542cbaf9b4bd6ce3b1509d Mon Sep

[clang] [llvm] [HLSL][RootSignature] Add metadata generation for descriptor tables (PR #139633)

2025-05-15 Thread Finn Plummer via cfe-commits
https://github.com/inbelic closed https://github.com/llvm/llvm-project/pull/139633 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [HLSL][RootSignature] Add metadata generation for descriptor tables (PR #139633)

2025-05-15 Thread Finn Plummer via cfe-commits
@@ -160,6 +163,75 @@ void dumpRootElements(raw_ostream &OS, ArrayRef Elements) { OS << "}"; } +static MDString *ClauseTypeToName(LLVMContext &Ctx, ClauseType Type) { + StringRef Name; + switch (Type) { + case ClauseType::CBuffer: +Name = "CBV"; +break; + case Cl

  1   2   3   4   5   6   >