[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-07-14 Thread Mariya Podchishchaeva via cfe-commits
Fznamznon wrote: ping @tahonermann https://github.com/llvm/llvm-project/pull/139566 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][SYCL] Add sycl_external attribute and restrict emitting device code (PR #140282)

2025-07-10 Thread Mariya Podchishchaeva via cfe-commits
Fznamznon wrote: Oops new tests are failing. https://github.com/llvm/llvm-project/pull/140282 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][SYCL] Add sycl_external attribute and restrict emitting device code (PR #140282)

2025-07-08 Thread Mariya Podchishchaeva via cfe-commits
@@ -25,20 +40,29 @@ int main() { auto lambda2 = [](int){}; auto lambda3 = [](double){}; - kernel(lambda1); - kernel2(lambda2); - kernel3(lambda3); + kernel_wrapper(lambda1); + kernel2_wrapper(lambda2); + kernel3_wrapper(lambda3); // Ensure the kernels are named

[clang] [clang][SYCL] Add sycl_external attribute and restrict emitting device code (PR #140282)

2025-07-08 Thread Mariya Podchishchaeva via cfe-commits
@@ -25,20 +40,29 @@ int main() { auto lambda2 = [](int){}; auto lambda3 = [](double){}; - kernel(lambda1); - kernel2(lambda2); - kernel3(lambda3); + kernel_wrapper(lambda1); + kernel2_wrapper(lambda2); + kernel3_wrapper(lambda3); // Ensure the kernels are named

[clang] [clang][SYCL] Add sycl_external attribute and restrict emitting device code (PR #140282)

2025-07-08 Thread Mariya Podchishchaeva via cfe-commits
@@ -25,20 +40,29 @@ int main() { auto lambda2 = [](int){}; auto lambda3 = [](double){}; - kernel(lambda1); - kernel2(lambda2); - kernel3(lambda3); + kernel_wrapper(lambda1); + kernel2_wrapper(lambda2); + kernel3_wrapper(lambda3); // Ensure the kernels are named

[clang] [clang][SYCL] Add sycl_external attribute and restrict emitting device code (PR #140282)

2025-07-08 Thread Mariya Podchishchaeva via cfe-commits
@@ -25,20 +40,29 @@ int main() { auto lambda2 = [](int){}; auto lambda3 = [](double){}; - kernel(lambda1); - kernel2(lambda2); - kernel3(lambda3); + kernel_wrapper(lambda1); + kernel2_wrapper(lambda2); + kernel3_wrapper(lambda3); // Ensure the kernels are named

[clang] [win][clang] Do not inject static_assert macro definition (PR #147030)

2025-07-08 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon closed https://github.com/llvm/llvm-project/pull/147030 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][clang] Fix CodeGenSYCL::unique_stable_name_windows_diff test (PR #146854)

2025-07-08 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon closed https://github.com/llvm/llvm-project/pull/146854 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][clang] Fix CodeGenSYCL::unique_stable_name_windows_diff test (PR #146854)

2025-07-07 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/146854 >From 9a640eefb5d27a65f236b5f7df1398bdf1bcc017 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Thu, 3 Jul 2025 03:46:41 -0700 Subject: [PATCH 1/4] [NFC][clang] Fix CodeGenSYCL::unique_stable_nam

[clang] [C23][Parser] Diagnostic for attribute declaration where statement is required (PR #146224)

2025-07-07 Thread Mariya Podchishchaeva via cfe-commits
@@ -747,6 +747,10 @@ Bug Fixes in This Version - Fixed an infinite recursion when checking constexpr destructors. (#GH141789) - Fixed a crash when a malformed using declaration appears in a ``constexpr`` function. (#GH144264) - Fixed a bug when use unicode character name in ma

[clang] [clang][SYCL] Add sycl_external attribute and restrict emitting device code (PR #140282)

2025-07-07 Thread Mariya Podchishchaeva via cfe-commits
@@ -25,20 +40,29 @@ int main() { auto lambda2 = [](int){}; auto lambda3 = [](double){}; - kernel(lambda1); - kernel2(lambda2); - kernel3(lambda3); + kernel_wrapper(lambda1); + kernel2_wrapper(lambda2); + kernel3_wrapper(lambda3); // Ensure the kernels are named

[clang] [NFC][clang] Fix CodeGenSYCL::unique_stable_name_windows_diff test (PR #146854)

2025-07-07 Thread Mariya Podchishchaeva via cfe-commits
Fznamznon wrote: > I noticed there is a problem with __builtin_sycl_unique_stable_name and > sycl_kernel_etnry_point attribute. If I add this wrapping of > __builtin_sycl_unique_stable_name calls AND sycl_kernel_entry_point > attribute, the strings disappear from the IR. They are in here > ht

[clang] [NFC][clang] Fix CodeGenSYCL::unique_stable_name_windows_diff test (PR #146854)

2025-07-07 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon edited https://github.com/llvm/llvm-project/pull/146854 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][clang] Fix CodeGenSYCL::unique_stable_name_windows_diff test (PR #146854)

2025-07-07 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon ready_for_review https://github.com/llvm/llvm-project/pull/146854 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][clang] Fix CodeGenSYCL::unique_stable_name_windows_diff test (PR #146854)

2025-07-07 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/146854 >From 9a640eefb5d27a65f236b5f7df1398bdf1bcc017 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Thu, 3 Jul 2025 03:46:41 -0700 Subject: [PATCH 1/3] [NFC][clang] Fix CodeGenSYCL::unique_stable_nam

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-07-07 Thread Mariya Podchishchaeva via cfe-commits
@@ -46,6 +46,22 @@ Potentially Breaking Changes ``endbr64`` instruction at the labels named as possible branch destinations, so it is not safe to use a register-controlled branch instruction to branch to one. (In line with gcc.) +- Scalar deleting destructor support has b

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-07-07 Thread Mariya Podchishchaeva via cfe-commits
Fznamznon wrote: Ping @tahonermann https://github.com/llvm/llvm-project/pull/139566 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [win][clang] Do not inject static_assert macro definition (PR #147030)

2025-07-07 Thread Mariya Podchishchaeva via cfe-commits
@@ -1450,7 +1450,6 @@ def MicrosoftAnonTag : DiagGroup<"microsoft-anon-tag">; def MicrosoftCommentPaste : DiagGroup<"microsoft-comment-paste">; def MicrosoftEndOfFile : DiagGroup<"microsoft-end-of-file">; def MicrosoftInaccessibleBase : DiagGroup<"microsoft-inaccessible-base">;

[clang] [win][clang] Do not inject static_assert macro definition (PR #147030)

2025-07-07 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/147030 >From 3060e6f416ea62bdf62470e6636278d736cc49d0 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Fri, 4 Jul 2025 02:50:38 -0700 Subject: [PATCH 1/4] [win][clang] Do not inject static_assert macro d

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-07-07 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/139566 >From 1b0b6242e5749e776f02581ba8600d853bfef322 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Mon, 12 May 2025 07:25:57 -0700 Subject: [PATCH 01/17] [win][clang] Align scalar deleting destructor

[clang] [win][clang] Do not inject static_assert macro definition (PR #147030)

2025-07-07 Thread Mariya Podchishchaeva via cfe-commits
@@ -1450,7 +1450,6 @@ def MicrosoftAnonTag : DiagGroup<"microsoft-anon-tag">; def MicrosoftCommentPaste : DiagGroup<"microsoft-comment-paste">; def MicrosoftEndOfFile : DiagGroup<"microsoft-end-of-file">; def MicrosoftInaccessibleBase : DiagGroup<"microsoft-inaccessible-base">;

[clang] [win][clang] Do not inject static_assert macro definition (PR #147030)

2025-07-07 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/147030 >From 3060e6f416ea62bdf62470e6636278d736cc49d0 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Fri, 4 Jul 2025 02:50:38 -0700 Subject: [PATCH 1/3] [win][clang] Do not inject static_assert macro d

[clang] [win][clang] Do not inject static_assert macro definition (PR #147030)

2025-07-04 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon created https://github.com/llvm/llvm-project/pull/147030 In ms-compatibility mode we inject static_assert macro definition if assert macro is defined. This is done by 8da090381d567d0ec555840f6b2a651d2997e4b3 for the sake of better diagnosing, in particular to emit a

[clang] [NFC][clang] Fix CodeGenSYCL::unique_stable_name_windows_diff test (PR #146854)

2025-07-03 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon converted_to_draft https://github.com/llvm/llvm-project/pull/146854 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][clang] Fix CodeGenSYCL::unique_stable_name_windows_diff test (PR #146854)

2025-07-03 Thread Mariya Podchishchaeva via cfe-commits
Fznamznon wrote: I noticed there is a problem with __builtin_sycl_unique_stable_name and sycl_kernel_etnry_point attribute. If I add this wrapping of __builtin_sycl_unique_stable_name calls AND sycl_kernel_entry_point attribute, the strings disappear from the IR. They are in here https://godb

[clang] [NFC][clang] Fix CodeGenSYCL::unique_stable_name_windows_diff test (PR #146854)

2025-07-03 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon ready_for_review https://github.com/llvm/llvm-project/pull/146854 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [NFC][clang] Fix CodeGenSYCL::unique_stable_name_windows_diff test (PR #146854)

2025-07-03 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/146854 >From 9a640eefb5d27a65f236b5f7df1398bdf1bcc017 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Thu, 3 Jul 2025 03:46:41 -0700 Subject: [PATCH 1/2] [NFC][clang] Fix CodeGenSYCL::unique_stable_nam

[clang] [NFC][clang] Fix CodeGenSYCL::unique_stable_name_windows_diff test (PR #146854)

2025-07-03 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon created https://github.com/llvm/llvm-project/pull/146854 The test checks x86 target in fsycl-is-device mode. x86 is not a valid offloading target and IMO test meant to check fsycl-is-host mode to make sure host invocations of __builtin_sycl_unique_stable_name work

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-26 Thread Mariya Podchishchaeva via cfe-commits
@@ -1587,28 +1587,82 @@ namespace { } }; + // This function implements generation of scalar deleting destructor body for + // the case when the destructor also accepts an implicit flag. Right now only + // Microsoft ABI requires deleting destructors to accept implicit

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-26 Thread Mariya Podchishchaeva via cfe-commits
@@ -3101,6 +3101,17 @@ void CXXDestructorDecl::setOperatorDelete(FunctionDecl *OD, Expr *ThisArg) { } } +void CXXDestructorDecl::setOperatorGlobalDelete(FunctionDecl *OD) { + assert(!OD || (OD->getDeclName().getCXXOverloadedOperator() == OO_Delete && + OD-

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-26 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/139566 >From 1b0b6242e5749e776f02581ba8600d853bfef322 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Mon, 12 May 2025 07:25:57 -0700 Subject: [PATCH 01/16] [win][clang] Align scalar deleting destructor

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-26 Thread Mariya Podchishchaeva via cfe-commits
@@ -194,9 +217,31 @@ I::~I() { call_in_dtor(); } // CHECK-MSABI32-LABEL: define {{.*}} @"??_GI@@UAEPAXI@Z"( // CHECK-MSABI-NOT: call{{ }} // CHECK-MSABI: load i32 -// CHECK-MSABI: icmp eq i32 {{.*}}, 0 -// CHECK-MSABI: br i1 +// CHECK-MSABI-NEXT: and i32 %[[IMP_PARAM:.*]], 4 +/

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-25 Thread Mariya Podchishchaeva via cfe-commits
@@ -2886,6 +2887,16 @@ class CXXDestructorDecl : public CXXMethodDecl { return getCanonicalDecl()->OperatorDelete; } + const FunctionDecl *getOperatorGlobalDelete() const { +return getCanonicalDecl()->OperatorGlobalDelete; + } + + void setOperatorGlobalDelete(Func

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-25 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/139566 >From 1b0b6242e5749e776f02581ba8600d853bfef322 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Mon, 12 May 2025 07:25:57 -0700 Subject: [PATCH 01/11] [win][clang] Align scalar deleting destructor

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-25 Thread Mariya Podchishchaeva via cfe-commits
@@ -2886,6 +2887,16 @@ class CXXDestructorDecl : public CXXMethodDecl { return getCanonicalDecl()->OperatorDelete; } + const FunctionDecl *getOperatorGlobalDelete() const { +return getCanonicalDecl()->OperatorGlobalDelete; + } + + void setOperatorGlobalDelete(Func

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-25 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/139566 >From 1b0b6242e5749e776f02581ba8600d853bfef322 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Mon, 12 May 2025 07:25:57 -0700 Subject: [PATCH 01/14] [win][clang] Align scalar deleting destructor

[clang] [clang] Fix __builtin_mul_overflow for big _BitInts (PR #145497)

2025-06-25 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon closed https://github.com/llvm/llvm-project/pull/145497 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Fix __builtin_mul_overflow for big _BitInts (PR #145497)

2025-06-24 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon edited https://github.com/llvm/llvm-project/pull/145497 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-24 Thread Mariya Podchishchaeva via cfe-commits
@@ -2886,6 +2887,16 @@ class CXXDestructorDecl : public CXXMethodDecl { return getCanonicalDecl()->OperatorDelete; } + const FunctionDecl *getOperatorGlobalDelete() const { +return getCanonicalDecl()->OperatorGlobalDelete; + } + + void setOperatorGlobalDelete(Func

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-24 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/139566 >From 1b0b6242e5749e776f02581ba8600d853bfef322 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Mon, 12 May 2025 07:25:57 -0700 Subject: [PATCH 01/12] [win][clang] Align scalar deleting destructor

[clang] [clang] Fix __builtin_mul_overflow for big _BitInts (PR #145497)

2025-06-24 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon created https://github.com/llvm/llvm-project/pull/145497 For long enough _BitInt types we use different types for memory, storing-loading and operations. Makes sure it is correct for mixed sign __builtin_mul_overflow cases. Using pointer element type as a result ty

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-18 Thread Mariya Podchishchaeva via cfe-commits
@@ -194,9 +217,31 @@ I::~I() { call_in_dtor(); } // CHECK-MSABI32-LABEL: define {{.*}} @"??_GI@@UAEPAXI@Z"( // CHECK-MSABI-NOT: call{{ }} // CHECK-MSABI: load i32 -// CHECK-MSABI: icmp eq i32 {{.*}}, 0 -// CHECK-MSABI: br i1 +// CHECK-MSABI-NEXT: and i32 %[[IMP_PARAM:.*]], 4 +/

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-18 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon edited https://github.com/llvm/llvm-project/pull/139566 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-18 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon edited https://github.com/llvm/llvm-project/pull/139566 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-18 Thread Mariya Podchishchaeva via cfe-commits
@@ -2886,6 +2887,16 @@ class CXXDestructorDecl : public CXXMethodDecl { return getCanonicalDecl()->OperatorDelete; } + const FunctionDecl *getOperatorGlobalDelete() const { +return getCanonicalDecl()->OperatorGlobalDelete; + } + + void setOperatorGlobalDelete(Func

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-18 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/139566 >From 1b0b6242e5749e776f02581ba8600d853bfef322 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Mon, 12 May 2025 07:25:57 -0700 Subject: [PATCH 01/11] [win][clang] Align scalar deleting destructor

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-18 Thread Mariya Podchishchaeva via cfe-commits
@@ -1590,25 +1590,70 @@ namespace { void EmitConditionalDtorDeleteCall(CodeGenFunction &CGF, Fznamznon wrote: Added a comment. https://github.com/llvm/llvm-project/pull/139566 ___ cfe-commits mailing list cfe-commit

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-18 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/139566 >From 1b0b6242e5749e776f02581ba8600d853bfef322 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Mon, 12 May 2025 07:25:57 -0700 Subject: [PATCH 01/10] [win][clang] Align scalar deleting destructor

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-18 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/139566 >From 1b0b6242e5749e776f02581ba8600d853bfef322 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Mon, 12 May 2025 07:25:57 -0700 Subject: [PATCH 1/8] [win][clang] Align scalar deleting destructors

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-17 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/139566 >From 1b0b6242e5749e776f02581ba8600d853bfef322 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Mon, 12 May 2025 07:25:57 -0700 Subject: [PATCH 1/7] [win][clang] Align scalar deleting destructors

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-16 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/139566 >From 1b0b6242e5749e776f02581ba8600d853bfef322 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Mon, 12 May 2025 07:25:57 -0700 Subject: [PATCH 1/5] [win][clang] Align scalar deleting destructors

[clang] [clang] Fix -fclang-abi-compat for clang 20 (PR #144109)

2025-06-16 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon closed https://github.com/llvm/llvm-project/pull/144109 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-13 Thread Mariya Podchishchaeva via cfe-commits
Fznamznon wrote: Thanks @AaronBallman , It seems -fclang-abi-compat=20 doesn't work, so first we need https://github.com/llvm/llvm-project/pull/144109 . https://github.com/llvm/llvm-project/pull/139566 ___ cfe-commits mailing list cfe-commits@lists.ll

[clang] [clang] Fix -fclang-abi-compat for clang 20 (PR #144109)

2025-06-13 Thread Mariya Podchishchaeva via cfe-commits
@@ -11,6 +12,7 @@ struct XMM2 : XMM1<0>, XMM1<1> { }; // CHECK: define{{.*}} @_Z3foov({{.*}} [[ARG:%.*]]){{.*}} +// CLANG-20: define{{.*}} <4 x double> @_Z3foov() Fznamznon wrote: I think this is the only test which is different between clang 20 and clang 21,

[clang] [clang] Fix -fclang-abi-compat for clang 20 (PR #144109)

2025-06-13 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon created https://github.com/llvm/llvm-project/pull/144109 The value was known already, but it was parsed as latest which is incorrect because we are already doing clang 21. >From a48dd54fb4918a89e6a98f82860332ab59be6df6 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva

[clang] [Clang] use colon char instead of token name (PR #144068)

2025-06-13 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon approved this pull request. https://github.com/llvm/llvm-project/pull/144068 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] use colon char instead of token name (PR #144068)

2025-06-13 Thread Mariya Podchishchaeva via cfe-commits
@@ -836,8 +836,7 @@ StmtResult Parser::ParseCaseStatement(ParsedStmtContext StmtCtx, Diag(ExpectedLoc, diag::err_expected_after) << "'case'" << tok::colon - << FixItHint::CreateInsertion(ExpectedLoc, -tok::getTo

[clang] [Clang] use colon char instead of token name (PR #144068)

2025-06-13 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon commented: Can we add a test? https://github.com/llvm/llvm-project/pull/144068 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] use colon char instead of token name (PR #144068)

2025-06-13 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon edited https://github.com/llvm/llvm-project/pull/144068 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-12 Thread Mariya Podchishchaeva via cfe-commits
Fznamznon wrote: Ok, I added the release note. > we'd use ABI version tags for it at that point. @AaronBallman Could you please elaborate a bit more on that? https://github.com/llvm/llvm-project/pull/139566 ___ cfe-commits mailing list cfe-commits@li

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-12 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/139566 >From 1b0b6242e5749e776f02581ba8600d853bfef322 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Mon, 12 May 2025 07:25:57 -0700 Subject: [PATCH 1/4] [win][clang] Align scalar deleting destructors

[clang] [clang] Implement StmtPrinter for EmbedExpr (PR #135957)

2025-06-12 Thread Mariya Podchishchaeva via cfe-commits
Fznamznon wrote: > Was there a backport request created for this one? No, when I applied the patch locally to release20.x branch, one of the tests that this patch adds crashed, so probably additional fixes required to be backported. https://github.com/llvm/llvm-project/pull/135957 ___

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-11 Thread Mariya Podchishchaeva via cfe-commits
@@ -1589,25 +1589,74 @@ namespace { void EmitConditionalDtorDeleteCall(CodeGenFunction &CGF, llvm::Value *ShouldDeleteCondition, bool ReturnAfterDelete) { +const CXXDestructorDecl *Dtor = cast(CGF.C

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-11 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon updated https://github.com/llvm/llvm-project/pull/139566 >From 1b0b6242e5749e776f02581ba8600d853bfef322 Mon Sep 17 00:00:00 2001 From: "Podchishchaeva, Mariya" Date: Mon, 12 May 2025 07:25:57 -0700 Subject: [PATCH 1/2] [win][clang] Align scalar deleting destructors

[clang] [Clang][Attr] Fix possible crash when trying to check for DeviceKernel spelling (PR #143546)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon approved this pull request. https://github.com/llvm/llvm-project/pull/143546 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Attr] Fix possible crash when trying to check for DeviceKernel spelling (PR #143546)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
Fznamznon wrote: > I didn't add a test because this can't be reproduced yet in this repo, I > reproduced this only in intel's fork with more SYCL support. But that does sound specific to the downstream, right? Do we observe the issue there because intel's fork used to add OpenCLKernelAttr impl

[clang] [clang][SYCL Upstreaming] Add sycl_external attribute and restrict emitting device code (PR #140282)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
@@ -7179,6 +7179,12 @@ ProcessDeclAttribute(Sema &S, Scope *scope, Decl *D, const ParsedAttr &AL, case ParsedAttr::AT_EnumExtensibility: handleEnumExtensibilityAttr(S, D, AL); break; + case ParsedAttr::AT_SYCLKernel: +S.SYCL().handleKernelAttr(D, AL); +break

[clang] [clang][SYCL Upstreaming] Add sycl_external attribute and restrict emitting device code (PR #140282)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
@@ -1,128 +1,128 @@ // RUN: %clang_cc1 -triple amdgcn-amd-amdhsa -fsycl-is-device -disable-llvm-passes -emit-llvm %s -o - | FileCheck %s void bar(int &Data) {} -// CHECK: define dso_local void @[[RAW_REF:[a-zA-Z0-9_]+]](ptr noundef nonnull align 4 dereferenceable(4) % +// CHEC

[clang] [clang][SYCL Upstreaming] Add sycl_external attribute and restrict emitting device code (PR #140282)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
@@ -0,0 +1,38 @@ +// RUN: %clang_cc1 -fsycl-is-device -fsyntax-only -verify %s + +// Semantic tests for sycl_external attribute + +[[clang::sycl_external(3)]] // expected-error {{'sycl_external' attribute takes no arguments}} +void bar() {} + +[[clang::sycl_external]] // expected

[clang] [clang][SYCL Upstreaming] Add sycl_external attribute and restrict emitting device code (PR #140282)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
@@ -0,0 +1,16 @@ +// RUN: %clang_cc1 -fsycl-is-device -fsyntax-only -verify %s + +// expected-warning@+1{{'sycl_external' attribute only applies to functions}} +[[clang::sycl_external]] int a; + + +// expected-warning@+2{{'sycl_external' attribute only applies to functions}} +stru

[clang] [clang][SYCL Upstreaming] Add sycl_external attribute and restrict emitting device code (PR #140282)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
@@ -29,21 +29,10 @@ int foo() { } template -__attribute__((sycl_kernel)) void kernel_single_task(const Func &kernelFunc) { +[[clang::sycl_external]] void kernel_single_task(const Func &kernelFunc) { Fznamznon wrote: I think it was meant to be a kernel, so sy

[clang] [clang][SYCL Upstreaming] Add sycl_external attribute and restrict emitting device code (PR #140282)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
@@ -25,20 +40,29 @@ int main() { auto lambda2 = [](int){}; auto lambda3 = [](double){}; - kernel(lambda1); - kernel2(lambda2); - kernel3(lambda3); + kernel_wrapper(lambda1); + kernel2_wrapper(lambda2); + kernel3_wrapper(lambda3); // Ensure the kernels are named

[clang] [clang][SYCL Upstreaming] Add sycl_external attribute and restrict emitting device code (PR #140282)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
@@ -476,6 +476,33 @@ The SYCL kernel in the previous code sample meets these expectations. }]; } +def SYCLExternalDocs : Documentation { + let Category = DocCatFunction; + let Heading = "sycl_external"; + let Content = [{ +The ``sycl_external`` attribute (or the ``SYCL_E

[clang] [clang][SYCL Upstreaming] Add sycl_external attribute and restrict emitting device code (PR #140282)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
@@ -476,6 +476,33 @@ The SYCL kernel in the previous code sample meets these expectations. }]; } +def SYCLExternalDocs : Documentation { + let Category = DocCatFunction; + let Heading = "sycl_external"; + let Content = [{ +The ``sycl_external`` attribute (or the ``SYCL_E

[clang] [Clang] [NFC] Move diagnostics emitting code from `DiagnosticIDs` into `DiagnosticsEngine` (PR #143517)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
@@ -1046,6 +1046,9 @@ class DiagnosticsEngine : public RefCountedBase { bool EmitDiagnostic(const DiagnosticBuilder &DB, bool Force = false); /// @} + +private: + void Report(Level DiagLevel, const Diagnostic &Info); Fznamznon wrote: Why not put it righ

[clang] [Clang] [NFC] Move diagnostics emitting code from `DiagnosticIDs` into `DiagnosticsEngine` (PR #143517)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
@@ -658,13 +658,97 @@ void DiagnosticsEngine::Report(const StoredDiagnostic &storedDiag) { Level DiagLevel = storedDiag.getLevel(); Diagnostic Info(this, storedDiag.getLocation(), storedDiag.getID(), DiagStorage, storedDiag.getMessage()); + Report(DiagLe

[clang] [Clang] [NFC] Move diagnostics emitting code from `DiagnosticIDs` into `DiagnosticsEngine` (PR #143517)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
@@ -658,13 +658,97 @@ void DiagnosticsEngine::Report(const StoredDiagnostic &storedDiag) { Level DiagLevel = storedDiag.getLevel(); Diagnostic Info(this, storedDiag.getLocation(), storedDiag.getID(), DiagStorage, storedDiag.getMessage()); + Report(DiagLe

[clang] [Clang] [NFC] Move diagnostics emitting code from `DiagnosticIDs` into `DiagnosticsEngine` (PR #143517)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon edited https://github.com/llvm/llvm-project/pull/143517 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] [NFC] Move diagnostics emitting code from `DiagnosticIDs` into `DiagnosticsEngine` (PR #143517)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon approved this pull request. That makes sense to me, but I've never touched that before, so probably makes sense to wait for the feedback from @AaronBallman too. https://github.com/llvm/llvm-project/pull/143517 ___ cfe-comm

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
@@ -2885,6 +2886,16 @@ class CXXDestructorDecl : public CXXMethodDecl { return getCanonicalDecl()->OperatorDelete; } + const FunctionDecl *getOperatorGlobalDelete() const { +return getCanonicalDecl()->OperatorGlobalDelete; + } + + void setOperatorGlobalDelete(Func

[clang] [clang] fix infinite recursion (PR #143244)

2025-06-10 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon commented: Thank you for the fix, this overall lg. But perhaps a release note makes sense, and I agree with @Sirraide that canonical types need to be stored into the set. https://github.com/llvm/llvm-project/pull/143244 __

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-06-06 Thread Mariya Podchishchaeva via cfe-commits
Fznamznon wrote: ping. https://github.com/llvm/llvm-project/pull/139566 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Implement StmtPrinter for EmbedExpr (PR #135957)

2025-06-06 Thread Mariya Podchishchaeva via cfe-commits
Fznamznon wrote: /cherry-pick 40417915a161e87b398f1cc3e9b7c159207abd77 https://github.com/llvm/llvm-project/pull/135957 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Implement StmtPrinter for EmbedExpr (PR #135957)

2025-06-06 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon milestoned https://github.com/llvm/llvm-project/pull/135957 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [C23] Handle type compatibility of unnamed records (PR #141783)

2025-05-28 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon approved this pull request. https://github.com/llvm/llvm-project/pull/141783 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [C23] Handle type compatibility of unnamed records (PR #141783)

2025-05-28 Thread Mariya Podchishchaeva via cfe-commits
@@ -359,3 +359,29 @@ struct alignment { // c17-error {{redefinition of 'alignment'}} \ c23-error {{type 'struct alignment' has a member with an attribute which currently causes the types to be treated as though they are incompatible}} int x; }; + +//

[clang] Add sycl_external attribute (PR #140282)

2025-05-27 Thread Mariya Podchishchaeva via cfe-commits
@@ -12909,6 +12909,10 @@ bool ASTContext::DeclMustBeEmitted(const Decl *D) { if (D->hasAttr()) return false; + if (LangOpts.SYCLIsDevice && + (!D->hasAttr() || !D->hasAttr())) Fznamznon wrote: Shouldn't that be ```suggestion if (LangOpts.SYCLI

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-05-27 Thread Mariya Podchishchaeva via cfe-commits
Fznamznon wrote: Ping. https://github.com/llvm/llvm-project/pull/139566 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Sema] Cleanup and optimize DiagnoseAssignmentEnum (PR #141471)

2025-05-27 Thread Mariya Podchishchaeva via cfe-commits
Timm =?utf-8?q?B=C3=A4der?= Message-ID: In-Reply-To: https://github.com/Fznamznon approved this pull request. That looks great imo https://github.com/llvm/llvm-project/pull/141471 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists

[clang] Sycl builtin kernel name (PR #140230)

2025-05-16 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon created https://github.com/llvm/llvm-project/pull/140230 None >From eeea84b4989b4497cc804f403258b986c09cf5ab Mon Sep 17 00:00:00 2001 From: Elizabeth Andrews Date: Thu, 8 Aug 2024 18:05:48 -0700 Subject: [PATCH 1/5] [SYCL] Add support for __builtin_sycl_kernel_name

[clang] Sycl builtin kernel name (PR #140230)

2025-05-16 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon closed https://github.com/llvm/llvm-project/pull/140230 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] Fix parsing of expressions of the form (T())[/*...*/] (PR #140053)

2025-05-16 Thread Mariya Podchishchaeva via cfe-commits
@@ -692,6 +692,86 @@ ExprResult Parser::ParseLambdaExpression() { return ParseLambdaExpressionAfterIntroducer(Intro); } +bool Parser::IsLambdaAfterTypeCast() { + assert(getLangOpts().CPlusPlus && Tok.is(tok::l_square) && + "Not at the start of a possible lambda expr

[clang] [Clang] Fix Sema::checkArgCount for 0-arg functions (PR #139638)

2025-05-13 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon approved this pull request. A couple of nits, otherwise LGTM https://github.com/llvm/llvm-project/pull/139638 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commi

[clang] [Clang] Fix Sema::checkArgCount for 0-arg functions (PR #139638)

2025-05-13 Thread Mariya Podchishchaeva via cfe-commits
@@ -52,7 +52,7 @@ static bool CheckWasmBuiltinArgIsInteger(Sema &S, CallExpr *E, } bool SemaWasm::BuiltinWasmRefNullExtern(CallExpr *TheCall) { - if (TheCall->getNumArgs() != 0) + if (SemaRef.checkArgCount(TheCall, 0)) Fznamznon wrote: ```suggestion if (S

[clang] [Clang] Fix Sema::checkArgCount for 0-arg functions (PR #139638)

2025-05-13 Thread Mariya Podchishchaeva via cfe-commits
@@ -168,7 +168,7 @@ bool Sema::checkArgCount(CallExpr *Call, unsigned DesiredArgCount) { Fznamznon wrote: Maybe also assert that `ArgCount > 0`? In case `checkArgCountAtLeast` becomes broken. https://github.com/llvm/llvm-project/pull/139638 _

[clang] [Clang] Fix Sema::checkArgCount for 0-arg functions (PR #139638)

2025-05-13 Thread Mariya Podchishchaeva via cfe-commits
@@ -62,12 +62,8 @@ bool SemaWasm::BuiltinWasmRefNullExtern(CallExpr *TheCall) { bool SemaWasm::BuiltinWasmRefNullFunc(CallExpr *TheCall) { ASTContext &Context = getASTContext(); - if (TheCall->getNumArgs() != 0) { -Diag(TheCall->getBeginLoc(), diag::err_typecheck_call_t

[clang] [Clang] Fix Sema::checkArgCount for 0-arg functions (PR #139638)

2025-05-13 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon edited https://github.com/llvm/llvm-project/pull/139638 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-05-12 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon edited https://github.com/llvm/llvm-project/pull/139566 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-05-12 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon edited https://github.com/llvm/llvm-project/pull/139566 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [win][clang] Align scalar deleting destructors with MSABI (PR #139566)

2025-05-12 Thread Mariya Podchishchaeva via cfe-commits
https://github.com/Fznamznon created https://github.com/llvm/llvm-project/pull/139566 While working on vector deleting destructors support (GH19772), I noticed that MSVC produces different code in scalar deleting destructor body depending on whether class defined its own operator delete. In MS

  1   2   3   4   5   6   7   8   9   10   >