[clang] Reapply "[clang] Introduce [[clang::lifetime_capture_by(X)]] (PR #115823)

2025-06-05 Thread Aaron Puchert via cfe-commits
@@ -3918,6 +3918,75 @@ have their lifetimes extended. }]; } +def LifetimeCaptureByDocs : Documentation { + let Category = DocCatFunction; + let Content = [{ +Similar to `lifetimebound`_, the ``lifetime_capture_by(X)`` attribute on a function +parameter or implicit obj

[clang] Introduce intra-procedural lifetime analysis in Clang (PR #142313)

2025-06-05 Thread Utkarsh Saxena via cfe-commits
https://github.com/usx95 updated https://github.com/llvm/llvm-project/pull/142313 >From 0cd187b01e61b200d92ca0b640789c1586075142 Mon Sep 17 00:00:00 2001 From: Utkarsh Saxena Date: Mon, 2 Jun 2025 17:53:14 + Subject: [PATCH] Introduce Intra-procedural lifetime analysis in Clang --- .../cl

[clang] Thread Safety Analysis: Warn when using negative reentrant capability (PR #141599)

2025-06-05 Thread Aaron Ballman via cfe-commits
@@ -4222,6 +4222,11 @@ def warn_fun_requires_lock_precise : InGroup, DefaultIgnore; def note_found_mutex_near_match : Note<"found near match '%0'">; +// Pedantic thread safety warnings enabled by default +def warn_thread_reentrant_with_negative_capability : Warning< + "%0 i

[clang] [llvm] [CodeGen][clang] Use module metadata to mark hotpatchable modules (PR #142969)

2025-06-05 Thread Jacek Caban via cfe-commits
https://github.com/cjacek created https://github.com/llvm/llvm-project/pull/142969 None >From 108b56e9d0fbd522d3ee458405dab43a01b5ebd5 Mon Sep 17 00:00:00 2001 From: Jacek Caban Date: Wed, 4 Jun 2025 13:13:06 +0200 Subject: [PATCH] [CodeGen][clang] Use module metadata to mark hotpatchable mod

[clang] [llvm] [CodeGen][clang] Use module metadata to mark hotpatchable modules (PR #142969)

2025-06-05 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang-codegen Author: Jacek Caban (cjacek) Changes --- Full diff: https://github.com/llvm/llvm-project/pull/142969.diff 6 Files Affected: - (modified) clang/lib/CodeGen/BackendUtil.cpp (-1) - (modified) clang/lib/CodeGen/CodeGenModule.cpp (+4) - (

[clang] Thread Safety Analysis: Warn when using negative reentrant capability (PR #141599)

2025-06-05 Thread Aaron Ballman via cfe-commits
https://github.com/AaronBallman edited https://github.com/llvm/llvm-project/pull/141599 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Thread Safety Analysis: Warn when using negative reentrant capability (PR #141599)

2025-06-05 Thread Aaron Ballman via cfe-commits
@@ -7223,4 +7225,10 @@ class TestNegativeWithReentrantMutex { } }; +typedef int __attribute__((capability("role"), reentrant_capability)) ThreadRole; +ThreadRole FlightControl1, FlightControl2; +void dispatch_log(const char *msg) __attribute__((requires_capability(!FlightC

[clang] [llvm] [CodeGen][clang] Use module metadata to mark hotpatchable modules (PR #142969)

2025-06-05 Thread Jacek Caban via cfe-commits
cjacek wrote: The main motivation is to enable writing llc-based tests for the emitted CodeView data https://github.com/llvm/llvm-project/pull/142969 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listin

[clang] [llvm] [CodeGen][clang] Use module metadata to mark hotpatchable modules (PR #142969)

2025-06-05 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: Jacek Caban (cjacek) Changes --- Full diff: https://github.com/llvm/llvm-project/pull/142969.diff 6 Files Affected: - (modified) clang/lib/CodeGen/BackendUtil.cpp (-1) - (modified) clang/lib/CodeGen/CodeGenModule.cpp (+4) - (modified

[clang] [CIR] Upstream splat op for VectorType (PR #139827)

2025-06-05 Thread Henrich Lauko via cfe-commits
@@ -1883,6 +1884,60 @@ mlir::LogicalResult CIRToLLVMVecCmpOpLowering::matchAndRewrite( return mlir::success(); } +mlir::LogicalResult CIRToLLVMVecSplatOpLowering::matchAndRewrite( +cir::VecSplatOp op, OpAdaptor adaptor, +mlir::ConversionPatternRewriter &rewriter) co

[clang] [CIR] Upstream splat op for VectorType (PR #139827)

2025-06-05 Thread Henrich Lauko via cfe-commits
@@ -1883,6 +1884,60 @@ mlir::LogicalResult CIRToLLVMVecCmpOpLowering::matchAndRewrite( return mlir::success(); } +mlir::LogicalResult CIRToLLVMVecSplatOpLowering::matchAndRewrite( +cir::VecSplatOp op, OpAdaptor adaptor, +mlir::ConversionPatternRewriter &rewriter) co

[clang] [llvm] [CodeGen][COFF] Always emit CodeView compiler info when hotpatch option is enabled (PR #142970)

2025-06-05 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: Jacek Caban (cjacek) Changes MSVC always emits minimal CodeView metadata containing compiler information, even when debug info is otherwise disabled. While this data is typically not meaningful on its own, the linker may use it to detect

[clang] [llvm] [CodeGen][COFF] Always emit CodeView compiler info when hotpatch option is enabled (PR #142970)

2025-06-05 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang-codegen Author: Jacek Caban (cjacek) Changes MSVC always emits minimal CodeView metadata containing compiler information, even when debug info is otherwise disabled. While this data is typically not meaningful on its own, the linker may use it t

[clang] [CIR] Implement folder for VecTernaryOp (PR #142946)

2025-06-05 Thread Henrich Lauko via cfe-commits
https://github.com/xlauko approved this pull request. lgtm https://github.com/llvm/llvm-project/pull/142946 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [CodeGen][COFF] Always emit CodeView compiler info when hotpatch option is enabled (PR #142970)

2025-06-05 Thread Alexandre Ganea via cfe-commits
aganea wrote: MSVC emits this debug section at all times (S_OBJNAME and S_COMPILE3). Can't we do the same without checking for the `getModuleFlag("ms-hotpatch")` flag? https://github.com/llvm/llvm-project/pull/142970 ___ cfe-commits mailing list cfe-c

[clang] [analyzer][NFCI] Remove pointless program point tagging (PR #142980)

2025-06-05 Thread Donát Nagy via cfe-commits
https://github.com/NagyDonat created https://github.com/llvm/llvm-project/pull/142980 Previously some checkers attached explicitly created program point tags to some of the exploded graph nodes that they created. In most of the checkers this ad-hoc tagging only affected the debug dump of the e

[clang] [llvm] [CodeGen][COFF] Always emit CodeView compiler info when hotpatch option is enabled (PR #142970)

2025-06-05 Thread Alexandre Ganea via cfe-commits
aganea wrote: The other a bit related point to this, is perhaps we should re-evaluate enabling `/HOTPATCH` at all times on x64 targets, like MSVC. https://github.com/llvm/llvm-project/pull/142970 ___ cfe-commits mailing list cfe-commits@lists.llvm.or

[clang] [clang] Fixed Constant Evaluation don't Call Destructor (PR #140278)

2025-06-05 Thread via cfe-commits
Mr-Anyone wrote: @Sirraide I don't have merge access. Could you please merge? Thanks. https://github.com/llvm/llvm-project/pull/140278 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [CIR] Upstream ShuffleOp for VectorType (PR #142288)

2025-06-05 Thread Henrich Lauko via cfe-commits
https://github.com/xlauko approved this pull request. lgtm https://github.com/llvm/llvm-project/pull/142288 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Fix error that reference to PointerType is ambiguous in clang/lib/Analysis/UnsafeBufferUsage.cpp (PR #142966)

2025-06-05 Thread via cfe-commits
github-actions[bot] wrote: :warning: C/C++ code formatter, clang-format found issues in your code. :warning: You can test this locally with the following command: ``bash git-clang-format --diff HEAD~1 HEAD --extensions cpp -- clang/lib/Analysis/UnsafeBufferUsage.cpp ``

[clang] [llvm] [CodeGen][COFF] Always emit CodeView compiler info when hotpatch option is enabled (PR #142970)

2025-06-05 Thread Jacek Caban via cfe-commits
cjacek wrote: I think we could emit this unconditionally, but I wasn’t entirely sure, so I went with a less invasive change for now. I'll prepare a new version. In this version, Clang emits a full debug IR, but if we're going to do this by default, it probably makes more sense to emit just a m

[clang] [llvm] [AArch64] Add support for -mlong-calls code generation (PR #142982)

2025-06-05 Thread dong jianqiang via cfe-commits
https://github.com/dongjianqiang2 created https://github.com/llvm/llvm-project/pull/142982 This patch implements backend support for -mlong-calls on AArch64 targets. When enabled, calls to external functions are lowered to an indirect call via an address computed using `adrp` and `add` rather

[clang] [llvm] [CodeGen][clang] Use module metadata to mark hotpatchable modules (PR #142969)

2025-06-05 Thread Alexandre Ganea via cfe-commits
https://github.com/aganea commented: This PR will all depend on the course taken on https://github.com/llvm/llvm-project/pull/142970 https://github.com/llvm/llvm-project/pull/142969 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists

[clang] [llvm] Add -funique-source-file-identifier flag. (PR #142901)

2025-06-05 Thread Teresa Johnson via cfe-commits
https://github.com/teresajohnson approved this pull request. https://github.com/llvm/llvm-project/pull/142901 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] [CodeGen][clang] Use module metadata to mark hotpatchable modules (PR #142969)

2025-06-05 Thread Alexandre Ganea via cfe-commits
@@ -0,0 +1,57 @@ +; RUN: llc -filetype=obj -o - %s | llvm-readobj --codeview - | FileCheck %s + +; ModuleID = 'a.c' +source_filename = "a.c" +target datalayout = "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" +target triple = "x86_64-unknown-win

[clang] [llvm] [CodeGen][clang] Use module metadata to mark hotpatchable modules (PR #142969)

2025-06-05 Thread Alexandre Ganea via cfe-commits
https://github.com/aganea edited https://github.com/llvm/llvm-project/pull/142969 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] 1be7c6f - [Clang] Fix constant eval of assignment operators with an explicit object parameter (#142964)

2025-06-05 Thread via cfe-commits
Author: Corentin Jabot Date: 2025-06-05T19:30:25+02:00 New Revision: 1be7c6fb4018aac76fc3dbdf997bacc727073f08 URL: https://github.com/llvm/llvm-project/commit/1be7c6fb4018aac76fc3dbdf997bacc727073f08 DIFF: https://github.com/llvm/llvm-project/commit/1be7c6fb4018aac76fc3dbdf997bacc727073f08.diff

[clang] [Clang] Fix constant eval of assignment operators with an explicit object parameter (PR #142964)

2025-06-05 Thread Corentin Jabot via cfe-commits
https://github.com/cor3ntin closed https://github.com/llvm/llvm-project/pull/142964 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Fix an error introduced in #138518 (PR #142988)

2025-06-05 Thread Corentin Jabot via cfe-commits
https://github.com/cor3ntin approved this pull request. LGTM, thanks! https://github.com/llvm/llvm-project/pull/142988 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] Fix name lookup of conversion operators (PR #142945)

2025-06-05 Thread Younan Zhang via cfe-commits
https://github.com/zyn0217 updated https://github.com/llvm/llvm-project/pull/142945 >From cdd6868879abf4b6c991c7f2b3e9cf9673b0570a Mon Sep 17 00:00:00 2001 From: Younan Zhang Date: Thu, 5 Jun 2025 18:52:01 +0800 Subject: [PATCH 1/2] [Clang] Fix name lookup of conversion operators (TODO: Add ex

[clang] f7a3a5c - [clang] Add regression tests for narrowing with is_constant_evaluated. (#142885)

2025-06-05 Thread via cfe-commits
Author: Eli Friedman Date: 2025-06-05T09:45:03-07:00 New Revision: f7a3a5c5dc000baa448f1bc6df65601ad91782dd URL: https://github.com/llvm/llvm-project/commit/f7a3a5c5dc000baa448f1bc6df65601ad91782dd DIFF: https://github.com/llvm/llvm-project/commit/f7a3a5c5dc000baa448f1bc6df65601ad91782dd.diff

[clang] [Frontend][PCH]-Add support for ignoring PCH options (-ignore-pch). (PR #142409)

2025-06-05 Thread Matheus Izvekov via cfe-commits
https://github.com/mizvekov approved this pull request. Thanks, LGTM on the implementation. I have no objections to the flag itself either. This is missing a Release note, please add it before merging. CC @ChuanqiXu9 Please wait at least a couple of days before merging for other comments and

[clang] [clang] Add regression tests for narrowing with is_constant_evaluated. (PR #142885)

2025-06-05 Thread Eli Friedman via cfe-commits
https://github.com/efriedma-quic closed https://github.com/llvm/llvm-project/pull/142885 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang][python][test] Move python binding tests to lit framework (PR #142948)

2025-06-05 Thread David Blaikie via cfe-commits
@@ -0,0 +1,22 @@ +def is_libclang_loadable(): +try: +sys.path.append(os.path.join(config.clang_src_dir, "bindings/python")) +from clang.cindex import Config +conf = Config() +Config.set_library_path(config.clang_lib_dir) +conf.lib +

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

2025-06-05 Thread Deric C. via cfe-commits
https://github.com/Icohedron approved this pull request. https://github.com/llvm/llvm-project/pull/142642 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[libclc] 6306f0f - [libclc] Support LLVM_ENABLE_RUNTIMES when building (#141574)

2025-06-05 Thread via cfe-commits
Author: Fraser Cormack Date: 2025-06-05T17:56:21+01:00 New Revision: 6306f0fa21739d426b5ce394b356a482a4f43e98 URL: https://github.com/llvm/llvm-project/commit/6306f0fa21739d426b5ce394b356a482a4f43e98 DIFF: https://github.com/llvm/llvm-project/commit/6306f0fa21739d426b5ce394b356a482a4f43e98.diff

[libclc] [llvm] [libclc] Support LLVM_ENABLE_RUNTIMES when building (PR #141574)

2025-06-05 Thread Fraser Cormack via cfe-commits
https://github.com/frasercrmck closed https://github.com/llvm/llvm-project/pull/141574 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Frontend][PCH]-Add support for ignoring PCH options (-ignore-pch). (PR #142409)

2025-06-05 Thread via cfe-commits
MaggieYingYi wrote: Thanks @mizvekov. I am away until next Monday. I will add a release note next Monday. Many thanks again https://github.com/llvm/llvm-project/pull/142409 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org

[clang] [flang] [Driver] Move CommonArgs to a location visible by the Frontend Drivers (PR #142800)

2025-06-05 Thread Cameron McInally via cfe-commits
@@ -3167,3 +3167,30 @@ void tools::handleInterchangeLoopsArgs(const ArgList &Args, options::OPT_fno_loop_interchange, EnableInterchange)) CmdArgs.push_back("-floop-interchange"); } + +void tools::ParseMPreferVectorWidthOption(clang::DiagnosticsEngine &Di

[clang] [C23][N3006] Documented behavior of underspecified object declarations (PR #140911)

2025-06-05 Thread Guillot Tony via cfe-commits
https://github.com/to268 updated https://github.com/llvm/llvm-project/pull/140911 >From 11832e8337e6785f887a8fafad7af558ff701f71 Mon Sep 17 00:00:00 2001 From: Guillot Tony Date: Wed, 21 May 2025 16:58:31 +0200 Subject: [PATCH 1/4] Documented N3006 feature --- clang/docs/LanguageExtensions.rs

[clang] [Clang] Implement CWG2496 (PR #142975)

2025-06-05 Thread Corentin Jabot via cfe-commits
https://github.com/cor3ntin updated https://github.com/llvm/llvm-project/pull/142975 >From d4294fbb02932ec8b1870ac2960856bbbf299eb5 Mon Sep 17 00:00:00 2001 From: Corentin Jabot Date: Thu, 5 Jun 2025 16:15:33 +0200 Subject: [PATCH 1/2] [Clang] Implement CWG2496 https://cplusplus.github.io/CWG/

[clang] [flang] [Driver] Move CommonArgs to a location visible by the Frontend Drivers (PR #142800)

2025-06-05 Thread Cameron McInally via cfe-commits
https://github.com/mcinally updated https://github.com/llvm/llvm-project/pull/142800 >From 918b853de8c43dacebecb42cafa6d3b8fec15b47 Mon Sep 17 00:00:00 2001 From: Cameron McInally Date: Tue, 3 Jun 2025 11:12:42 -0700 Subject: [PATCH 1/3] [Driver] Move CommonArgs to a location visible by the Fr

[clang] [Clang] Implement CWG2496 (PR #142975)

2025-06-05 Thread Corentin Jabot via cfe-commits
https://github.com/cor3ntin updated https://github.com/llvm/llvm-project/pull/142975 >From d4294fbb02932ec8b1870ac2960856bbbf299eb5 Mon Sep 17 00:00:00 2001 From: Corentin Jabot Date: Thu, 5 Jun 2025 16:15:33 +0200 Subject: [PATCH 1/3] [Clang] Implement CWG2496 https://cplusplus.github.io/CWG/

[clang] d1b0b4b - Add -funique-source-file-identifier option.

2025-06-05 Thread via cfe-commits
Author: Peter Collingbourne Date: 2025-06-05T10:52:01-07:00 New Revision: d1b0b4bb4405c144e23be3d5c0459b03f95bd5ac URL: https://github.com/llvm/llvm-project/commit/d1b0b4bb4405c144e23be3d5c0459b03f95bd5ac DIFF: https://github.com/llvm/llvm-project/commit/d1b0b4bb4405c144e23be3d5c0459b03f95bd5ac

[clang] [llvm] Add -funique-source-file-identifier option. (PR #142901)

2025-06-05 Thread Peter Collingbourne via cfe-commits
https://github.com/pcc updated https://github.com/llvm/llvm-project/pull/142901 >From 74acb06bb339909bc2950cecb95eb61df49c0379 Mon Sep 17 00:00:00 2001 From: Peter Collingbourne Date: Wed, 4 Jun 2025 22:37:09 -0700 Subject: [PATCH 1/3] =?UTF-8?q?[=F0=9D=98=80=F0=9D=97=BD=F0=9D=97=BF]=20in?= =?U

[clang] [llvm] Add -funique-source-file-identifier option. (PR #142901)

2025-06-05 Thread Peter Collingbourne via cfe-commits
https://github.com/pcc edited https://github.com/llvm/llvm-project/pull/142901 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Add -funique-source-file-identifier option. (PR #142901)

2025-06-05 Thread Peter Collingbourne via cfe-commits
@@ -4204,13 +4204,15 @@ def ftrigraphs : Flag<["-"], "ftrigraphs">, Group, def fno_trigraphs : Flag<["-"], "fno-trigraphs">, Group, HelpText<"Do not process trigraph sequences">, Visibility<[ClangOption, CC1Option]>; -defm unique_source_file_names: BoolOption<"f", "unique-

[clang] [llvm] Add -funique-source-file-identifier option. (PR #142901)

2025-06-05 Thread Peter Collingbourne via cfe-commits
https://github.com/pcc closed https://github.com/llvm/llvm-project/pull/142901 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang-tools-extra] [clang-doc] add a JSON generator (PR #142483)

2025-06-05 Thread Erick Velez via cfe-commits
evelez7 wrote: > This sounds promising. I'm fine w/ adding a field to track this. BTW, what > does clang do? I'm wondering if we should track more than 1-bit of info here. As far as I can tell, inside the AST Clang makes use of the `isa<>` mechanisms (which we could also leverage) or pointer u

[clang] [clang] Remove separate evaluation step for static class member init. (PR #142713)

2025-06-05 Thread Shafik Yaghmour via cfe-commits
https://github.com/shafik commented: So just to confirm my reading, this is benefiting from `CheckCompleteVariableDeclaration` doing: ```cpp // Evaluate the initializer to see if it's a constant initializer. HasConstInit = var->checkForConstantInitialization(Notes); ``` or is there more?

[clang] [CIR] Implement folder for VecTernaryOp (PR #142946)

2025-06-05 Thread Andy Kaylor via cfe-commits
@@ -1638,6 +1638,41 @@ LogicalResult cir::VecTernaryOp::verify() { return success(); } +OpFoldResult cir::VecTernaryOp::fold(FoldAdaptor adaptor) { + mlir::Attribute cond = adaptor.getCond(); + mlir::Attribute lhs = adaptor.getLhs(); + mlir::Attribute rhs = adaptor.getRhs

[clang] [CIR] Implement folder for VecTernaryOp (PR #142946)

2025-06-05 Thread Andy Kaylor via cfe-commits
https://github.com/andykaylor approved this pull request. This looks good. I just have a few minor suggestions. https://github.com/llvm/llvm-project/pull/142946 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mail

[clang] [CIR] Implement folder for VecTernaryOp (PR #142946)

2025-06-05 Thread Andy Kaylor via cfe-commits
https://github.com/andykaylor edited https://github.com/llvm/llvm-project/pull/142946 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Add support for Windows Secure Hot-Patching (PR #138972)

2025-06-05 Thread via cfe-commits
https://github.com/sivadeilra updated https://github.com/llvm/llvm-project/pull/138972 >From b12e2fbcb33b685db216a8ff063409c8595ee723 Mon Sep 17 00:00:00 2001 From: Arlie Davis Date: Thu, 3 Apr 2025 16:10:50 -0700 Subject: [PATCH] Windows hotpatching support --- clang/include/clang/Basic/Code

[clang] Thread Safety Analysis: Warn when using negative reentrant capability (PR #141599)

2025-06-05 Thread Aaron Puchert via cfe-commits
@@ -286,51 +291,76 @@ static bool checkRecordTypeForScopedCapability(Sema &S, QualType Ty) { return checkRecordDeclForAttr(RT->getDecl()); } -static bool checkTypedefTypeForCapability(QualType Ty) { +static std::optional checkTypedefTypeForCapability(QualType Ty) { const

[clang] Thread Safety Analysis: Warn when using negative reentrant capability (PR #141599)

2025-06-05 Thread Aaron Puchert via cfe-commits
https://github.com/aaronpuchert edited https://github.com/llvm/llvm-project/pull/141599 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [CIR] Implement folder for VecTernaryOp (PR #142946)

2025-06-05 Thread Amr Hesham via cfe-commits
https://github.com/AmrDeveloper edited https://github.com/llvm/llvm-project/pull/142946 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [flang] [Driver] Move CommonArgs to a location visible by the Frontend Drivers (PR #142800)

2025-06-05 Thread Cameron McInally via cfe-commits
https://github.com/mcinally updated https://github.com/llvm/llvm-project/pull/142800 >From 918b853de8c43dacebecb42cafa6d3b8fec15b47 Mon Sep 17 00:00:00 2001 From: Cameron McInally Date: Tue, 3 Jun 2025 11:12:42 -0700 Subject: [PATCH 1/4] [Driver] Move CommonArgs to a location visible by the Fr

[clang] [CIR] Implement folder for VecTernaryOp (PR #142946)

2025-06-05 Thread Amr Hesham via cfe-commits
https://github.com/AmrDeveloper edited https://github.com/llvm/llvm-project/pull/142946 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [CIR] Implement folder for VecTernaryOp (PR #142946)

2025-06-05 Thread Amr Hesham via cfe-commits
https://github.com/AmrDeveloper updated https://github.com/llvm/llvm-project/pull/142946 >From ac8277b48d0affa78f5e5e943e0179c27dd033ec Mon Sep 17 00:00:00 2001 From: AmrDeveloper Date: Thu, 5 Jun 2025 13:08:57 +0200 Subject: [PATCH 1/2] [CIR] Implement folder for VecTernaryOp --- clang/inclu

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

2025-06-05 Thread Eli Friedman via cfe-commits
https://github.com/efriedma-quic created https://github.com/llvm/llvm-project/pull/143034 In 8de51375f12d91675a18d17f262276e65f43fbe0 and related patches, we added some code to avoid triggering -Wenum-constexpr-conversion in some cases. This isn't necessary anymore because -Wenum-constexpr-co

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

2025-06-05 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: Eli Friedman (efriedma-quic) Changes In 8de51375f12d91675a18d17f262276e65f43fbe0 and related patches, we added some code to avoid triggering -Wenum-constexpr-conversion in some cases. This isn't necessary anymore because -Wenum-constexpr

[clang] [CIR] Implement folder for VecTernaryOp (PR #142946)

2025-06-05 Thread Andy Kaylor via cfe-commits
@@ -138,10 +138,10 @@ void CIRCanonicalizePass::runOnOperation() { assert(!cir::MissingFeatures::complexRealOp()); assert(!cir::MissingFeatures::complexImagOp()); assert(!cir::MissingFeatures::callOp()); -// CastOp, UnaryOp, VecExtractOp and VecShuffleDynamicOp

[clang] [CIR] Implement folder for VecTernaryOp (PR #142946)

2025-06-05 Thread Andy Kaylor via cfe-commits
@@ -1638,6 +1638,41 @@ LogicalResult cir::VecTernaryOp::verify() { return success(); } +OpFoldResult cir::VecTernaryOp::fold(FoldAdaptor adaptor) { + mlir::Attribute cond = adaptor.getCond(); + mlir::Attribute lhs = adaptor.getLhs(); + mlir::Attribute rhs = adaptor.getRhs

[clang] [CIR] Add initial support for bitfields in structs (PR #142041)

2025-06-05 Thread via cfe-commits
https://github.com/Andres-Salamanca updated https://github.com/llvm/llvm-project/pull/142041 >From 8f154d2c1fd9c646966aa07c9a292d253f9e59cc Mon Sep 17 00:00:00 2001 From: Andres Salamanca Date: Thu, 29 May 2025 16:17:09 -0500 Subject: [PATCH 1/4] Add initial support for bitfields in structs and

[clang] [CIR] Add decl case for template specialization (PR #143029)

2025-06-05 Thread Andy Kaylor via cfe-commits
https://github.com/andykaylor updated https://github.com/llvm/llvm-project/pull/143029 >From be47b607dca53dce1904cdf1a6316f97454ede7a Mon Sep 17 00:00:00 2001 From: Andy Kaylor Date: Wed, 4 Jun 2025 15:55:51 -0700 Subject: [PATCH 1/2] [CIR] Add decl case for template specialization This change

[clang] [CIR] Implement folder for VecTernaryOp (PR #142946)

2025-06-05 Thread Amr Hesham via cfe-commits
@@ -138,10 +138,10 @@ void CIRCanonicalizePass::runOnOperation() { assert(!cir::MissingFeatures::complexRealOp()); assert(!cir::MissingFeatures::complexImagOp()); assert(!cir::MissingFeatures::callOp()); -// CastOp, UnaryOp, VecExtractOp and VecShuffleDynamicOp

[clang] [clang][dep-scan] Resolve lexer crash from a permutation of invalid tokens (PR #142452)

2025-06-05 Thread Argyrios Kyrtzidis via cfe-commits
@@ -503,6 +503,10 @@ bool Scanner::lexModuleDirectiveBody(DirectiveKind Kind, const char *&First, diag::err_dep_source_scanner_missing_semi_after_at_import); if (Tok.is(tok::semi)) break; +if (Tok.is(tok::hash) || Tok.is(tok::at)) + return reportEr

[clang] Control analysis-based diagnostics with #pragma (PR #136323)

2025-06-05 Thread Shafik Yaghmour via cfe-commits
@@ -16597,7 +16597,8 @@ ExprResult Sema::ActOnBlockStmtExpr(SourceLocation CaretLoc, BD->setCaptures(Context, Captures, BSI->CXXThisCaptureIndex != 0); // Pop the block scope now but keep it alive to the end of this function. - AnalysisBasedWarnings::Policy WP = Analysis

[clang] Thread Safety Analysis: Warn when using negative reentrant capability (PR #141599)

2025-06-05 Thread Aaron Puchert via cfe-commits
https://github.com/aaronpuchert commented: On a related note, do we emit `-Wthread-safety-negative` for reentrant locks? I don't remember that we carved out an exception for that, and we probably should. https://github.com/llvm/llvm-project/pull/141599 __

[clang] [clang][dep-scan] Resolve lexer crash from a permutation of invalid tokens (PR #142452)

2025-06-05 Thread Argyrios Kyrtzidis via cfe-commits
https://github.com/akyrtzi edited https://github.com/llvm/llvm-project/pull/142452 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Thread Safety Analysis: Warn when using negative reentrant capability (PR #141599)

2025-06-05 Thread Aaron Puchert via cfe-commits
@@ -4222,6 +4222,11 @@ def warn_fun_requires_lock_precise : InGroup, DefaultIgnore; def note_found_mutex_near_match : Note<"found near match '%0'">; +// Pedantic thread safety warnings enabled by default +def warn_thread_reentrant_with_negative_capability : Warning< + "%0 i

[clang] [flang] [Driver] Move CommonArgs to a location visible by the Frontend Drivers (PR #142800)

2025-06-05 Thread Cameron McInally via cfe-commits
https://github.com/mcinally updated https://github.com/llvm/llvm-project/pull/142800 >From 918b853de8c43dacebecb42cafa6d3b8fec15b47 Mon Sep 17 00:00:00 2001 From: Cameron McInally Date: Tue, 3 Jun 2025 11:12:42 -0700 Subject: [PATCH 1/5] [Driver] Move CommonArgs to a location visible by the Fr

[clang] [clang][dep-scan] Resolve lexer crash from a permutation of invalid tokens (PR #142452)

2025-06-05 Thread Argyrios Kyrtzidis via cfe-commits
https://github.com/akyrtzi edited https://github.com/llvm/llvm-project/pull/142452 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [OpenACC][CIR] Implement member exprs for 'copy' lowering (PR #142998)

2025-06-05 Thread Andy Kaylor via cfe-commits
@@ -226,6 +228,10 @@ class OpenACCClauseCIREmitter final mlir::Location exprLoc = cgf.cgm.getLoc(curVarExpr->getBeginLoc()); llvm::SmallVector bounds; +std::string exprString; +llvm::raw_string_ostream os(exprString); +e->printPretty(os, nullptr, cgf.getCon

[clang] [OpenACC][CIR] Implement member exprs for 'copy' lowering (PR #142998)

2025-06-05 Thread Andy Kaylor via cfe-commits
@@ -754,12 +754,320 @@ void acc_compute(int parmVar) { // CHECK-NEXT: %[[ZERO_CONST:.*]] = arith.constant 0 : i64 // CHECK-NEXT: %[[ONE_CONST2:.*]] = arith.constant 1 : i64 // CHECK-NEXT: %[[BOUNDS3:.*]] = acc.bounds lowerbound(%[[ONE_CAST]] : si32) extent(%[[ONE_CAST2]]

[clang] [OpenACC][CIR] Implement member exprs for 'copy' lowering (PR #142998)

2025-06-05 Thread Andy Kaylor via cfe-commits
https://github.com/andykaylor approved this pull request. Nice job with the testing! I had a moment of panic seeing the size of this change, only to find that it's mostly test cases. I have a couple of questions, but it looks good. https://github.com/llvm/llvm-project/pull/142998 _

[clang] [OpenACC][CIR] Implement member exprs for 'copy' lowering (PR #142998)

2025-06-05 Thread Andy Kaylor via cfe-commits
@@ -754,12 +754,320 @@ void acc_compute(int parmVar) { // CHECK-NEXT: %[[ZERO_CONST:.*]] = arith.constant 0 : i64 // CHECK-NEXT: %[[ONE_CONST2:.*]] = arith.constant 1 : i64 // CHECK-NEXT: %[[BOUNDS3:.*]] = acc.bounds lowerbound(%[[ONE_CAST]] : si32) extent(%[[ONE_CAST2]]

[clang] [OpenACC][CIR] Implement member exprs for 'copy' lowering (PR #142998)

2025-06-05 Thread Andy Kaylor via cfe-commits
https://github.com/andykaylor edited https://github.com/llvm/llvm-project/pull/142998 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [OpenACC][CIR] Implement member exprs for 'copy' lowering (PR #142998)

2025-06-05 Thread Erich Keane via cfe-commits
@@ -226,6 +228,10 @@ class OpenACCClauseCIREmitter final mlir::Location exprLoc = cgf.cgm.getLoc(curVarExpr->getBeginLoc()); llvm::SmallVector bounds; +std::string exprString; +llvm::raw_string_ostream os(exprString); +e->printPretty(os, nullptr, cgf.getCon

[clang] [CIR] Implement folder for VecTernaryOp (PR #142946)

2025-06-05 Thread Andy Kaylor via cfe-commits
@@ -138,10 +138,10 @@ void CIRCanonicalizePass::runOnOperation() { assert(!cir::MissingFeatures::complexRealOp()); assert(!cir::MissingFeatures::complexImagOp()); assert(!cir::MissingFeatures::callOp()); -// CastOp, UnaryOp, VecExtractOp and VecShuffleDynamicOp

[clang] [OpenACC][CIR] Implement member exprs for 'copy' lowering (PR #142998)

2025-06-05 Thread Erich Keane via cfe-commits
@@ -754,12 +754,320 @@ void acc_compute(int parmVar) { // CHECK-NEXT: %[[ZERO_CONST:.*]] = arith.constant 0 : i64 // CHECK-NEXT: %[[ONE_CONST2:.*]] = arith.constant 1 : i64 // CHECK-NEXT: %[[BOUNDS3:.*]] = acc.bounds lowerbound(%[[ONE_CAST]] : si32) extent(%[[ONE_CAST2]]

[clang] [CIR] Implement folder for VecTernaryOp (PR #142946)

2025-06-05 Thread Amr Hesham via cfe-commits
@@ -138,10 +138,10 @@ void CIRCanonicalizePass::runOnOperation() { assert(!cir::MissingFeatures::complexRealOp()); assert(!cir::MissingFeatures::complexImagOp()); assert(!cir::MissingFeatures::callOp()); -// CastOp, UnaryOp, VecExtractOp and VecShuffleDynamicOp

[clang] [clang] Fixed Constant Evaluation don't Call Destructor (PR #140278)

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

[clang] 49386f4 - [Clang] Run destructors of variables declared in the second part of a `for` loop during constant evaluation (#140278)

2025-06-05 Thread via cfe-commits
Author: Vincent Date: 2025-06-05T23:50:20+02:00 New Revision: 49386f40dd66ababe9bfde64c14cf3bfba5774c1 URL: https://github.com/llvm/llvm-project/commit/49386f40dd66ababe9bfde64c14cf3bfba5774c1 DIFF: https://github.com/llvm/llvm-project/commit/49386f40dd66ababe9bfde64c14cf3bfba5774c1.diff LOG:

[clang] [CIR] Implement folder for VecTernaryOp (PR #142946)

2025-06-05 Thread Amr Hesham via cfe-commits
https://github.com/AmrDeveloper updated https://github.com/llvm/llvm-project/pull/142946 >From ac8277b48d0affa78f5e5e943e0179c27dd033ec Mon Sep 17 00:00:00 2001 From: AmrDeveloper Date: Thu, 5 Jun 2025 13:08:57 +0200 Subject: [PATCH 1/3] [CIR] Implement folder for VecTernaryOp --- clang/inclu

[clang] [OpenACC][CIR] Implement member exprs for 'copy' lowering (PR #142998)

2025-06-05 Thread Erich Keane via cfe-commits
@@ -754,12 +754,320 @@ void acc_compute(int parmVar) { // CHECK-NEXT: %[[ZERO_CONST:.*]] = arith.constant 0 : i64 // CHECK-NEXT: %[[ONE_CONST2:.*]] = arith.constant 1 : i64 // CHECK-NEXT: %[[BOUNDS3:.*]] = acc.bounds lowerbound(%[[ONE_CAST]] : si32) extent(%[[ONE_CAST2]]

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

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

[clang-tools-extra] added option `google-readability-namespace-comments.AllowNoNamespaceComments` (PR #124265)

2025-06-05 Thread Carlos Galvez via cfe-commits
carlosgalvezp wrote: Please call it "nested-namespaces" instead of "c++17". https://github.com/llvm/llvm-project/pull/124265 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailm

[clang] [StaticAnalyzer] Fix tryExpandAsInteger's failures on PCH macros (PR #142722)

2025-06-05 Thread Balazs Benics via cfe-commits
@@ -129,11 +129,19 @@ std::optional tryExpandAsInteger(StringRef Macro, const Preprocessor &PP) { // Parse an integer at the end of the macro definition. const Token &T = FilteredTokens.back(); - // FIXME: EOF macro token coming from a PCH file on macOS while marked as -

[clang-tools-extra] [clang-tidy] Improve integer comparison by matching valid expressions outside implicitCastExpr (PR #134188)

2025-06-05 Thread Baranov Victor via cfe-commits
@@ -39,21 +39,28 @@ intCastExpression(bool IsSigned, // std::cmp_{} functions trigger a compile-time error if either LHS or RHS // is a non-integer type, char, enum or bool // (unsigned char/ signed char are Ok and can be used). - auto IntTypeExpr = expr(hasType(hasCanon

[clang] [StaticAnalyzer] Fix tryExpandAsInteger's failures on PCH macros (PR #142722)

2025-06-05 Thread Ziqing Luo via cfe-commits
ziqingluo-90 wrote: Thank you for reviewing [steakhal](https://github.com/steakhal)! https://github.com/llvm/llvm-project/pull/142722 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [StaticAnalyzer] Fix tryExpandAsInteger's failures on PCH macros (PR #142722)

2025-06-05 Thread Balazs Benics via cfe-commits
steakhal wrote: FYI the CI checks are red, I don't think its related to this PR. It had this line: ``` 2025-06-05T08:01:02.4802924Z PASS: Clang :: Analysis/pch_macro.cpp (1263 of 21496) ``` So we should be good to merge, any time you want. https://github.com/llvm/llvm-project/pull/142722 __

[clang] Revert "[clang-repl] Ensure clang-repl accepts all C keywords supported in all language models (#142749) (PR #142933)

2025-06-05 Thread Anutosh Bhat via cfe-commits
anutosh491 wrote: Needed a revert as we added a test for running `_Float16` with clang-repl only to realize later that it should be conditionally ignored for platforms such as ppc64le and AIX https://github.com/llvm/llvm-project/pull/142933 ___ cfe-c

[libclc] [NFC][libclc] Simplify clc_dot and dot implementation (PR #142922)

2025-06-05 Thread Wenju He via cfe-commits
https://github.com/wenju-he created https://github.com/llvm/llvm-project/pull/142922 llvm-diff shows no change to amdgcn--amdhsa.bc >From 42c4efab1a163624d7a3b327742d7e38bb7197b3 Mon Sep 17 00:00:00 2001 From: Wenju He Date: Thu, 5 Jun 2025 01:14:38 -0700 Subject: [PATCH] [NFC][libclc] Simplif

[clang] [llvm] [NFC][LLVM] Refactor IRBuilder::Create{VScale,ElementCount,TypeSize}. (PR #142803)

2025-06-05 Thread David Sherwood via cfe-commits
@@ -120,23 +120,30 @@ IRBuilderBase::createCallHelper(Function *Callee, ArrayRef Ops, return CI; } -Value *IRBuilderBase::CreateVScale(Constant *Scaling, const Twine &Name) { - assert(isa(Scaling) && "Expected constant integer"); - if (cast(Scaling)->isZero()) -return

[clang] [llvm] [NFC][LLVM] Refactor IRBuilder::Create{VScale,ElementCount,TypeSize}. (PR #142803)

2025-06-05 Thread David Sherwood via cfe-commits
@@ -120,23 +120,30 @@ IRBuilderBase::createCallHelper(Function *Callee, ArrayRef Ops, return CI; } -Value *IRBuilderBase::CreateVScale(Constant *Scaling, const Twine &Name) { - assert(isa(Scaling) && "Expected constant integer"); - if (cast(Scaling)->isZero()) -return

[clang] [llvm] [NFC][LLVM] Refactor IRBuilder::Create{VScale,ElementCount,TypeSize}. (PR #142803)

2025-06-05 Thread David Sherwood via cfe-commits
@@ -4793,11 +4793,7 @@ Value *CodeGenFunction::EmitAArch64SVEBuiltinExpr(unsigned BuiltinID, case SVE::BI__builtin_sve_svlen_u64: { SVETypeFlags TF(Builtin->TypeModifier); auto VTy = cast(getSVEType(TF)); david-arm wrote: nit: Is it worth strengthen

[clang] [clang-format] Handle requires clause following a pointer type (PR #142893)

2025-06-05 Thread Owen Pan via cfe-commits
owenca wrote: > For all sane code this works. Although there are valid codes where a star can > preceed a requires expression. Sure, but I think that's also true for the existing `tok::greater` and `tok::amp` cases. https://github.com/llvm/llvm-project/pull/142893

[clang] [StaticAnalyzer] Fix tryExpandAsInteger's failures on PCH macros (PR #142722)

2025-06-05 Thread Balazs Benics via cfe-commits
https://github.com/steakhal updated https://github.com/llvm/llvm-project/pull/142722 >From 3bd12ac6bb3c47b5e977cffec019df15a15426fc Mon Sep 17 00:00:00 2001 From: Ziqing Luo Date: Wed, 4 Jun 2025 12:29:53 +0800 Subject: [PATCH 1/3] [StaticAnalyzer] Fix tryExpandAsInteger's failures on macros f

  1   2   3   4   5   6   >