@@ -174,21 +176,45 @@ createBufferHandleType(const HLSLBufferDecl *BufDecl) {
return cast(QT.getTypePtr());
}
+// Iterates over all declarations in the HLSL buffer and based on the
+// packoffset or register(c#) annotations it fills outs the Layout
+// vector with the user-s
https://github.com/hekota updated
https://github.com/llvm/llvm-project/pull/128991
>From 9faff902639aece87b72ed5235d71b8b68533074 Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Wed, 26 Feb 2025 17:39:16 -0800
Subject: [PATCH 1/8] Add resource binding attribute on $Globals numeric
constants
@@ -89,14 +99,57 @@ llvm::TargetExtType
*HLSLBufferLayoutBuilder::createLayoutType(
RecordTypes.pop_back();
for (const auto *FD : RT->getDecl()->fields()) {
- assert((!Packoffsets || Index < Packoffsets->size()) &&
- "number of elements in layout stru
https://github.com/hekota created
https://github.com/llvm/llvm-project/pull/131032
Moving builder classes into separate files
`HLSLBuiltinTypeDeclBuilder.cpp`/`.h` and changing a some
`HLSLExternalSemaSource` methods to private.
This is a prep work before we start adding more builtin types an
@@ -59,8 +59,14 @@ llvm::Type *DirectXTargetCodeGenInfo::getHLSLType(
SmallVector Ints = {/*IsWriteable*/ ResAttrs.ResourceClass ==
llvm::dxil::ResourceClass::UAV,
/*IsROV*/ ResAttrs.IsROV};
-
https://github.com/hekota updated
https://github.com/llvm/llvm-project/pull/131032
>From 7ebfc826ca27c71ef80f4a1b38b2d3a2e155b777 Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Wed, 12 Mar 2025 14:09:24 -0700
Subject: [PATCH 1/4] [HLSL][NFC] Refactoring HLSLExternalSemaSource
Moving builder
https://github.com/hekota updated
https://github.com/llvm/llvm-project/pull/131032
>From 7ebfc826ca27c71ef80f4a1b38b2d3a2e155b777 Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Wed, 12 Mar 2025 14:09:24 -0700
Subject: [PATCH 1/6] [HLSL][NFC] Refactoring HLSLExternalSemaSource
Moving builder
@@ -0,0 +1,96 @@
+//===--- HLSLBuiltinTypeDeclBuilder.h - HLSL Builtin Type Decl Builder
---===//
+//
+// 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
@@ -453,11 +481,11 @@ BuiltinTypeMethodBuilder
&BuiltinTypeMethodBuilder::dereference(T Ptr) {
return *this;
}
-BuiltinTypeDeclBuilder &BuiltinTypeMethodBuilder::finalizeMethod() {
+BuiltinTypeDeclBuilder &BuiltinTypeMethodBuilder::finalize() {
assert(!DeclBuilder.Record
https://github.com/hekota edited
https://github.com/llvm/llvm-project/pull/131384
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota closed
https://github.com/llvm/llvm-project/pull/131032
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota updated
https://github.com/llvm/llvm-project/pull/131384
>From 7ebfc826ca27c71ef80f4a1b38b2d3a2e155b777 Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Wed, 12 Mar 2025 14:09:24 -0700
Subject: [PATCH 1/5] [HLSL][NFC] Refactoring HLSLExternalSemaSource
Moving builder
https://github.com/hekota updated
https://github.com/llvm/llvm-project/pull/131384
>From 7ebfc826ca27c71ef80f4a1b38b2d3a2e155b777 Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Wed, 12 Mar 2025 14:09:24 -0700
Subject: [PATCH 1/4] [HLSL][NFC] Refactoring HLSLExternalSemaSource
Moving builder
@@ -453,11 +481,11 @@ BuiltinTypeMethodBuilder
&BuiltinTypeMethodBuilder::dereference(T Ptr) {
return *this;
}
-BuiltinTypeDeclBuilder &BuiltinTypeMethodBuilder::finalizeMethod() {
+BuiltinTypeDeclBuilder &BuiltinTypeMethodBuilder::finalize() {
assert(!DeclBuilder.Record
https://github.com/hekota created
https://github.com/llvm/llvm-project/pull/132828
Fixes #132309
>From ac823de8971dc7cfd2516860badd24fe983968eb Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Mon, 24 Mar 2025 14:05:47 -0700
Subject: [PATCH] [HLSL] Fix codegen to support classes in `cbuffer`
https://github.com/hekota closed
https://github.com/llvm/llvm-project/pull/130342
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota edited
https://github.com/llvm/llvm-project/pull/130342
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota closed
https://github.com/llvm/llvm-project/pull/130338
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota closed
https://github.com/llvm/llvm-project/pull/130223
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
hekota wrote:
> LGTM for DXIL. Is there a plan to do this with SPIR-V too?
SPIR-V is generating different target type and it does not seem to have the
'signed' flag:
See
https://github.com/llvm/llvm-project/blob/fbf0276b6a7a7a4508c373cf87fc349569652659/clang/lib/CodeGen/Targets/SPIR.cpp#L396
https://github.com/hekota updated
https://github.com/llvm/llvm-project/pull/131032
>From 7ebfc826ca27c71ef80f4a1b38b2d3a2e155b777 Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Wed, 12 Mar 2025 14:09:24 -0700
Subject: [PATCH 1/5] [HLSL][NFC] Refactoring HLSLExternalSemaSource
Moving builder
https://github.com/hekota updated
https://github.com/llvm/llvm-project/pull/131384
>From 7ebfc826ca27c71ef80f4a1b38b2d3a2e155b777 Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Wed, 12 Mar 2025 14:09:24 -0700
Subject: [PATCH 1/6] [HLSL][NFC] Refactoring HLSLExternalSemaSource
Moving builder
https://github.com/hekota created
https://github.com/llvm/llvm-project/pull/135120
- Adds resource constructor that takes explicit binding for all resource
classes.
- Updates implementation of default resource constructor to initialize resource
handle to `poison`.
- Removes initialization of r
https://github.com/hekota ready_for_review
https://github.com/llvm/llvm-project/pull/135120
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
Nathan =?utf-8?q?Gau=C3=ABr?= ,
Nathan =?utf-8?q?Gau=C3=ABr?= ,
Nathan =?utf-8?q?Gau=C3=ABr?= ,
Nathan =?utf-8?q?Gau=C3=ABr?= ,
Nathan =?utf-8?q?Gau=C3=ABr?=
Message-ID:
In-Reply-To:
https://github.com/hekota approved this pull request.
LGTM! Thanks!
https://github.com/llvm/llvm-project/pull/
https://github.com/hekota updated
https://github.com/llvm/llvm-project/pull/135120
>From 85001dcbc184491dfb24e9d2a39df46fd4c9a363 Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Wed, 9 Apr 2025 18:17:26 -0700
Subject: [PATCH 1/3] Initialize resources by constructors
- add resource record con
https://github.com/hekota edited
https://github.com/llvm/llvm-project/pull/135120
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota edited
https://github.com/llvm/llvm-project/pull/135120
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota updated
https://github.com/llvm/llvm-project/pull/135120
>From 85001dcbc184491dfb24e9d2a39df46fd4c9a363 Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Wed, 9 Apr 2025 18:17:26 -0700
Subject: [PATCH 1/2] Initialize resources by constructors
- add resource record con
https://github.com/hekota approved this pull request.
LGTM! One suggestion to use `getUnqualifiedDesugaredType` instead of
`getDesugaredType` that requires a context.
https://github.com/llvm/llvm-project/pull/134683
___
cfe-commits mailing list
cfe-co
https://github.com/hekota closed
https://github.com/llvm/llvm-project/pull/131384
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota updated
https://github.com/llvm/llvm-project/pull/130338
>From 99539251dcf58aab9a88973f9162156ae6f1aa77 Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Thu, 6 Mar 2025 18:22:07 -0800
Subject: [PATCH 1/4] [HLSL][NFC] Update resource metadata tests to not use
obsolete
https://github.com/hekota updated
https://github.com/llvm/llvm-project/pull/135120
>From 85001dcbc184491dfb24e9d2a39df46fd4c9a363 Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Wed, 9 Apr 2025 18:17:26 -0700
Subject: [PATCH 1/4] Initialize resources by constructors
- add resource record con
@@ -287,6 +287,24 @@ Value *CodeGenFunction::EmitHLSLBuiltinExpr(unsigned
BuiltinID,
RetTy, CGM.getHLSLRuntime().getCreateResourceGetPointerIntrinsic(),
ArrayRef{HandleOp, IndexOp});
}
+ case Builtin::BI__builtin_hlsl_resource_createpoisonhandle: {
+llvm
@@ -1,34 +1,117 @@
// RUN: %clang_cc1 -triple dxil-pc-shadermodel6.3-library -x hlsl -emit-llvm
-disable-llvm-passes -o - %s | FileCheck %s --check-prefixes=CHECK,CHECK-DXIL
+// FIXME: SPIR-V codegen of llvm.spv.resource.handlefrombinding and resource
types is not yet implement
https://github.com/hekota updated
https://github.com/llvm/llvm-project/pull/135120
>From 85001dcbc184491dfb24e9d2a39df46fd4c9a363 Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Wed, 9 Apr 2025 18:17:26 -0700
Subject: [PATCH 1/5] Initialize resources by constructors
- add resource record con
https://github.com/hekota edited
https://github.com/llvm/llvm-project/pull/134683
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -195,7 +195,8 @@ bool HLSLBufferLayoutBuilder::layoutField(const FieldDecl
*FD,
// Unwrap array to find the element type and get combined array size.
QualType Ty = FieldTy;
while (Ty->isConstantArrayType()) {
- const ConstantArrayType *ArrayTy = cast(Ty);
+
https://github.com/hekota closed
https://github.com/llvm/llvm-project/pull/132828
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota approved this pull request.
LGTM!
https://github.com/llvm/llvm-project/pull/133850
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota updated
https://github.com/llvm/llvm-project/pull/131032
>From 7ebfc826ca27c71ef80f4a1b38b2d3a2e155b777 Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Wed, 12 Mar 2025 14:09:24 -0700
Subject: [PATCH 1/3] [HLSL][NFC] Refactoring HLSLExternalSemaSource
Moving builder
@@ -0,0 +1,23 @@
+//===- SemaDirectX.cpp - Semantic Analysis for DirectX
constructs--===//
+//
+// 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
https://github.com/hekota edited
https://github.com/llvm/llvm-project/pull/134439
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,29 @@
+//===- SemaDirectX.h - Semantic Analysis for DirectX
+// constructs===//
hekota wrote:
Is this supposed to be on 2 lines?
https://github.com/llvm/llvm-project/pull/134439
___
cfe-commi
https://github.com/hekota approved this pull request.
LGTM! Just a few comments.
https://github.com/llvm/llvm-project/pull/134439
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,23 @@
+// NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py
UTC_ARGS: --version 5
hekota wrote:
The filename should probably be dot2add.hlsl.
https://github.com/llvm/llvm-project/pull/134439
__
https://github.com/hekota closed
https://github.com/llvm/llvm-project/pull/135287
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota closed
https://github.com/llvm/llvm-project/pull/135120
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota edited
https://github.com/llvm/llvm-project/pull/135287
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -751,13 +751,14 @@
BuiltinTypeDeclBuilder::addHandleAccessFunction(DeclarationName &Name,
using PH = BuiltinTypeMethodBuilder::PlaceHolder;
QualType ElemTy = getHandleElementType();
- // TODO: Map to an hlsl_device address space.
- QualType ElemPtrTy = AST.getPointer
@@ -2379,8 +2379,10 @@ bool SemaHLSL::CheckBuiltinFunctionCall(unsigned
BuiltinID, CallExpr *TheCall) {
auto *ResourceTy =
TheCall->getArg(0)->getType()->castAs();
QualType ContainedTy = ResourceTy->getContainedType();
-// TODO: Map to an hlsl_device addres
@@ -89,12 +89,12 @@ RESOURCE Buffer;
// CHECK-SAME{LITERAL}: [[hlsl::raw_buffer]]
// CHECK-SAME{LITERAL}: [[hlsl::contained_type(element_type)]]
-// CHECK-SUBSCRIPT: CXXMethodDecl {{.*}} operator[] 'const element_type
&(unsigned int) const'
+// CHECK-SUBSCRIPT: CXXMethodDecl
@@ -751,13 +751,14 @@
BuiltinTypeDeclBuilder::addHandleAccessFunction(DeclarationName &Name,
using PH = BuiltinTypeMethodBuilder::PlaceHolder;
QualType ElemTy = getHandleElementType();
- // TODO: Map to an hlsl_device address space.
- QualType ElemPtrTy = AST.getPointer
https://github.com/hekota edited
https://github.com/llvm/llvm-project/pull/127675
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota requested changes to this pull request.
Looks mostly good, but I think there is an issue with the const-ness of the
subscript operator return value.
https://github.com/llvm/llvm-project/pull/127675
___
cfe-commits mailing lis
https://github.com/hekota approved this pull request.
LGTM! One small nit.
https://github.com/llvm/llvm-project/pull/137391
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -0,0 +1,13 @@
+// RUN: %clang_cc1 -triple dxil-pc-shadermodel6.3-library -ast-dump %s |
FileCheck %s
hekota wrote:
This test should probably be in `clang/test/AST/HLSL`.
https://github.com/llvm/llvm-project/pull/137391
___
https://github.com/hekota approved this pull request.
LGTM! Just a couple of nits. Apologies for the delay, I was on vacation last
week. :)
https://github.com/llvm/llvm-project/pull/127675
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https:
https://github.com/hekota edited
https://github.com/llvm/llvm-project/pull/127675
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -121,15 +121,15 @@ RESOURCE Buffer;
// CHECK-SUBSCRIPT-NEXT: DeclRefExpr {{.*}} 'unsigned int' ParmVar {{.*}}
'Index' 'unsigned int'
// CHECK-SUBSCRIPT-NEXT: AlwaysInlineAttr {{.*}} Implicit always_inline
-// CHECK-NOSUBSCRIPT-NOT: CXXMethodDecl {{.*}} operator[] 'const el
@@ -89,12 +89,12 @@ RESOURCE Buffer;
// CHECK-SAME{LITERAL}: [[hlsl::raw_buffer]]
// CHECK-SAME{LITERAL}: [[hlsl::contained_type(element_type)]]
-// CHECK-SUBSCRIPT: CXXMethodDecl {{.*}} operator[] 'const element_type
&(unsigned int) const'
+// CHECK-SUBSCRIPT: CXXMethodDecl
https://github.com/hekota created
https://github.com/llvm/llvm-project/pull/138964
Renaming because the name `isImplicit` is ambiguous. It can mean implicit
attribute or implicit binding.
>From 989c75d4376eaedfb8756bc564f81aee6199756a Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Wed, 7 M
https://github.com/hekota closed
https://github.com/llvm/llvm-project/pull/138964
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -2164,30 +2085,49 @@ static bool CheckModifiableLValue(Sema *S, CallExpr
*TheCall,
return true;
}
-static bool CheckNoDoubleVectors(Sema *S, CallExpr *TheCall) {
- auto checkDoubleVector = [](clang::QualType PassedType) -> bool {
-if (const auto *VecTy = PassedType-
https://github.com/hekota edited
https://github.com/llvm/llvm-project/pull/138429
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota edited
https://github.com/llvm/llvm-project/pull/138429
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
@@ -42,47 +42,47 @@ float2 test_mad_element_type_mismatch(half2 p0, float2 p1) {
float2 test_builtin_mad_float2_splat(float p0, float2 p1) {
return __builtin_hlsl_mad(p0, p1, p1);
- // expected-error@-1 {{all arguments to '__builtin_hlsl_mad' must be
vectors}}
+ // expect
https://github.com/hekota commented:
Look good! One suggestion and a one question why the diag message uses has
`double` when the argument is `float`.
https://github.com/llvm/llvm-project/pull/138429
___
cfe-commits mailing list
cfe-commits@lists.llvm
https://github.com/hekota closed
https://github.com/llvm/llvm-project/pull/139302
___
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
https://github.com/hekota created
https://github.com/llvm/llvm-project/pull/139302
The function attribute numbers are not stable. They are not part of the test
and can be removed.
>From 14eda614ef4d2f3d5617dcedd935adfe97ec9c1a Mon Sep 17 00:00:00 2001
From: Helena Kotas
Date: Fri, 9 May 2025
801 - 870 of 870 matches
Mail list logo