[clang] [Driver] Add support for -export-dynamic which can match GCC behavior. (PR #72781)

2023-11-21 Thread dong jianqiang via cfe-commits
dongjianqiang2 wrote: > > > > @MaskRay the reason for adding this option is that gcc supports it. > > > > please refer to > > > > [godbolt.org/z/54sE6zTa1](https://godbolt.org/z/54sE6zTa1) > > > > > > > > > This doesn't answer my question. GCC has a lot of options that Clang > > > doesn't

[clang] [RISCV] Use Float type instead of Half type for Fixed RVV vector type mangling (PR #73091)

2023-11-21 Thread Craig Topper via cfe-commits
https://github.com/topperc approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/73091 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [RISCV] Use Float type instead of Half type for Fixed RVV vector type mangling (PR #73091)

2023-11-21 Thread Jianjian Guan via cfe-commits
jacquesguan wrote: > test? Done, add test case. https://github.com/llvm/llvm-project/pull/73091 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [RISCV] Use Float type instead of Half type for Fixed RVV vector type mangling (PR #73091)

2023-11-21 Thread Jianjian Guan via cfe-commits
https://github.com/jacquesguan updated https://github.com/llvm/llvm-project/pull/73091 >From 5712baa1f74acec9a482d110e0a6bf9638006409 Mon Sep 17 00:00:00 2001 From: Jianjian GUAN Date: Wed, 22 Nov 2023 14:34:49 +0800 Subject: [PATCH] [RISCV] Use Float type instead of Half type for Fixed RVV

[clang] [RISCV] Use Float type instead of Half type for Fixed RVV vector type mangling (PR #73091)

2023-11-21 Thread Craig Topper via cfe-commits
topperc wrote: test? https://github.com/llvm/llvm-project/pull/73091 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [RISCV] Use Float type instead of Half type for Fixed RVV vector type mangling (PR #73091)

2023-11-21 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: Jianjian Guan (jacquesguan) Changes --- Full diff: https://github.com/llvm/llvm-project/pull/73091.diff 1 Files Affected: - (modified) clang/lib/AST/ItaniumMangle.cpp (+1-1) ``diff diff --git

[clang] [RISCV] Use Float type instead of Half type for Fixed RVV vector type mangling (PR #73091)

2023-11-21 Thread Jianjian Guan via cfe-commits
https://github.com/jacquesguan created https://github.com/llvm/llvm-project/pull/73091 None >From f785a0a175f509dbc72e11c13eb5eb6f6eaebb43 Mon Sep 17 00:00:00 2001 From: Jianjian GUAN Date: Wed, 22 Nov 2023 14:34:49 +0800 Subject: [PATCH] [RISCV] Use Float type instead of Half type for Fixed

[clang] [clang][Sema] Add -Wswitch-default warning option (PR #73077)

2023-11-21 Thread dong jianqiang via cfe-commits
dongjianqiang2 wrote: > There is one clang-tidy check (bugprone-switch-missing-default-case) also for > this feature. Thank you for your reply. It may be a more convenient and straightforward way if can be identified during compile time. On the other hand, it it more compatibile with GCC's

[clang] [Clang][OpenMP] Emit unsupported directive error (PR #70233)

2023-11-21 Thread Raymond Chang via cfe-commits
rkchang wrote: Added a test case. Thanks for the pointer! Here's the result: ``` ~/dev/fork-llvm-project omp_dispatch_unimpl ❯ llvm-lit -vv clang/test/OpenMP/dispatch_unsupported.c llvm-lit: /home/rkchang/dev/fork-llvm-project/llvm/utils/lit/lit/llvm/config.py:488: note: using clang:

[clang] [Clang][OpenMP] Emit unsupported directive error (PR #70233)

2023-11-21 Thread Raymond Chang via cfe-commits
https://github.com/rkchang updated https://github.com/llvm/llvm-project/pull/70233 >From 72c056b825963d0de1dcf3fe3a6de922098d0ad9 Mon Sep 17 00:00:00 2001 From: Raymond Chang Date: Thu, 12 Oct 2023 01:51:03 -0400 Subject: [PATCH 1/2] Emit unsupported directive error ---

[clang] Reland "[clang][Sema] Use original template pattern when declaring implicit deduction guides for nested template classes" (PR #69676)

2023-11-21 Thread via cfe-commits
antangelo wrote: Thank you for the reproducers! I have posted a candidate reland that addresses both of these issues here: https://github.com/llvm/llvm-project/pull/73087 https://github.com/llvm/llvm-project/pull/69676 ___ cfe-commits mailing list

[clang] Reland "[clang][Sema] Use original template pattern when declaring implicit deduction guides for nested template classes" (PR #73087)

2023-11-21 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: None (antangelo) Changes Reland of f418319730341e9d41ce8ead6fbfe5603c343985 with proper handling of template constructors When a nested template is instantiated, the template pattern of the inner class is not copied into the outer class

[clang] Reland "[clang][Sema] Use original template pattern when declaring implicit deduction guides for nested template classes" (PR #73087)

2023-11-21 Thread via cfe-commits
https://github.com/antangelo created https://github.com/llvm/llvm-project/pull/73087 Reland of f418319730341e9d41ce8ead6fbfe5603c343985 with proper handling of template constructors When a nested template is instantiated, the template pattern of the inner class is not copied into the outer

[clang] [Clang][Coroutines] Properly emit EH code for initial suspend `await_resume` (PR #73073)

2023-11-21 Thread Yuxuan Chen via cfe-commits
https://github.com/yuxuanchen1997 closed https://github.com/llvm/llvm-project/pull/73073 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] 1fad78b - [Clang][Coroutines] Properly emit EH code for initial suspend `await_resume` (#73073)

2023-11-21 Thread via cfe-commits
Author: Yuxuan Chen Date: 2023-11-21T21:21:27-08:00 New Revision: 1fad78b123d20db675d339053e4265aceb07c4af URL: https://github.com/llvm/llvm-project/commit/1fad78b123d20db675d339053e4265aceb07c4af DIFF: https://github.com/llvm/llvm-project/commit/1fad78b123d20db675d339053e4265aceb07c4af.diff

[clang] [clang][Sema] Add -Wswitch-default warning option (PR #73077)

2023-11-21 Thread Shivam Gupta via cfe-commits
xgupta wrote: There is one clang-tidy check (bugprone-switch-missing-default-case) also for this feature. https://github.com/llvm/llvm-project/pull/73077 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [Clang][Coroutines] Properly emit EH code for initial suspend `await_resume` (PR #73073)

2023-11-21 Thread Yuxuan Chen via cfe-commits
https://github.com/yuxuanchen1997 updated https://github.com/llvm/llvm-project/pull/73073 >From e7d1ae077d7d301094b663166cc0c14c706d2110 Mon Sep 17 00:00:00 2001 From: Yuxuan Chen Date: Tue, 21 Nov 2023 19:06:31 -0800 Subject: [PATCH 1/4] [Clang][coro] Fix crash on emitting init suspend if the

[clang] [clang][Sema] Add -Wswitch-default warning option (PR #73077)

2023-11-21 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: dong jianqiang (dongjianqiang2) Changes Adds a warning, issued by the clang semantic analysis. The patch warns on switch which don't have the default branch. This is a counterpart of gcc's Wswitch-default. --- Full diff:

[clang] [clang][Sema] Add -Wswitch-default warning option (PR #73077)

2023-11-21 Thread dong jianqiang via cfe-commits
https://github.com/dongjianqiang2 created https://github.com/llvm/llvm-project/pull/73077 Adds a warning, issued by the clang semantic analysis. The patch warns on switch which don't have the default branch. This is a counterpart of gcc's Wswitch-default. >From

[clang] [analyzer]:fix valistChecker false negative in windows platform (PR #72951)

2023-11-21 Thread via cfe-commits
mzyKi wrote: > ..and it turns out that `ValistChecker` already has a function called > `ValistChecker::getVAListAsRegion` that handles different representations of > `va_list` under various systems. (I was not familiar with it because it was > added by @Xazax-hun after the initial commit

[clang] [Clang][Coroutines] Properly emit EH code for initial suspend `await_resume` (PR #73073)

2023-11-21 Thread Yuxuan Chen via cfe-commits
https://github.com/yuxuanchen1997 updated https://github.com/llvm/llvm-project/pull/73073 >From e7d1ae077d7d301094b663166cc0c14c706d2110 Mon Sep 17 00:00:00 2001 From: Yuxuan Chen Date: Tue, 21 Nov 2023 19:06:31 -0800 Subject: [PATCH 1/3] [Clang][coro] Fix crash on emitting init suspend if the

[clang] [Clang][Coroutines] Properly emit EH code for initial suspend `await_resume` (PR #73073)

2023-11-21 Thread Yuxuan Chen via cfe-commits
https://github.com/yuxuanchen1997 updated https://github.com/llvm/llvm-project/pull/73073 >From e7d1ae077d7d301094b663166cc0c14c706d2110 Mon Sep 17 00:00:00 2001 From: Yuxuan Chen Date: Tue, 21 Nov 2023 19:06:31 -0800 Subject: [PATCH 1/3] [Clang][coro] Fix crash on emitting init suspend if the

[clang] [Clang] Fix ICE when `initial_suspend()`'s `await_resume()` returns a non-trivially destructible type (PR #72935)

2023-11-21 Thread Yuxuan Chen via cfe-commits
https://github.com/yuxuanchen1997 closed https://github.com/llvm/llvm-project/pull/72935 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Coroutines] Properly emit EH code for initial suspend `await_resume` (PR #73073)

2023-11-21 Thread Yuxuan Chen via cfe-commits
https://github.com/yuxuanchen1997 updated https://github.com/llvm/llvm-project/pull/73073 >From e7d1ae077d7d301094b663166cc0c14c706d2110 Mon Sep 17 00:00:00 2001 From: Yuxuan Chen Date: Tue, 21 Nov 2023 19:06:31 -0800 Subject: [PATCH 1/2] [Clang][coro] Fix crash on emitting init suspend if the

[clang] [Clang][Coroutines] Properly emit EH code for initial suspend `await_resume` (PR #73073)

2023-11-21 Thread Chuanqi Xu via cfe-commits
https://github.com/ChuanqiXu9 approved this pull request. LGTM. Thanks. https://github.com/llvm/llvm-project/pull/73073 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Coroutines] Properly emit EH code for initial suspend `await_resume` (PR #73073)

2023-11-21 Thread Yuxuan Chen via cfe-commits
https://github.com/yuxuanchen1997 edited https://github.com/llvm/llvm-project/pull/73073 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Coroutines] Properly emit EH code for initial suspend `await_resume` (PR #73073)

2023-11-21 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang-codegen Author: Yuxuan Chen (yuxuanchen1997) Changes This change aims to fix an ICE in issue https://github.com/llvm/llvm-project/issues/63803 The crash happens in `ExitCXXTryStmt` because `EmitAnyExpr()` adds additional cleanup to the

[clang] [Clang][Coroutines] Properly emit EH code for initial suspend `await_resume` (PR #73073)

2023-11-21 Thread Yuxuan Chen via cfe-commits
https://github.com/yuxuanchen1997 ready_for_review https://github.com/llvm/llvm-project/pull/73073 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Coroutines] Properly emit EH code for initial suspend `await_resume` (PR #73073)

2023-11-21 Thread Yuxuan Chen via cfe-commits
https://github.com/yuxuanchen1997 updated https://github.com/llvm/llvm-project/pull/73073 >From e7d1ae077d7d301094b663166cc0c14c706d2110 Mon Sep 17 00:00:00 2001 From: Yuxuan Chen Date: Tue, 21 Nov 2023 19:06:31 -0800 Subject: [PATCH 1/2] [Clang][coro] Fix crash on emitting init suspend if the

[clang] [Clang][Coroutines] Properly emit EH code for initial suspend `await_resume` (PR #73073)

2023-11-21 Thread Yuxuan Chen via cfe-commits
https://github.com/yuxuanchen1997 updated https://github.com/llvm/llvm-project/pull/73073 >From f782f36c42f9bc1246837bf7ff2142919794580b Mon Sep 17 00:00:00 2001 From: Yuxuan Chen Date: Tue, 21 Nov 2023 19:06:31 -0800 Subject: [PATCH 1/2] [Clang][coro] Fix crash on emitting init suspend if the

[libunwind] [libunwind] Remove unnecessary dependencies on fprintf and stdio.h for increased baremetal friendliness (PR #72040)

2023-11-21 Thread Michael Kenzel via cfe-commits
https://github.com/michael-kenzel edited https://github.com/llvm/llvm-project/pull/72040 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang][Coroutines] Properly emit EH code for initial suspend `await_resume` (PR #73073)

2023-11-21 Thread Yuxuan Chen via cfe-commits
https://github.com/yuxuanchen1997 created https://github.com/llvm/llvm-project/pull/73073 This change aims to fix an ICE in issue https://github.com/llvm/llvm-project/issues/63803 The crash happens in `ExitCXXTryStmt` because `EmitAnyExpr()` adds additional cleanup to the `EHScopeStack`.

[clang] [clang][analyzer][NFC] Use `*EofVal` instead of constant `-1` (PR #73072)

2023-11-21 Thread Ben Shi via cfe-commits
benshi001 wrote: According to line 442 of this file, EOF might be a different value than -1, although it is unusual. https://github.com/llvm/llvm-project/pull/73072 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [clang][analyzer][NFC] Use `*EofVal` instead of constant `-1` (PR #73072)

2023-11-21 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang Author: Ben Shi (benshi001) Changes --- Full diff: https://github.com/llvm/llvm-project/pull/73072.diff 1 Files Affected: - (modified) clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp (+3-2) ``diff diff --git

[clang] [clang][analyzer][NFC] Use `*EofVal` instead of constant `-1` (PR #73072)

2023-11-21 Thread Ben Shi via cfe-commits
https://github.com/benshi001 created https://github.com/llvm/llvm-project/pull/73072 None >From 1079cdb578a434344ac525e32d9931325e6f3f6c Mon Sep 17 00:00:00 2001 From: Ben Shi Date: Wed, 22 Nov 2023 11:00:50 +0800 Subject: [PATCH] [clang][analyzer][NFC] Use '*EofVal' instead of constant '-1'

[clang-tools-extra] [clang] [clang-tidy] Added new check to detect redundant inline keyword (PR #73069)

2023-11-21 Thread Félix-Antoine Constantin via cfe-commits
https://github.com/felix642 updated https://github.com/llvm/llvm-project/pull/73069 From 89281ccb5354e3d6349d10e6f9446194d2d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?F=C3=A9lix-Antoine=20Constantin?= Date: Thu, 16 Nov 2023 22:03:15 -0500 Subject: [PATCH 1/2]

[PATCH] D155688: [PATCH] [llvm] [InstCombine] Canonicalise ADD+GEP

2023-11-21 Thread Craig Topper via Phabricator via cfe-commits
craig.topper added a comment. After this patch, I'm seeing a lot of `invariant.gep` created by LICM. For example, in `LBM_performStreamCollide` in 470.lbm there are 65 of them. On RISC-V, these all get created in registers outside the loop and get spilled. Is ARM seeing anything like this or

[clang] [C++20] [Modules] Introduce a tool 'clang-named-modules-querier' and two plugins 'ClangGetUsedFilesFromModulesPlugin' and 'ClangGetDeclsInModulesPlugin' (PR #72956)

2023-11-21 Thread Chuanqi Xu via cfe-commits
ChuanqiXu9 wrote: > I'm still really hesitant about this direction. > > One starting concern: what happens if someone adds an overload, or other > interesting name resolution to the module? The downstream caller hasn't > textually changed, but it should be rebuilt because it should be calling

[clang] [CUDA][HIP] make trivial ctor/dtor host device (PR #72394)

2023-11-21 Thread Yaxun Liu via cfe-commits
yxsamliu wrote: > @yxsamliu What's the plan here? This issue is blocking us. If there is no > obvious fix very soon, we need to revert this. I will fix it. https://github.com/llvm/llvm-project/pull/72394 ___ cfe-commits mailing list

[clang-tools-extra] [clang] [clang-tidy] Added new check to detect redundant inline keyword (PR #73069)

2023-11-21 Thread Félix-Antoine Constantin via cfe-commits
https://github.com/felix642 updated https://github.com/llvm/llvm-project/pull/73069 From 89281ccb5354e3d6349d10e6f9446194d2d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?F=C3=A9lix-Antoine=20Constantin?= Date: Thu, 16 Nov 2023 22:03:15 -0500 Subject: [PATCH]

[clang-tools-extra] [clang] [clang-tidy] Added new check to detect redundant inline keyword (PR #73069)

2023-11-21 Thread via cfe-commits
llvmbot wrote: @llvm/pr-subscribers-clang-tidy @llvm/pr-subscribers-clang Author: Félix-Antoine Constantin (felix642) Changes This checks find usages of the inline keywork where it is already implicitly defined by the compiler and suggests it's removal. Fixes #72397 --- Full diff:

[clang] [clang-tools-extra] [clang-tidy] Added new check to detect redundant inline keyword (PR #73069)

2023-11-21 Thread Félix-Antoine Constantin via cfe-commits
https://github.com/felix642 edited https://github.com/llvm/llvm-project/pull/73069 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang-tools-extra] [clang-tidy] Added check to detect redundant inline keyword (PR #73069)

2023-11-21 Thread Félix-Antoine Constantin via cfe-commits
https://github.com/felix642 created https://github.com/llvm/llvm-project/pull/73069 This checks find usages of the inline keywork where it is already implicitly defined by the compiler and suggests it's removal. Fixes #72397 From 894c3c837725c75f8ad19a185139d07b10fb2e0a Mon Sep 17 00:00:00

[clang] [clang][ExprConst] allow single element access of vector object to be constant expression (PR #72607)

2023-11-21 Thread Yuanfang Chen via cfe-commits
yuanfang-chen wrote: ping? https://github.com/llvm/llvm-project/pull/72607 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [clang codegen][regression] Add dso_local/hidden/etc. markings to VTT definitions and declarations (PR #72452)

2023-11-21 Thread via cfe-commits
bd1976bris wrote: Thanks for the reviews  https://github.com/llvm/llvm-project/pull/72452 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [llvm] Remove experimental from Vector Crypto extensions (PR #69000)

2023-11-21 Thread Eric Biggers via cfe-commits
ebiggers wrote: At https://github.com/ebiggers/llvm-project/tree/remove_experimental_from_vector_crypto I've rebased this pull request, squashed the commits, resolved conflicts, fixed the Zvkn duplication, and run `git clang-format`. Note, it was necessary to change the type of `enum

[clang] [Clang] Introduce scoped variants of GNU atomic functions (PR #72280)

2023-11-21 Thread Joseph Huber via cfe-commits
jhuber6 wrote: > Missing change to clang/docs/LanguageExtensions.rst describing the new > builtins. > Will do. > Are there any other projects that we might want to coordinate with here? gcc, > maybe? Unknown, I've never collaborated with anyone outside of LLVM. I know they have handling of

[clang] fix: compatible C++ empty record with align UB with gcc (PR #72197)

2023-11-21 Thread via cfe-commits
@@ -307,7 +307,12 @@ AArch64ABIInfo::classifyArgumentType(QualType Ty, bool IsVariadic, // 0. if (IsEmpty && Size == 0) return ABIArgInfo::getIgnore(); -return ABIArgInfo::getDirect(llvm::Type::getInt8Ty(getVMContext())); +// An empty struct can have

[clang] fix: compatible C++ empty record with align UB with gcc (PR #72197)

2023-11-21 Thread via cfe-commits
https://github.com/hstk30-hw edited https://github.com/llvm/llvm-project/pull/72197 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] [Clang] Introduce scoped variants of GNU atomic functions (PR #72280)

2023-11-21 Thread Eli Friedman via cfe-commits
efriedma-quic wrote: Missing change to clang/docs/LanguageExtensions.rst describing the new builtins. Are there any other projects that we might want to coordinate with here? gcc, maybe? https://github.com/llvm/llvm-project/pull/72280 ___

[clang] [llvm] [AMDGPU] Emit a waitcnt instruction after each memory instruction (PR #68932)

2023-11-21 Thread Jun Wang via cfe-commits
https://github.com/jwanggit86 updated https://github.com/llvm/llvm-project/pull/68932 >From e393477607cb94b45a3b9a5db2aea98fb8af2a86 Mon Sep 17 00:00:00 2001 From: Jun Wang Date: Thu, 12 Oct 2023 16:45:59 -0500 Subject: [PATCH 01/10] [AMDGPU] Emit a waitcnt instruction after each memory

[clang] [CUDA][HIP] make trivial ctor/dtor host device (PR #72394)

2023-11-21 Thread via cfe-commits
alexfh wrote: @yxsamliu What's the plan here? This issue is blocking us. If there is no obvious fix very soon, we need to revert this. https://github.com/llvm/llvm-project/pull/72394 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] Honor -fno-sanitize-link-runtime for libclang_rt.asan_static (PR #66414)

2023-11-21 Thread Vitaly Buka via cfe-commits
vitalybuka wrote: LGTM, looks straightforward Optionally wait for @MaskRay for a day or so. https://github.com/llvm/llvm-project/pull/66414 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] Honor -fno-sanitize-link-runtime for libclang_rt.asan_static (PR #66414)

2023-11-21 Thread Vitaly Buka via cfe-commits
https://github.com/vitalybuka approved this pull request. https://github.com/llvm/llvm-project/pull/66414 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [clang] Honor -fno-sanitize-link-runtime for libclang_rt.asan_static (PR #66414)

2023-11-21 Thread Vitaly Buka via cfe-commits
Will do There is a button to "re-request" reviews. Otherwise it does not show up in seach like https://github.com/llvm/llvm-project/pulls/review-requested/@me On Tue, 21 Nov 2023 at 10:06, via cfe-commits wrote: > > pirama-arumuga-nainar wrote: > > @vitalybuka can you help review this change? >

[clang] [llvm] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Momchil Velikov via cfe-commits
momchil-velikov wrote: I only now noticed I had a bunch of comments sitting for a few weeks in "Pending" state :/ https://github.com/llvm/llvm-project/pull/66524 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[clang] [llvm] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Momchil Velikov via cfe-commits
@@ -1757,46 +1826,55 @@ void AArch64FrameLowering::emitPrologue(MachineFunction , } } - StackOffset AllocateBefore = SVEStackSize, AllocateAfter = {}; + StackOffset SVECalleeSavedSize = {}, SVELocalsSize = SVEStackSize; MachineBasicBlock::iterator CalleeSavesBegin

[llvm] [clang] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Momchil Velikov via cfe-commits
@@ -1076,6 +1076,16 @@ void CodeGenModule::Release() { "sign-return-address-with-bkey", 1); } + if (Arch == llvm::Triple::aarch64 || Arch == llvm::Triple::aarch64_be) { +auto *InlineAsm = llvm::MDString::get(TheModule.getContext(),

[llvm] [clang] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Momchil Velikov via cfe-commits
@@ -9460,6 +9461,94 @@ bool AArch64InstrInfo::isReallyTriviallyReMaterializable( return TargetInstrInfo::isReallyTriviallyReMaterializable(MI); } +MachineBasicBlock::iterator +AArch64InstrInfo::insertStackProbingLoop(MachineBasicBlock::iterator MBBI, +

[llvm] [clang] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Momchil Velikov via cfe-commits
@@ -26262,3 +26262,37 @@ bool AArch64TargetLowering::preferScalarizeSplat(SDNode *N) const { } return true; } + +bool AArch64TargetLowering::hasInlineStackProbe( +const MachineFunction ) const { + // If the function specifically requests inline stack probes, emit

[clang] [llvm] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Momchil Velikov via cfe-commits
@@ -1827,12 +1908,36 @@ void AArch64FrameLowering::emitPrologue(MachineFunction , // FIXME: in the case of dynamic re-alignment, NumBytes doesn't have // the correct value here, as NumBytes also includes padding bytes, // which shouldn't be counted here. -

[clang] [llvm] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Momchil Velikov via cfe-commits
@@ -672,6 +673,74 @@ void AArch64FrameLowering::emitCalleeSavedSVERestores( emitCalleeSavedRestores(MBB, MBBI, true); } +void AArch64FrameLowering::allocateSVEStackSpace( +MachineBasicBlock , MachineBasicBlock::iterator MBBI, +StackOffset AllocSize, StackOffset

[llvm] [clang] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Momchil Velikov via cfe-commits
@@ -9460,6 +9461,94 @@ bool AArch64InstrInfo::isReallyTriviallyReMaterializable( return TargetInstrInfo::isReallyTriviallyReMaterializable(MI); } +MachineBasicBlock::iterator +AArch64InstrInfo::insertStackProbingLoop(MachineBasicBlock::iterator MBBI, +

[llvm] [clang] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Momchil Velikov via cfe-commits
@@ -672,6 +673,74 @@ void AArch64FrameLowering::emitCalleeSavedSVERestores( emitCalleeSavedRestores(MBB, MBBI, true); } +void AArch64FrameLowering::allocateSVEStackSpace( +MachineBasicBlock , MachineBasicBlock::iterator MBBI, +StackOffset AllocSize, StackOffset

[clang] [llvm] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Momchil Velikov via cfe-commits
@@ -97,14 +97,45 @@ AArch64FunctionInfo::AArch64FunctionInfo(const Function , if (const auto *BTE = mdconst::extract_or_null( F.getParent()->getModuleFlag("branch-target-enforcement"))) BranchTargetEnforcement = BTE->getZExtValue(); -return; + } else

[llvm] [clang] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Momchil Velikov via cfe-commits
@@ -4052,3 +4193,192 @@ void AArch64FrameLowering::orderFrameObjects( dbgs() << "\n"; }); } + +/// Emit a loop to decrement SP until it is equal to TargetReg, with probes at +/// least every ProbeSize bytes. Returns an iterator of the first instruction +/// after the

[llvm] [clang] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Momchil Velikov via cfe-commits
@@ -1827,12 +1908,36 @@ void AArch64FrameLowering::emitPrologue(MachineFunction , // FIXME: in the case of dynamic re-alignment, NumBytes doesn't have // the correct value here, as NumBytes also includes padding bytes, // which shouldn't be counted here. -

[llvm] [clang] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Momchil Velikov via cfe-commits
@@ -26262,3 +26262,37 @@ bool AArch64TargetLowering::preferScalarizeSplat(SDNode *N) const { } return true; } + +bool AArch64TargetLowering::hasInlineStackProbe( +const MachineFunction ) const { + // If the function specifically requests inline stack probes, emit

[llvm] [clang] Remove experimental from Vector Crypto extensions (PR #69000)

2023-11-21 Thread Eric Biggers via cfe-commits
@@ -141,6 +141,23 @@ on support follow. ``Zve64f`` Supported ``Zve64d`` Supported ``Zvfh`` Supported + ``Zvbb`` Supported + ``Zvbc`` Supported + ``Zvkb`` Supported + ``Zvkg`` Supported +

[clang] [Driver] Simply some gcc search logic (PR #72558)

2023-11-21 Thread Tom Stellard via cfe-commits
https://github.com/tstellar updated https://github.com/llvm/llvm-project/pull/72558 >From 3a0896141cf11c604f28326b3a6eee3762b4f79d Mon Sep 17 00:00:00 2001 From: Tom Stellard Date: Thu, 16 Nov 2023 05:54:29 + Subject: [PATCH 1/2] [Driver] Simply some gcc search logic ---

[llvm] [clang] Remove experimental from Vector Crypto extensions (PR #69000)

2023-11-21 Thread Eric Biggers via cfe-commits
ebiggers wrote: FYI, I tried squashing the commits of this pull request and rebasing onto `main`, but there are conflicts in several files https://github.com/llvm/llvm-project/pull/69000 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[llvm] [clang] Remove experimental from Vector Crypto extensions (PR #69000)

2023-11-21 Thread Eric Biggers via cfe-commits
ebiggers wrote: Hi! What's the status of this pull request? Are there any major issues remaining? It would be very useful to have the LLVM assembler officially support the vector crypto extensions. I've been reviewing the [RISC-V vector crypto accelerated crypto routines for the Linux

[clang] [llvm] [AMDGPU] Emit a waitcnt instruction after each memory instruction (PR #68932)

2023-11-21 Thread Jun Wang via cfe-commits
@@ -388,6 +388,8 @@ class SIInsertWaitcnts : public MachineFunctionPass { // message. DenseSet ReleaseVGPRInsts; + // bool insertWaitcntAfterMemOp(MachineFunction ); jwanggit86 wrote: Done. https://github.com/llvm/llvm-project/pull/68932

[clang] [llvm] [AMDGPU] Emit a waitcnt instruction after each memory instruction (PR #68932)

2023-11-21 Thread Jun Wang via cfe-commits
@@ -1708,6 +1710,13 @@ bool SIInsertWaitcnts::insertWaitcntInBlock(MachineFunction , } ++Iter; +if (ST->isPreciseMemoryEnabled() && Inst.mayLoadOrStore()) { + auto builder = jwanggit86 wrote: Done.

[clang] [llvm] [AMDGPU] Emit a waitcnt instruction after each memory instruction (PR #68932)

2023-11-21 Thread Jun Wang via cfe-commits
@@ -1708,6 +1710,13 @@ bool SIInsertWaitcnts::insertWaitcntInBlock(MachineFunction , } ++Iter; +if (ST->isPreciseMemoryEnabled() && Inst.mayLoadOrStore()) { + auto builder = + BuildMI(Block, Iter, DebugLoc(), TII->get(AMDGPU::S_WAITCNT)) +

[clang] [llvm] [AMDGPU] Emit a waitcnt instruction after each memory instruction (PR #68932)

2023-11-21 Thread Jun Wang via cfe-commits
@@ -0,0 +1,222 @@ +; Testing the -amdgpu-precise-memory-op option +; COM: llc -mtriple=amdgcn -mcpu=hawaii -mattr=+amdgpu-precise-memory-op -verify-machineinstrs < %s | FileCheck %s -check-prefixes=GFX7 jwanggit86 wrote: Comment. Some testcases in this file

[clang] [llvm] [AMDGPU] Emit a waitcnt instruction after each memory instruction (PR #68932)

2023-11-21 Thread Jun Wang via cfe-commits
https://github.com/jwanggit86 updated https://github.com/llvm/llvm-project/pull/68932 >From e393477607cb94b45a3b9a5db2aea98fb8af2a86 Mon Sep 17 00:00:00 2001 From: Jun Wang Date: Thu, 12 Oct 2023 16:45:59 -0500 Subject: [PATCH 1/9] [AMDGPU] Emit a waitcnt instruction after each memory

[clang] Supports viewing class member variables in lambda when using the vs debugger (PR #71564)

2023-11-21 Thread David Blaikie via cfe-commits
https://github.com/dwblaikie closed https://github.com/llvm/llvm-project/pull/71564 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] 7c3c243 - Supports viewing class member variables in lambda when using the vs debugger (#71564)

2023-11-21 Thread via cfe-commits
Author: GkvJwa Date: 2023-11-21T15:33:16-08:00 New Revision: 7c3c243c9bf80377fcad6c7699dc9aaedd650a18 URL: https://github.com/llvm/llvm-project/commit/7c3c243c9bf80377fcad6c7699dc9aaedd650a18 DIFF: https://github.com/llvm/llvm-project/commit/7c3c243c9bf80377fcad6c7699dc9aaedd650a18.diff LOG:

[clang] [llvm] [AArch64] Stack probing for dynamic allocas in SelectionDAG (PR #66525)

2023-11-21 Thread Eli Friedman via cfe-commits
@@ -0,0 +1,363 @@ +; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py +; RUN: llc -mtriple aarch64-none-eabi < %s -verify-machineinstrs | FileCheck %s + +; Dynamically-sized allocation, needs a loop which can handle any size at +; runtime. The final

[clang] [clang][AArch64] Pass down stack clash protection options to LLVM/Backend (PR #68993)

2023-11-21 Thread Eli Friedman via cfe-commits
@@ -1076,6 +1076,16 @@ void CodeGenModule::Release() { "sign-return-address-with-bkey", 1); } + if (Arch == llvm::Triple::aarch64 || Arch == llvm::Triple::aarch64_be) { efriedma-quic wrote: Module-level attributes tend to

[clang] [llvm] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Eli Friedman via cfe-commits
@@ -1076,6 +1076,16 @@ void CodeGenModule::Release() { "sign-return-address-with-bkey", 1); } + if (Arch == llvm::Triple::aarch64 || Arch == llvm::Triple::aarch64_be) { +auto *InlineAsm = llvm::MDString::get(TheModule.getContext(),

[clang] [llvm] [AArch64] Stack probing for function prologues (PR #66524)

2023-11-21 Thread Eli Friedman via cfe-commits
@@ -0,0 +1,722 @@ +; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py +; RUN: llc -mtriple aarch64-none-eabi < %s -verify-machineinstrs | FileCheck %s +; RUN: llc -mtriple aarch64-none-eabi < %s -verify-machineinstrs -global-isel -global-isel-abort=2 |

[clang] [clang] Avoid memcopy for small structure with padding under -ftrivial-auto-var-init (PR #71677)

2023-11-21 Thread Eli Friedman via cfe-commits
https://github.com/efriedma-quic approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/71677 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] fix: compatible C++ empty record with align UB with gcc (PR #72197)

2023-11-21 Thread Eli Friedman via cfe-commits
https://github.com/efriedma-quic edited https://github.com/llvm/llvm-project/pull/72197 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] fix: compatible C++ empty record with align UB with gcc (PR #72197)

2023-11-21 Thread Eli Friedman via cfe-commits
@@ -307,7 +307,12 @@ AArch64ABIInfo::classifyArgumentType(QualType Ty, bool IsVariadic, // 0. if (IsEmpty && Size == 0) return ABIArgInfo::getIgnore(); -return ABIArgInfo::getDirect(llvm::Type::getInt8Ty(getVMContext())); +// An empty struct can have

[clang] Refactor ASTContext::getDeclAlign() (NFC) (PR #72977)

2023-11-21 Thread Eli Friedman via cfe-commits
@@ -1627,28 +1627,20 @@ const llvm::fltSemantics ::getFloatTypeSemantics(QualType T) const { CharUnits ASTContext::getDeclAlign(const Decl *D, bool ForAlignof) const { unsigned Align = Target->getCharWidth(); - bool UseAlignAttrOnly = false; - if (unsigned AlignFromAttr

[lldb] [compiler-rt] [clang-tools-extra] [clang] [openmp] [llvm] [libcxx] [flang] [OpenMP] Add memory diff dump for kernel record-replay (PR #70667)

2023-11-21 Thread Giorgis Georgakoudis via cfe-commits
https://github.com/ggeorgakoudis approved this pull request. LGTM https://github.com/llvm/llvm-project/pull/70667 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] Allow multiple sanitizers on baremetal targets. (PR #72933)

2023-11-21 Thread Evgenii Stepanov via cfe-commits
https://github.com/eugenis closed https://github.com/llvm/llvm-project/pull/72933 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] fb57f4e - Allow multiple sanitizers on baremetal targets. (#72933)

2023-11-21 Thread via cfe-commits
Author: Evgenii Stepanov Date: 2023-11-21T13:11:12-08:00 New Revision: fb57f4e0e0b302ec1b3181e952a4bd4b3c57a286 URL: https://github.com/llvm/llvm-project/commit/fb57f4e0e0b302ec1b3181e952a4bd4b3c57a286 DIFF:

[clang] Allow multiple sanitizers on baremetal targets. (PR #72933)

2023-11-21 Thread Evgenii Stepanov via cfe-commits
@@ -973,11 +973,58 @@ // RUN: not %clang --target=x86_64-sie-ps5 -fsanitize=kcfi %s -### 2>&1 | FileCheck %s --check-prefix=CHECK-UBSAN-KCFI // RUN: not %clang --target=x86_64-sie-ps5 -fsanitize=function -fsanitize=kcfi %s -### 2>&1 | FileCheck %s

[clang] Allow multiple sanitizers on baremetal targets. (PR #72933)

2023-11-21 Thread Evgenii Stepanov via cfe-commits
@@ -491,3 +491,26 @@ void baremetal::Linker::ConstructJob(Compilation , const JobAction , JA, *this, ResponseFileSupport::AtFileCurCP(), Args.MakeArgString(TC.GetLinkerPath()), CmdArgs, Inputs, Output)); } + +SanitizerMask BareMetal::getSupportedSanitizers() const

[clang] Allow multiple sanitizers on baremetal targets. (PR #72933)

2023-11-21 Thread Evgenii Stepanov via cfe-commits
https://github.com/eugenis updated https://github.com/llvm/llvm-project/pull/72933 >From f665e96f5a941c45591281d66c69f289aa641985 Mon Sep 17 00:00:00 2001 From: Evgenii Stepanov Date: Mon, 20 Nov 2023 16:54:24 -0800 Subject: [PATCH 1/2] Allow multiple sanitizers on baremetal targets.

[clang] [clang][NFC] Reorder Atomic builtins to be consistent. (PR #72718)

2023-11-21 Thread James Y Knight via cfe-commits
https://github.com/jyknight closed https://github.com/llvm/llvm-project/pull/72718 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[clang] 752c21b - [clang][NFC] Reorder Atomic builtins to be consistent. (#72718)

2023-11-21 Thread via cfe-commits
Author: Logikable Date: 2023-11-21T16:00:31-05:00 New Revision: 752c21be68613f92e2de16cd380098cf830bc261 URL: https://github.com/llvm/llvm-project/commit/752c21be68613f92e2de16cd380098cf830bc261 DIFF: https://github.com/llvm/llvm-project/commit/752c21be68613f92e2de16cd380098cf830bc261.diff

[clang] [llvm] [mlir] [lld] [AMDGPU] Change default AMDHSA Code Object version to 5 (PR #73000)

2023-11-21 Thread Jon Chesterfield via cfe-commits
JonChesterfield wrote: This is a wild amount of code churn from a trivial change. 10k lines of almost all noise. Means the chances of us noticing breakage in a code review tool is pretty low. How about as a first patch we pass `-code-object=v4` or whatever syntax to essentially all the

[clang] [llvm] [SystemZ][z/OS] This change adds support for the PPA2 section in zOS (PR #68926)

2023-11-21 Thread Yusra Syeda via cfe-commits
https://github.com/ysyeda updated https://github.com/llvm/llvm-project/pull/68926 >From 78f82bcf33998de0663f4684a64a240f2e97f8a9 Mon Sep 17 00:00:00 2001 From: Yusra Syeda Date: Thu, 12 Oct 2023 16:56:27 -0400 Subject: [PATCH 01/19] This change adds support for the PPA2 section in zOS ---

[clang] [Clang][NVPTX] Allow passing arguments to the linker while standalone (PR #73030)

2023-11-21 Thread Joseph Huber via cfe-commits
https://github.com/jhuber6 updated https://github.com/llvm/llvm-project/pull/73030 >From ee43e8f9ae90bcd70d46b17cfecb854711a4b1ce Mon Sep 17 00:00:00 2001 From: Joseph Huber Date: Tue, 21 Nov 2023 13:45:10 -0600 Subject: [PATCH] [Clang][NVPTX] Allow passing arguments to the linker while

[llvm] [lld] [mlir] [clang] [AMDGPU] Change default AMDHSA Code Object version to 5 (PR #73000)

2023-11-21 Thread Joseph Huber via cfe-commits
@@ -75,8 +75,8 @@ bb.2: store volatile i32 0, ptr addrspace(1) undef ret void } -; DEFAULTSIZE: .amdhsa_private_segment_fixed_size 4112 -; DEFAULTSIZE: ; ScratchSize: 4112 +; DEFAULTSIZE: .amdhsa_private_segment_fixed_size 16 jhuber6 wrote: My

[llvm] [lld] [mlir] [clang] [AMDGPU] Change default AMDHSA Code Object version to 5 (PR #73000)

2023-11-21 Thread Jon Chesterfield via cfe-commits
@@ -75,8 +75,8 @@ bb.2: store volatile i32 0, ptr addrspace(1) undef ret void } -; DEFAULTSIZE: .amdhsa_private_segment_fixed_size 4112 -; DEFAULTSIZE: ; ScratchSize: 4112 +; DEFAULTSIZE: .amdhsa_private_segment_fixed_size 16 JonChesterfield wrote: This

  1   2   3   4   >