[clang] [clang] Rewrite tests relying on shell environment variable features (PR #156904)

2025-09-04 Thread Reid Kleckner via cfe-commits
https://github.com/rnk approved this pull request. https://github.com/llvm/llvm-project/pull/156904 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] MicrosoftMangle: pick correct tagdecl for mangling tagkind (PR #155662)

2025-08-28 Thread Reid Kleckner via cfe-commits
@@ -3246,13 +3246,17 @@ void MicrosoftCXXNameMangler::mangleTagTypeKind(TagTypeKind TTK) { } void MicrosoftCXXNameMangler::mangleType(const EnumType *T, Qualifiers, SourceRange) { - mangleType(cast(T)->getOriginalDecl()->getDefinitionO

[clang] [clang][Sema] Shard out SemaTests into their own binary (PR #155548)

2025-08-28 Thread Reid Kleckner via cfe-commits
https://github.com/rnk approved this pull request. PTAL, I edited the comment. The fact that the number of tests is small doesn't really relate to the costs of having a distinct test target, it has more to do with the size of the dependency graph. https://github.com/llvm/llvm-project/pull/1555

[clang] [clang][Sema] Shard out SemaTests into their own binary (PR #155548)

2025-08-28 Thread Reid Kleckner via cfe-commits
https://github.com/rnk updated https://github.com/llvm/llvm-project/pull/155548 >From 893813ce1e131f5a2948f0ab9745c87b67baf33e Mon Sep 17 00:00:00 2001 From: Nathan Ridge Date: Wed, 27 Aug 2025 00:28:40 -0400 Subject: [PATCH 1/2] [clang][Sema] Shard out SemaTests into their own binary --- clan

[clang] [clang][Sema] Shard out SemaTests into their own binary (PR #155548)

2025-08-28 Thread Reid Kleckner via cfe-commits
rnk wrote: > I do my local build with -DBUILD_SHARED_LIBS=ON, so these are probably not > the numbers you're looking for, but for the record, in my local build (which > is a debug build), SemaTests is 6.7 MB, and clang is 2.1 MB. By comparison, > AllClangUnitTests is 199.3 MB. Yeah, the BUILD

[clang] [clang][Sema] Shard out SemaTests into their own binary (PR #155548)

2025-08-27 Thread Reid Kleckner via cfe-commits
https://github.com/rnk requested changes to this pull request. https://github.com/llvm/llvm-project/pull/155548 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Sema] Shard out SemaTests into their own binary (PR #155548)

2025-08-27 Thread Reid Kleckner via cfe-commits
@@ -1,4 +1,7 @@ -add_clang_unittest(SemaTests +# There are only a small number of tests here, +# allow running them without building all of +# AllClangUnitTests. rnk wrote: If you look at the list of transitive dependencies below, I expect the SemaTests binary w

[clang] Thread Safety Analysis: Graduate ACQUIRED_BEFORE() and ACQUIRED_AFTER() from beta features (PR #152853)

2025-08-27 Thread Reid Kleckner via cfe-commits
rnk wrote: Please add a release note about the warning behavior change, I can stamp it. https://github.com/llvm/llvm-project/pull/152853 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [llvm] Enable LLVM_LINK_LLVM_DYLIB by default on non-Windows platforms (PR #138187)

2025-08-25 Thread Reid Kleckner via cfe-commits
https://github.com/rnk updated https://github.com/llvm/llvm-project/pull/138187 >From 7e23666e3366101d635648faf95aaf7245643b4e Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Wed, 30 Apr 2025 16:32:32 -0700 Subject: [PATCH 1/7] [llvm] Enable LLVM_LINK_LLVM_DYLIB by default on non-Windows pla

[clang] [llvm] [llvm] Enable LLVM_LINK_LLVM_DYLIB by default on non-Windows platforms (PR #138187)

2025-08-25 Thread Reid Kleckner via cfe-commits
https://github.com/rnk updated https://github.com/llvm/llvm-project/pull/138187 >From 7e23666e3366101d635648faf95aaf7245643b4e Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Wed, 30 Apr 2025 16:32:32 -0700 Subject: [PATCH 1/6] [llvm] Enable LLVM_LINK_LLVM_DYLIB by default on non-Windows pla

[clang] [llvm] [llvm] Enable LLVM_LINK_LLVM_DYLIB by default on non-Windows platforms (PR #138187)

2025-08-25 Thread Reid Kleckner via cfe-commits
https://github.com/rnk updated https://github.com/llvm/llvm-project/pull/138187 >From 7e23666e3366101d635648faf95aaf7245643b4e Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Wed, 30 Apr 2025 16:32:32 -0700 Subject: [PATCH 1/5] [llvm] Enable LLVM_LINK_LLVM_DYLIB by default on non-Windows pla

[clang] [llvm] [llvm] Enable LLVM_LINK_LLVM_DYLIB by default on non-Windows platforms (PR #138187)

2025-08-25 Thread Reid Kleckner via cfe-commits
rnk wrote: > What about LLVM_TOOL_LLVM_DRIVER_BUILD? Maybe consider enabling it by default > on non-Windows platforms? The driver build is great and useful, but for reasons discussed in the RFC, I don't think it makes a great default build configuration. It only solves the static linking scal

[clang] [llvm] [llvm] Enable LLVM_LINK_LLVM_DYLIB by default on non-Windows platforms (PR #138187)

2025-08-25 Thread Reid Kleckner via cfe-commits
@@ -20,7 +20,6 @@ target_link_libraries(CoreTests LLVMBOLTRewrite LLVMBOLTProfile LLVMBOLTUtils - LLVMTestingSupport ) rnk wrote: Will do https://github.com/llvm/llvm-project/pull/138187 ___ cfe-commits ma

[clang] [KeyInstr] Enable -gkey-instructions by default if optimisations are enabled (PR #149509)

2025-08-11 Thread Reid Kleckner via cfe-commits
rnk wrote: I think you've all gone above and beyond to pay for the (marginal) cost increase from this feature, and we should go ahead and land this. Thanks for all the hard work and data gathering! https://github.com/llvm/llvm-project/pull/149509 ___

[clang] [Docs] Some updates to the Clang user's manual (PR #151702)

2025-08-01 Thread Reid Kleckner via cfe-commits
https://github.com/rnk approved this pull request. Thanks for the updates! https://github.com/llvm/llvm-project/pull/151702 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Allow packing fields into tail padding of record fields (PR #122197)

2025-07-16 Thread Reid Kleckner via cfe-commits
@@ -803,10 +804,16 @@ bool ConstStructBuilder::Build(const InitListExpr *ILE, bool AllowOverwrite) { if (!AppendField(Field, Layout.getFieldOffset(FieldNo), EltInit, AllowOverwrite)) return false; - // After emitting a non-empty field

[clang] Allow packing fields into tail padding of record fields (PR #122197)

2025-07-16 Thread Reid Kleckner via cfe-commits
@@ -803,10 +804,16 @@ bool ConstStructBuilder::Build(const InitListExpr *ILE, bool AllowOverwrite) { if (!AppendField(Field, Layout.getFieldOffset(FieldNo), EltInit, AllowOverwrite)) return false; - // After emitting a non-empty field

[clang] Allow packing fields into tail padding of record fields (PR #122197)

2025-07-16 Thread Reid Kleckner via cfe-commits
https://github.com/rnk edited https://github.com/llvm/llvm-project/pull/122197 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Allow packing fields into tail padding of record fields (PR #122197)

2025-07-16 Thread Reid Kleckner via cfe-commits
https://github.com/rnk commented: I had some pending draft comments from back when this was active. My recollection is that this is actually quite difficult and I am not likely to have time in the near future to work on it. https://github.com/llvm/llvm-project/pull/122197

[clang] Allow packing fields into tail padding of record fields (PR #122197)

2025-07-16 Thread Reid Kleckner via cfe-commits
@@ -389,14 +389,28 @@ void CGRecordLowering::accumulateFields(bool isNonVirtualBaseType) { // Empty fields have no storage. ++Field; } else { - // Use base subobject layout for the potentially-overlapping field, - // as it is done in RecordLayoutBuild

[clang] Reapply "[cmake] Refactor clang unittest cmake" (PR #134195)

2025-06-30 Thread Reid Kleckner via cfe-commits
rnk wrote: > Do I understand correctly that, as a result of this commit, the SemaTests > target no longer exists, and to work on / run the tests that it used to > include (such as HeuristicResolverTest.cpp), I have to build the > ClangdUnitTests target, which requires building 1000+ test sourc

[clang] [llvm] [llvm] Enable LLVM_LINK_LLVM_DYLIB by default on non-Windows platforms (PR #138187)

2025-06-26 Thread Reid Kleckner via cfe-commits
@@ -20,7 +20,6 @@ target_link_libraries(CoreTests LLVMBOLTRewrite LLVMBOLTProfile LLVMBOLTUtils - LLVMTestingSupport ) rnk wrote: This removal here was interesting. Bolt doesn't support the LLVM dylib build, and it tries to disable linking the LLVM

[clang] [llvm] [llvm] Enable LLVM_LINK_LLVM_DYLIB by default on non-Windows platforms (PR #138187)

2025-06-26 Thread Reid Kleckner via cfe-commits
https://github.com/rnk updated https://github.com/llvm/llvm-project/pull/138187 >From 7e23666e3366101d635648faf95aaf7245643b4e Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Wed, 30 Apr 2025 16:32:32 -0700 Subject: [PATCH 1/5] [llvm] Enable LLVM_LINK_LLVM_DYLIB by default on non-Windows pla

[clang] [llvm] [llvm] Enable LLVM_LINK_LLVM_DYLIB by default on non-Windows platforms (PR #138187)

2025-06-25 Thread Reid Kleckner via cfe-commits
https://github.com/rnk updated https://github.com/llvm/llvm-project/pull/138187 >From 7e23666e3366101d635648faf95aaf7245643b4e Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Wed, 30 Apr 2025 16:32:32 -0700 Subject: [PATCH 1/4] [llvm] Enable LLVM_LINK_LLVM_DYLIB by default on non-Windows pla

[clang] Reapply "[Clang, debuginfo] added vtt parameter in destructor DISubroutineType (#130674)" (PR #145697)

2025-06-25 Thread Reid Kleckner via cfe-commits
rnk wrote: cc @mgschossmann https://github.com/llvm/llvm-project/pull/145697 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Reapply "[Clang, debuginfo] added vtt parameter in destructor DISubroutineType (#130674)" (PR #145697)

2025-06-25 Thread Reid Kleckner via cfe-commits
https://github.com/rnk edited https://github.com/llvm/llvm-project/pull/145697 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Reapply "[Clang, debuginfo] added vtt parameter in destructor DISubroutineType (#130674)" (PR #145697)

2025-06-25 Thread Reid Kleckner via cfe-commits
https://github.com/rnk edited https://github.com/llvm/llvm-project/pull/145697 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Reapply "[Clang, debuginfo] added vtt parameter in destructor DISubroutineType (#130674)" (PR #145697)

2025-06-25 Thread Reid Kleckner via cfe-commits
https://github.com/rnk created https://github.com/llvm/llvm-project/pull/145697 This reverts commit cd826d6e840ed33ad88458c862da5f9fcc6e908c. I tweaked the code to avoid an OOB, but I'm not 100% confident that it is correct. >From f5e4eee77cefdbe7d11826723306163337926ee4 Mon Sep 17 00:00:00 20

[clang] Reapply "[Win/X86] Make _m_prefetch[w] builtins to avoid winnt.h conflicts (#115099)" (PR #138360)

2025-06-24 Thread Reid Kleckner via cfe-commits
https://github.com/rnk closed https://github.com/llvm/llvm-project/pull/138360 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Register all LLVM targets in AllClangUnitTest main (PR #144428)

2025-06-19 Thread Reid Kleckner via cfe-commits
@@ -117,6 +117,7 @@ get_property(LINK_LIBS GLOBAL PROPERTY CLANG_UNITTEST_LINK_LIBS) get_property(LLVM_COMPONENTS GLOBAL PROPERTY CLANG_UNITTEST_LLVM_COMPONENTS) add_distinct_clang_unittest(AllClangUnitTests ${SRCS} + AllClangUnitTests.cpp rnk wrote: Yeah,

[clang] [clang] Register all LLVM targets in AllClangUnitTest main (PR #144428)

2025-06-19 Thread Reid Kleckner via cfe-commits
https://github.com/rnk updated https://github.com/llvm/llvm-project/pull/144428 >From afb050103754e6b4656c68da8ddfb6b1a4e03e5d Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Mon, 16 Jun 2025 20:08:12 + Subject: [PATCH 1/5] [clang] Register all LLVM targets in AllClangUnitTest main Addr

[clang] [llvm] Fix Windows EH IP2State tables (remove +1 bias) (PR #144745)

2025-06-18 Thread Reid Kleckner via cfe-commits
rnk wrote: > The entries in the IP2State table contain byte offsets within the instruction > stream of the function. The Windows ABI requires that these offsets are > aligned to instruction boundaries; they are not permitted to point to a byte > that is not the first byte of an instruction. >

[clang] [llvm] [Reland] [PowerPC] frontend get target feature from backend with cpu name (PR #144594)

2025-06-18 Thread Reid Kleckner via cfe-commits
https://github.com/rnk approved this pull request. Thanks, go for it. This doesn't match the `-gen-x-target-def` pattern used for ARM, AArch64, and RISCV, but it's target-generic, which seems nice. https://github.com/llvm/llvm-project/pull/144594 ___

[clang] [clang] Register all LLVM targets in AllClangUnitTest main (PR #144428)

2025-06-17 Thread Reid Kleckner via cfe-commits
https://github.com/rnk updated https://github.com/llvm/llvm-project/pull/144428 >From afb050103754e6b4656c68da8ddfb6b1a4e03e5d Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Mon, 16 Jun 2025 20:08:12 + Subject: [PATCH 1/4] [clang] Register all LLVM targets in AllClangUnitTest main Addr

[clang] [clang] Register all LLVM targets in AllClangUnitTest main (PR #144428)

2025-06-17 Thread Reid Kleckner via cfe-commits
https://github.com/rnk updated https://github.com/llvm/llvm-project/pull/144428 >From afb050103754e6b4656c68da8ddfb6b1a4e03e5d Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Mon, 16 Jun 2025 20:08:12 + Subject: [PATCH 1/3] [clang] Register all LLVM targets in AllClangUnitTest main Addr

[clang] [clang] Register all LLVM targets in AllClangUnitTest main (PR #144428)

2025-06-17 Thread Reid Kleckner via cfe-commits
https://github.com/rnk edited https://github.com/llvm/llvm-project/pull/144428 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Register all LLVM targets in AllClangUnitTest main (PR #144428)

2025-06-17 Thread Reid Kleckner via cfe-commits
@@ -0,0 +1,24 @@ +//===- clang/unittests/AllClangUnitTests.cpp --===// +// +// 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] [clang] Register all LLVM targets in AllClangUnitTest main (PR #144428)

2025-06-17 Thread Reid Kleckner via cfe-commits
@@ -117,6 +117,7 @@ get_property(LINK_LIBS GLOBAL PROPERTY CLANG_UNITTEST_LINK_LIBS) get_property(LLVM_COMPONENTS GLOBAL PROPERTY CLANG_UNITTEST_LLVM_COMPONENTS) add_distinct_clang_unittest(AllClangUnitTests ${SRCS} + AllClangUnitTests.cpp rnk wrote: I spo

[clang] [clang] Register all LLVM targets in AllClangUnitTest main (PR #144428)

2025-06-17 Thread Reid Kleckner via cfe-commits
@@ -0,0 +1,24 @@ +//===- clang/unittests/AllClangUnitTests.cpp --===// +// +// 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] [Reland] [PowerPC] frontend get target feature from backend with cpu name (PR #144594)

2025-06-17 Thread Reid Kleckner via cfe-commits
@@ -0,0 +1,191 @@ +//===- EmitTargetFeature.cpp - Generate CPU Targer feature ===// rnk wrote: typo https://github.com/llvm/llvm-project/pull/144594 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://l

[clang] [llvm] [Reland] [PowerPC] frontend get target feature from backend with cpu name (PR #144594)

2025-06-17 Thread Reid Kleckner via cfe-commits
@@ -0,0 +1,191 @@ +//===- EmitTargetFeature.cpp - Generate CPU Targer feature ===// +// +// 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: Apache-2.0 WITH

[clang] [clang] Add release note for int->enum conversion change. (PR #144407)

2025-06-16 Thread Reid Kleckner via cfe-commits
https://github.com/rnk approved this pull request. https://github.com/llvm/llvm-project/pull/144407 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Add missing intrinsics to cuda headers (PR #143664)

2025-06-16 Thread Reid Kleckner via cfe-commits
https://github.com/rnk approved this pull request. @erichkeane, thanks for looking into it, no worries if nobody gets back. I think we should go ahead and land this in the mean time. https://github.com/llvm/llvm-project/pull/143664 ___ cfe-commits mai

[clang] [clang] Check constexpr int->enum conversions consistently. (PR #143034)

2025-06-16 Thread Reid Kleckner via cfe-commits
rnk wrote: If we've had fixes available for years, I think backporting them would be the right call, but this seems like it might be a release-note-worthy change. https://github.com/llvm/llvm-project/pull/143034 ___ cfe-commits mailing list cfe-commit

[clang] [clang] Merge gtest binaries into AllClangUnitTests (PR #134196)

2025-06-13 Thread Reid Kleckner via cfe-commits
rnk wrote: > Would it make sense to have a custom main for AllClangUnitTests and register > all targets, just like clang driver does? That sounds reasonable. I toyed with the idea of putting the registration into a static initializer, but it raises the question of where you put it. Putting it

[clang] [clang] Check constexpr int->enum conversions consistently. (PR #143034)

2025-06-13 Thread Reid Kleckner via cfe-commits
rnk wrote: Internally, we discovered that this patch breaks Boost as used by MySQL. I don't have a full external reproducer at the moment and I don't know whether the code is valid or not, but I wanted to give a heads up that we may need to revisit this. This seems like the kind of incompatibi

[clang] [clang][ARM][AArch64] Reapply "Define intrinsics guarded by __has_builtin on all platforms (#128222)" (PR #140910)

2025-06-13 Thread Reid Kleckner via cfe-commits
rnk wrote: > To be clear you mean modify Clang's intrin.h to include arm_acle.h when on > supported targets Yep! https://github.com/llvm/llvm-project/pull/140910 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/m

[clang] cbf27bf - Revert " [PowerPC] frontend get target feature from backend with cpu name (#137670)"

2025-06-12 Thread Reid Kleckner via cfe-commits
Author: Reid Kleckner Date: 2025-06-12T19:56:41Z New Revision: cbf27bf711c08c34185f05ca5edbfa61bd3786e2 URL: https://github.com/llvm/llvm-project/commit/cbf27bf711c08c34185f05ca5edbfa61bd3786e2 DIFF: https://github.com/llvm/llvm-project/commit/cbf27bf711c08c34185f05ca5edbfa61bd3786e2.diff LOG:

[clang] [llvm] [PowerPC] frontend get target feature from backend with cpu name (PR #137670)

2025-06-12 Thread Reid Kleckner via cfe-commits
@@ -8,6 +8,12 @@ if (HAS_WERROR_GLOBAL_CTORS AND NOT LLVM_HAS_NOGLOBAL_CTOR_MUTEX) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror=global-constructors") endif() +set(LLVM_TARGET_DEFINITIONS ${LLVM_MAIN_SRC_DIR}/lib/Target/PowerPC/PPC.td) + +tablegen(LLVM PPCGenSubtargetInfo

[clang] Add missing intrinsics to cuda headers (PR #143664)

2025-06-11 Thread Reid Kleckner via cfe-commits
rnk wrote: Erich, is there a good point-of-contact at nvidia who can review CUDA intrinsic header changes in the future? https://github.com/llvm/llvm-project/pull/143664 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cg

[clang] Reapply "[clang][ARM][AArch64] Define intrinsics guarded by __has_builtin on all platforms" (#128222)" (PR #140910)

2025-06-03 Thread Reid Kleckner via cfe-commits
https://github.com/rnk approved this pull request. Yep, feel free to reland this. https://github.com/llvm/llvm-project/pull/140910 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Sema] Fix and reapply 'Declare builtins used in #pragma intrinsic #138205' (PR #142019)

2025-06-02 Thread Reid Kleckner via cfe-commits
https://github.com/rnk approved this pull request. Wow. Thanks for debugging it! I assumed this had more to do with intrin0.h than the namespaces in the libc++ string header. https://github.com/llvm/llvm-project/pull/142019 ___ cfe-commits mailing lis

[clang] [Modules] Don't fail when an unused textual header is missing. (PR #138227)

2025-05-23 Thread Reid Kleckner via cfe-commits
rnk wrote: (This is mostly written wearing my "Googler" hat, not the clang area team lead hat) There's been a lot of discussion of what the exact use case is. I think it's helpful to share the context that Google essentially uses Clang header modules to wrap generated proto headers, and this

[clang] [Sema] Warn about omitting deprecated enumerator in switch (PR #138562)

2025-05-22 Thread Reid Kleckner via cfe-commits
https://github.com/rnk approved this pull request. Thanks! https://github.com/llvm/llvm-project/pull/138562 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Sema] Warn about omitting deprecated enumerator in switch (PR #138562)

2025-05-21 Thread Reid Kleckner via cfe-commits
@@ -6009,6 +6009,8 @@ def note_not_found_by_two_phase_lookup : Note<"%0 should be declared prior to th def err_undeclared_use : Error<"use of undeclared %0">; def warn_deprecated : Warning<"%0 is deprecated">, InGroup; +def warn_deprecated_switch_case : Warning<"%0 is depr

[clang] [Sema] Warn about omitting deprecated enumerator in switch (PR #138562)

2025-05-20 Thread Reid Kleckner via cfe-commits
rnk wrote: > I think silencing the warning is better than suggesting a default case, which > may not be considered good practice. I'm not sure, I think our perspectives as compiler people might be a bit off base. We're always forming closed algebraic sum types, like variants, AST nodes, that

[clang] [Sema] Warn about omitting deprecated enumerator in switch (PR #138562)

2025-05-20 Thread Reid Kleckner via cfe-commits
https://github.com/rnk edited https://github.com/llvm/llvm-project/pull/138562 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Sema] Warn about omitting deprecated enumerator in switch (PR #138562)

2025-05-20 Thread Reid Kleckner via cfe-commits
https://github.com/rnk commented: I'm OK with this, but I feel like this is creating scope creep. Now we have a special Wdeprecated-declarations carveouts for switches, but if you unpack the switch into if / else chain comparisons, you get deprecation warnings. Should we disable deprecation wa

[clang] [Sema] Warn about omitting deprecated enumerator in switch (PR #138562)

2025-05-20 Thread Reid Kleckner via cfe-commits
@@ -6767,6 +6767,9 @@ class Sema final : public SemaBase { }; std::optional DelayedDefaultInitializationContext; +/// Whether evaluating an expression for a switch case label. rnk wrote: supernit: pack it with the contextual bools above, for both

[clang] [clang][Sema] Don't warn for implicit uses of builtins in system headers (PR #138205)

2025-05-19 Thread Reid Kleckner via cfe-commits
https://github.com/rnk approved this pull request. Nice, looks good, thanks for implementing this! https://github.com/llvm/llvm-project/pull/138205 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/

[clang] [clang][Sema] Don't warn for implicit uses of builtins in system headers (PR #138205)

2025-05-16 Thread Reid Kleckner via cfe-commits
@@ -1825,6 +1825,11 @@ class Sema final : public SemaBase { /// Set of no-builtin functions listed by \#pragma function. llvm::SmallSetVector MSFunctionNoBuiltins; + /// Map of BuiltinIDs to source locations that have #pragma intrinsic calls + /// that refer to them. +

[clang] [clang][Sema] Don't warn for implicit uses of builtins in system headers (PR #138205)

2025-05-16 Thread Reid Kleckner via cfe-commits
https://github.com/rnk commented: Thanks! https://github.com/llvm/llvm-project/pull/138205 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Sema] Don't warn for implicit uses of builtins in system headers (PR #138205)

2025-05-16 Thread Reid Kleckner via cfe-commits
https://github.com/rnk edited https://github.com/llvm/llvm-project/pull/138205 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][CGRecordLayout] Remove dependency on isZeroSize (PR #96422)

2025-05-16 Thread Reid Kleckner via cfe-commits
rnk wrote: Sorry to hear about the issue. I think the way this is supposed to work is that the clang frontend target ABIInfo is supposed to carefully construct struct types that cause the backend to pass the C struct type correctly in registers and memory. See for example clang/lib/CodeGen/Tar

[clang] [llvm] Add macro to suppress -Wunnecessary-virtual-specifier (PR #139614)

2025-05-15 Thread Reid Kleckner via cfe-commits
https://github.com/rnk approved this pull request. This looks good, but I'd give it another day to give other reviewers an opportunity to comment. https://github.com/llvm/llvm-project/pull/139614 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [llvm] Add macro to suppress -Wunnecessary-virtual-specifier (PR #139614)

2025-05-14 Thread Reid Kleckner via cfe-commits
rnk wrote: > Or we think no one else does this anchor business, and in that case... why > are we doing it? Anchoring debug information out of a header and into a .cpp file can be a powerful optimization. I added a key method to Sema in 586f65d31f32ca6bc8cfdb8a4f61bee5057bf6c8 and it resulted

[clang] [llvm] Add macro to suppress -Wunnecessary-virtual-specifier (PR #139614)

2025-05-14 Thread Reid Kleckner via cfe-commits
@@ -710,4 +710,17 @@ void AnnotateIgnoreWritesEnd(const char *file, int line); #define LLVM_PREFERRED_TYPE(T) #endif +/// \macro LLVM_VIRTUAL_ANCHOR_FUNCTION +/// This macro is used to adhere to LLVM's policy that each class with a vtable +/// must have at least one out-of-lin

[clang] [llvm] Add macro to suppress -Wunnecessary-virtual-specifier (PR #139614)

2025-05-14 Thread Reid Kleckner via cfe-commits
https://github.com/rnk commented: I thought we'd have more anchors, honestly. Maybe these are just the overriding ones. https://github.com/llvm/llvm-project/pull/139614 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi

[clang] [llvm] Add macro to suppress -Wunnecessary-virtual-specifier (PR #139614)

2025-05-14 Thread Reid Kleckner via cfe-commits
https://github.com/rnk edited https://github.com/llvm/llvm-project/pull/139614 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Merge gtest binaries into AllClangUnitTests (PR #134196)

2025-05-12 Thread Reid Kleckner via cfe-commits
@@ -304,7 +304,7 @@ getCodeModel(const CodeGenOptions &CodeGenOpts) { .Case("kernel", llvm::CodeModel::Kernel) .Case("medium", llvm::CodeModel::Medium) .Case("large", llvm::CodeModel::Large) -

[clang] Reapply "[Win/X86] Make _m_prefetch[w] builtins to avoid winnt.h conflicts (#115099)" (PR #138360)

2025-05-09 Thread Reid Kleckner via cfe-commits
@@ -138,6 +138,12 @@ let Attributes = [Const, NoThrow, RequiredVectorWidth<256>], Features = "avx" in } } +// PRFCHW +let Features = "prfchw", Header = "intrin.h", Attributes = [NoThrow, Const] in { rnk wrote: Looks like I actually had a pending change to

[clang] Reapply "[Win/X86] Make _m_prefetch[w] builtins to avoid winnt.h conflicts (#115099)" (PR #138360)

2025-05-09 Thread Reid Kleckner via cfe-commits
https://github.com/rnk updated https://github.com/llvm/llvm-project/pull/138360 Rate limit · GitHub body { background-color: #f6f8fa; color: #24292e; font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,

[clang] Reapply "[Win/X86] Make _m_prefetch[w] builtins to avoid winnt.h conflicts (#115099)" (PR #138360)

2025-05-09 Thread Reid Kleckner via cfe-commits
https://github.com/rnk updated https://github.com/llvm/llvm-project/pull/138360 Rate limit · GitHub body { background-color: #f6f8fa; color: #24292e; font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,

[clang] [clang] Deflake the TimeProfile support tests (PR #138613)

2025-05-08 Thread Reid Kleckner via cfe-commits
https://github.com/rnk closed https://github.com/llvm/llvm-project/pull/138613 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Merge gtest binaries into AllClangUnitTests (PR #134196)

2025-05-05 Thread Reid Kleckner via cfe-commits
rnk wrote: I hacked together a workaround here: https://github.com/llvm/llvm-project/pull/138613 I'm mostly just guessing remotely, since I don't have a reliable repro, that the final PerformPending... event is rounding into the previous event group that just ended. If the JSON encodes this n

[clang] [clang] Deflake the TimeProfile support tests (PR #138613)

2025-05-05 Thread Reid Kleckner via cfe-commits
https://github.com/rnk created https://github.com/llvm/llvm-project/pull/138613 These tests have been flaky since they were merged into the AllClangUnitTests binary, but the flakiness is inherent to the nature of timer-based tests. >From 935546b1d9f41b0dc1d6628bb641554186a0fb17 Mon Sep 17 00:00

[clang] [Sema] Warn about omitting deprecated enumerator in switch (PR #138562)

2025-05-05 Thread Reid Kleckner via cfe-commits
https://github.com/rnk commented: Thanks! I think this is sufficiently niche that we don't need a flag flip to manage the diagnostic change fallout. https://github.com/llvm/llvm-project/pull/138562 ___ cfe-commits mailing list cfe-commits@lists.llvm.o

[clang] [Sema] Warn about omitting deprecated enumerator in switch (PR #138562)

2025-05-05 Thread Reid Kleckner via cfe-commits
@@ -15,7 +15,7 @@ enum SwitchTwo { }; void testSwitchTwo(enum SwitchTwo st) { - switch (st) {} // expected-warning{{enumeration values 'Vim' and 'Emacs' not handled in switch}} + switch (st) {} // expected-warning{{enumeration values 'Ed', 'Vim' and 'Emacs' not handled in

[clang] [Sema] Warn about omitting deprecated enumerator in switch (PR #138562)

2025-05-05 Thread Reid Kleckner via cfe-commits
https://github.com/rnk edited https://github.com/llvm/llvm-project/pull/138562 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang,debuginfo] added vtt parameter in destructor DISubroutineType (PR #130674)

2025-05-05 Thread Reid Kleckner via cfe-commits
Markus =?utf-8?q?Gschoßmann?= , Markus =?utf-8?q?Gschoßmann?= , Markus =?utf-8?q?Gschoßmann?= , Markus =?utf-8?q?Gschoßmann?= Message-ID: In-Reply-To: rnk wrote: I attempted to reapply this patch, but the BPF test which I added fails with this test for reasons I don't understand. @mgschossman

[clang] [llvm] [mlir] [ErrorHandling] Add reportFatalInternalError + reportFatalUsageError (NFC) (PR #138251)

2025-05-02 Thread Reid Kleckner via cfe-commits
https://github.com/rnk approved this pull request. https://github.com/llvm/llvm-project/pull/138251 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][Sema] Don't warn for implicit uses of builtins in system headers (PR #138205)

2025-05-02 Thread Reid Kleckner via cfe-commits
rnk wrote: > follow what we did for _m_prefetchw, but it seems the same idea was tried > there but that was also reverted for what seems to be the same exact problem. > See https://github.com/llvm/llvm-project/pull/115099 and revert > [here](https://github.com/llvm/llvm-project/commit/83ff9d4a

[clang] [Win/X86] Make _m_prefetch[w] builtins to avoid winnt.h conflicts (PR #115099)

2025-05-02 Thread Reid Kleckner via cfe-commits
@@ -138,6 +142,12 @@ let Attributes = [Const, NoThrow, RequiredVectorWidth<256>], Features = "avx" in } } +// PRFCHW +let Features = "prfchw", Header = "x86intrin.h", Attributes = [NoThrow, Const] in { + def _m_prefetch : X86LibBuiltin<"void(void *)">; rn

[clang] Reapply "[Win/X86] Make _m_prefetch[w] builtins to avoid winnt.h conflicts (#115099)" (PR #138360)

2025-05-02 Thread Reid Kleckner via cfe-commits
https://github.com/rnk created https://github.com/llvm/llvm-project/pull/138360 This reverts commit 83ff9d4a34b1e579dd809759d13b70b8837f0cde. Don't change the builtin signature of _mm_prefetch this time. >From 7da648bdd03a2fce7ab214f0425efb3a1ec1f4fe Mon Sep 17 00:00:00 2001 From: Reid Kleckne

[clang] [clang] Merge gtest binaries into AllClangUnitTests (PR #134196)

2025-05-02 Thread Reid Kleckner via cfe-commits
rnk wrote: > FWIW, I'm seeing the test failure on Windows x64 with a debug build of > Clang's unit tests as of a fresh fetch of main this morning. Sorry about that! I leaned on the Windows premerge tests to find Windows issues (they did, that was useful), but I'm pretty sure it uses release, n

[clang] [clang] Merge gtest binaries into AllClangUnitTests (PR #134196)

2025-05-01 Thread Reid Kleckner via cfe-commits
rnk wrote: Are the `CodeGenTest.TestNonAlterTest` failures still an issue? I don't see that failure on any bots. I haven't gotten any reports. https://github.com/llvm/llvm-project/pull/134196 ___ cfe-commits mailing list cfe-commits@lists.llvm.org htt

[clang] [clang] Shard out some small gtest binaries (PR #138021)

2025-04-30 Thread Reid Kleckner via cfe-commits
https://github.com/rnk closed https://github.com/llvm/llvm-project/pull/138021 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Reland: [llvm][clang] Allocate a new stack instead of spawning a new thread to get more stack space (PR #136046)

2025-04-30 Thread Reid Kleckner via cfe-commits
https://github.com/rnk approved this pull request. https://github.com/llvm/llvm-project/pull/136046 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Merge gtest binaries into AllClangUnitTests (PR #134196)

2025-04-30 Thread Reid Kleckner via cfe-commits
rnk wrote: > `BasicTests` and `FormatTests` had fairly few deps (they didn't need Sema > etc) and compiled much fewer files than they presumably now do. Does it make > sense to keep those as distinct binaries? FormatTests has many clang dependencies, but after rebuilding, it looks like it's s

[clang] [clang] Merge gtest binaries into AllClangUnitTests (PR #134196)

2025-04-29 Thread Reid Kleckner via cfe-commits
rnk wrote: I disabled the failing test in 743c32eb8195c248c699c61ffbac141947b8e6ab. https://github.com/llvm/llvm-project/pull/134196 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] 743c32e - [clang] Disable libclang abort death test after merging unittests

2025-04-29 Thread Reid Kleckner via cfe-commits
Author: Reid Kleckner Date: 2025-04-29T11:27:58-07:00 New Revision: 743c32eb8195c248c699c61ffbac141947b8e6ab URL: https://github.com/llvm/llvm-project/commit/743c32eb8195c248c699c61ffbac141947b8e6ab DIFF: https://github.com/llvm/llvm-project/commit/743c32eb8195c248c699c61ffbac141947b8e6ab.diff

[clang] [clang] Merge gtest binaries into AllClangUnitTests (PR #134196)

2025-04-29 Thread Reid Kleckner via cfe-commits
rnk wrote: I attempted to repro on my macbook, but it doesn't reproduce. This test doesn't seem high value, and I thin kthe right next step is to disable it to green the bots before debugging it. https://github.com/llvm/llvm-project/pull/134196 ___ c

[clang] [clang] Merge gtest binaries into AllClangUnitTests (PR #134196)

2025-04-29 Thread Reid Kleckner via cfe-commits
https://github.com/rnk closed https://github.com/llvm/llvm-project/pull/134196 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Merge gtest binaries into AllClangUnitTests (PR #134196)

2025-04-28 Thread Reid Kleckner via cfe-commits
rnk wrote: If anyone is looking for stories about the value of premerge testing, I was all set to push this tonight, but I saw the linux premerge test failure. I debugged it, and it turns out to be a subtle interaction where if you run Clang codegen with registered targets but no registered Ta

[clang] [clang] Merge gtest binaries into AllClangUnitTests (PR #134196)

2025-04-28 Thread Reid Kleckner via cfe-commits
https://github.com/rnk updated https://github.com/llvm/llvm-project/pull/134196 >From 528be44ebae8ea5cd7f23c51ad11c314a73f152b Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Fri, 28 Mar 2025 22:11:05 -0700 Subject: [PATCH 1/9] [clang] Merge gtest binaries into AllClangUnitTests This reduces

[clang] [clang] Merge gtest binaries into AllClangUnitTests (PR #134196)

2025-04-28 Thread Reid Kleckner via cfe-commits
https://github.com/rnk updated https://github.com/llvm/llvm-project/pull/134196 >From 528be44ebae8ea5cd7f23c51ad11c314a73f152b Mon Sep 17 00:00:00 2001 From: Reid Kleckner Date: Fri, 28 Mar 2025 22:11:05 -0700 Subject: [PATCH 1/8] [clang] Merge gtest binaries into AllClangUnitTests This reduces

[clang] ccdd55c - [clang] Fix unused variable warning in MS mangler from constant matrix patch

2025-04-26 Thread Reid Kleckner via cfe-commits
Author: Reid Kleckner Date: 2025-04-26T09:17:56-07:00 New Revision: ccdd55c518277d749eff878ffcb5ca3de55c2a60 URL: https://github.com/llvm/llvm-project/commit/ccdd55c518277d749eff878ffcb5ca3de55c2a60 DIFF: https://github.com/llvm/llvm-project/commit/ccdd55c518277d749eff878ffcb5ca3de55c2a60.diff

[clang] [Clang][MicrosoftMangle] Implement mangling for ConstantMatrixType (PR #134930)

2025-04-26 Thread Reid Kleckner via cfe-commits
https://github.com/rnk closed https://github.com/llvm/llvm-project/pull/134930 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang] Split out and disable tests that break relative rpaths (PR #137411)

2025-04-26 Thread Reid Kleckner via cfe-commits
rnk wrote: > I wonder if we can do this check statically instead. I'm not sure I follow, what do you mean by "statically" in this context? https://github.com/llvm/llvm-project/pull/137411 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https:/

[clang] [clang] Split out and disable tests that break relative rpaths (PR #137411)

2025-04-26 Thread Reid Kleckner via cfe-commits
https://github.com/rnk closed https://github.com/llvm/llvm-project/pull/137411 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

  1   2   3   4   5   6   7   8   9   10   >