Re: [PATCH] Add -fcombine-op-with-volatile-memory-load

2025-11-25 Thread Uros Bizjak
On Wed, Nov 26, 2025 at 8:26 AM H.J. Lu wrote: > > > The reasons for try_combine_insn are that > > > > > > 1. When general_operand is called, instruction info isn't available. > > > 2. Only recog_for_combine_1 calls init_recog_no_volatile and > > > tries memory operands. > > But if we make stores

[PATCH] RISC-V: Add Andes 45 series pipeline description.

2025-11-25 Thread Kuan-Lin Chen
The Andes 45 series is a 8-stage, in-order, and dual-issue execution pipeline. Co-author: Allen Bing-Sung Lu ([email protected]) gcc/ChangeLog: * config/riscv/riscv-cores.def (RISCV_TUNE): Add andes-45-sereis. (RISCV_CORE): Add Andes 45 series cpu list. * config/riscv/r

[PATCH] RISC-V: Add Andes 23 series pipeline description.

2025-11-25 Thread Kuan-Lin Chen
The Andes 23 series is a 3-stage, in-order execution pipeline and configurable dual-ALU execution. Co-author: Allen Bing-Sung Lu ([email protected]) gcc/ChangeLog: * config/riscv/riscv-cores.def (RISCV_TUNE): Add andes-23-series. (RISCV_CORE): Add Andes 23-series cpu list.

Re: [PING^2] [PATCH v2] configure: reject unsupported --with-long-double-64 option

2025-11-25 Thread Manjunath S Matti
Thanks, I also got it on the documentation [https://gcc.gnu.org/install/configure.html] "If using|--without-long-double-128|,|long double|will be by default 64-bit, the same as|double|type" That's clear! I am adding Andrew for his comments on this patch. Thanks. On 25/11/25 12:20 pm, Ki

Re: [PATCH] Add -fcombine-op-with-volatile-memory-load

2025-11-25 Thread H.J. Lu
On Wed, Nov 26, 2025 at 8:34 AM Jeff Law wrote: > > > > On 11/20/25 4:35 PM, H.J. Lu wrote: > > >> > >> The latest version needs to be posted for review, but before you do > >> that, I few comments on the version I tested from your branch. > >> > >> I don't see any good reason to have a target hoo

[PATCH] Revert "RISC-V: Implement RISC-V profile macro support"

2025-11-25 Thread Zhongyao Chen
This reverts commit 79b8f23a709. Revert temporarily due to compatibility issues discussed in: https://github.com/riscv-non-isa/riscv-c-api-doc/pull/128 We will wait for this Pull Request to reach consensus and be merged before resubmitting a new patch. gcc/ChangeLog: * common/config/ri

Re: [PATCH v5] [aarch64] Make better use of overflowing operations in max/min(a, add/sub(a, b)) [PR116815]

2025-11-25 Thread Dhruv Chawla
On 25/11/25 19:58, Alex Coplan wrote: External email: Use caution opening links or attachments On 05/11/2025 10:39, Dhruv Chawla wrote: On 28/10/25 22:03, Alex Coplan wrote: External email: Use caution opening links or attachments Hi Dhruv, Sorry for the long wait on this one. Comments be

Re: [PATCH v3] Add built-in memalignment [PR122117]

2025-11-25 Thread Peter0x44
Pinging this. Anything left to do on my end? Would like to get this commited before the stage 2 or whatever disqualifies it. On 2025-10-22 20:13, Peter Damianov wrote: C23 adds a memalignment function to determine the alignment of a pointer. Given how simple it is (convert pointer to an integ

[PING^4][PATCH] [RFC v2][AutoFDO] Implement summary information in auto-profile

2025-11-25 Thread Dhruv Chawla
On 17/11/25 09:18, Dhruv Chawla wrote: External email: Use caution opening links or attachments On 10/11/25 11:19, Dhruv Chawla wrote: External email: Use caution opening links or attachments On 30/10/25 11:17, Dhruv Chawla wrote: External email: Use caution opening links or attachments O

[PING^5][RFC PATCH v4 0/3] Source filename tracking in GCOV

2025-11-25 Thread Dhruv Chawla
On 19/11/25 09:46, Dhruv Chawla wrote: External email: Use caution opening links or attachments On 12/11/25 09:37, Dhruv Chawla wrote: External email: Use caution opening links or attachments On 05/11/25 09:22, Dhruv Chawla wrote: External email: Use caution opening links or attachments O

[PATCH] Refactor mgather/mscatter implementation.

2025-11-25 Thread liuhongt
Current implementation is an alias to -mtune-crtl=(Alias(mtune-ctrl=, use_gather, ^use_gather)), and maybe override by another -mtune-crtl= .i.e -mgather -mscatter will only enable mscatter The patch fixes the issue. Bootstrap and regtested on x86_64-pc-linux-gnu{-m32,}. Ready push to trunk. gcc

Re: Re: [PATCH] rs6000: Support __vector_pair and __vector_quad from POWER9 and later.

2025-11-25 Thread Avinash Jayakar
On Tue, 2025-11-25 at 15:07 -0600, Peter Bergner wrote: > On 11/25/25 10:31 AM, Avinash Jayakar wrote: > > If the MMA is not available, can we just map the __vector_quad to 4 > > contiguous vsx registers (just like __vector_pair), in which case > > we > > would not need to prime/deprime. > > Note

[PUSHED 2/2] phiprop: Small compile time improvement for phiprop

2025-11-25 Thread Andrew Pinski
Now that post dom information is only needed when the new store can trap (since r16--g952e145796d), only calculate it when that is the case. It was calculated on demand by r14-2051-g3124bfb14c0bdc. This just changes when we need to calculate it. Pushed as obvious. gcc/ChangeLog: * tr

[PUSHED 1/2] phiprop: Make sure types of the load match the inserted phi [PR122847]

2025-11-25 Thread Andrew Pinski
This was introduced with r16-5556-ge94e91d6f3775, but the type check for the delay was not happen because the type at the point of delaying was set to NULL. It is only until a non-delayed load when the phi is created, the type is set. This adds the type check to the replacement for the delayed sta

Re: [PATCH v3] RISC-V: Implement RISC-V profile macro support

2025-11-25 Thread Jeff Law
On 11/20/25 9:27 AM, Christoph Müllner wrote: Hi Zhongyao, Jeff, and Kito, In the discussion of this feature in the RISC-V C API PR [1], Craig brought up a compatibility issue: "Developer writes code for RVA23U64 today. In the future the code is compiled with RVA30U64 that is superset of RVA2

Re: [PATCH] Add -fcombine-op-with-volatile-memory-load

2025-11-25 Thread Jeff Law
On 11/20/25 4:35 PM, H.J. Lu wrote: The latest version needs to be posted for review, but before you do that, I few comments on the version I tested from your branch. I don't see any good reason to have a target hook to disable this behavior since we have a flag to control. If the patch tr

Re: [PATCH]: pch, target: update host hooks for NetBSD (see also PR71934)

2025-11-25 Thread Jeff Law
On 11/18/25 7:41 PM, Kalvis Duckmanton wrote: Hi! The PCH use_address hooks for NetBSD hosts have not yet been updated to allow compiled headers to be loaded at an address different from their preferred address. This change updates host-netbsd.cc:netbsd_gt_pch_use_address() thus: if a co

[PATCH v8 1/1] c: Add _Maxof and _Minof operators

2025-11-25 Thread Alejandro Colomar
Link: These operators have not yet been accepted by the C Committee, so this is implemented as a GNU extension. gcc/ChangeLog: * doc/extend.texi (Syntax Extensions): Document _Maxof & _Minof. gcc/c-family/ChangeLog: *

[PATCH v8 0/1] c: Add _Maxof & _Minof [n3628]

2025-11-25 Thread Alejandro Colomar
Hi Joseph, v8 rejects incomplete types (see range-diff below). All tests ok (see below). Have a lovely night! Alex alx@devuan:~/src/gnu/gcc/maxof$ git tag maxof8 alx@devuan:~/src/gnu/gcc/maxof$ git log --oneline gnu/master^..maxof8 01f798987a7f (HEAD -> maxof, tag: maxof

Re: [PATCH 1/4] testsuite: Clean up the weak declaration scanning

2025-11-25 Thread Jeff Law
On 11/23/25 7:07 PM, feedable wrote: Add scan-weak function to testsuite, which would work like scan-hidden, and allow for format-specific regexes --- gcc/testsuite/gcc.dg/weak/weak-1.c | 16 +- gcc/testsuite/gcc.dg/weak/weak-10.c | 2 +- gcc/testsuite/gcc.dg/weak/weak-11.c | 2

Re: [PATCH] libgomp: Fix GCC build after glibc@cd748a6

2025-11-25 Thread Jeff Law
On 11/22/25 7:32 AM, Frank Scheiner wrote: The toolchain autobuilds for ia64 failed ([1]) yesterday with: ``` libtool: compile: /usr/src/t2-src/src.gcc.ia64-toolchain.251121.040147.278918/gcc-16-20251116/objs/gcc/xgcc-wrapper /usr/src/t2-src/src.gcc.ia64-toolchain.251121.040147.278918/gcc-

Re: [PATCH v2] c-family: Fix PID_TYPE on 32-bit Solaris

2025-11-25 Thread Joseph Myers
On Tue, 25 Nov 2025, Rainer Orth wrote: > Hi Joseph, > > > On Tue, 25 Nov 2025, Rainer Orth wrote: > > > >> However, I think find that defining __PID_TYPE__ alone is still useful > >> since it follows a well-known and easily understandable pattern, even if > >> its use is limited. This is what t

[PATCH] eh: Invoke cleanups/destructors in asm goto jumps [PR122835]

2025-11-25 Thread Jakub Jelinek
Hi! The eh pass lowers try { } finally { } stmts and handles in there e.g. GIMPLE_GOTOs or GIMPLE_CONDs which jump from within the try block out of that by redirecting the jumps to an artificial label with code to perform the cleanups/destructors and then continuing the goto, ultimately to the ori

[PATCH] match.pd: Use get_range_query (cfun) in more simplifications and pass current stmt to range_of_expr [PR119683]

2025-11-25 Thread Jakub Jelinek
Hi! The following testcase regressed with r13-3596 which switched over vrp1 to ranger vrp. Before that, I believe vrp1 was registering SSA_NAMEs with ASSERT_EXPRs at the start of bbs and so even when querying the global ranges from match.pd patterns during the vrp1 pass, they saw the local ranges

Re: [PATCH 4/5] libstdc++: Add platform wait functions for DragonFly [PR120527]

2025-11-25 Thread Jonathan Wakely
On Tue, 25 Nov 2025 at 21:04, Jonathan Wakely wrote: > > This defines __platform_wait, __platform_notify, and > __platform_wait_until for darwin, making use of the umtx_sleep and That should say DragonFly, not darwin. Fixed in my local tree. > umtx_wakeup functions. > > libstdc++-v3/ChangeLog: >

Re: [PATCH 5/5] libstdc++: Add platform wait functions for OpenBSD [PR120527]

2025-11-25 Thread Jonathan Wakely
On Tue, 25 Nov 2025, 21:41 Andrew Pinski, wrote: > On Tue, Nov 25, 2025 at 1:17 PM Jonathan Wakely > wrote: > > > > This defines __platform_wait, __platform_notify, and > > __platform_wait_until for darwin, making use of the futex syscall. > > small typo there. s/darwin/openbsd/ :). > Fixed loc

[PATCH] c++: Use get_alias_set (ptr_type_node) instead of 0 as alias set for PMF* [PR119969]

2025-11-25 Thread Jakub Jelinek
Hi! The following testcase is miscompiled by modref thinking one store is not needed: ipa-modref: call stmt IteratorImp::operator++ (&clast.d_imp); ipa-modref: call to void IteratorImp::operator++()/2 does not use ref: MEM [(struct iterator *)&clast + 8B] alias sets: 5->5 ipa-modref: call stmt I

[COMMITTED 10/12] gccrs: Add support for initial generic associated types

2025-11-25 Thread arthur . cohen
From: Philip Herron This patch is the initial part in supporting generic associated types. In rust we have trait item types that get implemented for example: trait Foo { type Bar } impl Foo for T { type Bar = T } The trait position uses a Ty::Placeholder which is just a thing

[COMMITTED 06/12] gccrs: Improve feature handling

2025-11-25 Thread arthur . cohen
From: Owen Avery This includes a program, written using flex and bison, to extract information on unstable features from rustc source code and save it to a header file. The script does fetch files from https://github.com/rust-lang/rust (the official rustc git repository), which should be alright

[COMMITTED 09/12] gccrs: add error check if derive has wrong item

2025-11-25 Thread arthur . cohen
From: Lucas Ly Ba Derive may only be applied to structs, enums and unions. gcc/rust/ChangeLog: * expand/rust-derive.cc (DeriveVisitor::derive): Add check and error. gcc/testsuite/ChangeLog: * rust/compile/issue-3971.rs: New test. Signed-off-by: Lucas Ly Ba --- gcc/r

[COMMITTED 11/12] gccrs: stop an infinite loop at END_OF_FILE

2025-11-25 Thread arthur . cohen
From: Lúcio Boari Fleury gcc/rust/ChangeLog: * parse/rust-parse-impl.h: Add early exit condition to parsing loop. Signed-off-by: Lúcio Boari Fleury --- gcc/rust/parse/rust-parse-impl.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gcc/rust/parse/rust-parse-impl

[COMMITTED 05/12] gccrs: fix cfg attribute without parentheses error

2025-11-25 Thread arthur . cohen
From: Lucas Ly Ba gcc/rust/ChangeLog: * ast/rust-ast.cc (Attribute::check_cfg_predicate): Make error when attribute has no input. gcc/testsuite/ChangeLog: * rust/compile/issue-4262.rs: New test. Signed-off-by: Lucas Ly Ba --- gcc/rust/ast/rust-ast.cc | 16 ++

[COMMITTED 12/12] gccrs: Add test for issue Rust-GCC#3608

2025-11-25 Thread arthur . cohen
From: Lúcio Boari Fleury gcc/testsuite/ChangeLog: * rust/compile/macros/mbe/macro-issue3608.rs: New Test. The test skips an issue at line 11 Signed-off-by: Lúcio Boari Fleury --- .../rust/compile/macros/mbe/macro-issue3608.rs | 12 1 file changed, 12 insertions(+)

[COMMITTED 02/12] gccrs: adds tests from issue 4140

2025-11-25 Thread arthur . cohen
From: "lenny.chiadmi-delage" Adds tests for testsuite. Fixes Rust-GCC#4140 gcc/testsuite/ChangeLog: * rust/compile/issue-4140-1.rs: New test. * rust/compile/issue-4140-2.rs: Likewise. Signed-off-by: lenny.chiadmi-delage --- gcc/testsuite/rust/compile/issue-4140-1.rs | 18 +++

[COMMITTED 08/12] gccrs: fix segfault on empty doc attribute

2025-11-25 Thread arthur . cohen
From: Lucas Ly Ba gcc/rust/ChangeLog: * hir/rust-ast-lower-base.cc (ASTLoweringBase::handle_doc_item_attribute): Make error. gcc/testsuite/ChangeLog: * rust/compile/issue-4226.rs: New test. Signed-off-by: Lucas Ly Ba --- gcc/rust/hir/rust-ast-lower-base.cc | 14 +++

[COMMITTED 07/12] gccrs: Fix compile_float_literal not compiling negatives properly

2025-11-25 Thread arthur . cohen
From: Yap Zhi Heng gcc/rust/ChangeLog: * backend/rust-compile-expr.cc (compile_float_literal): Add is_negative check to compile negative float literals properly. * backend/rust-compile-pattern.cc (CompilePatternCheckExpr::visit(RangePattern)): Minor optimization

[COMMITTED 04/12] gccrs: Create LocalVariable

2025-11-25 Thread arthur . cohen
From: Owen Avery This should make it easier for us to move away from leaking pointers to Bvariable everywhere. Since LocalVariable has a single field of type tree, it should be the same size as a pointer to Bvariable, making the switch to LocalVariable wherever possible strictly an improvement.

[COMMITTED 03/12] gccrs: fixes previously added tests

2025-11-25 Thread arthur . cohen
From: "lenny.chiadmi-delage" Fixes previously added tests. Fixes Rust-GCC#4140 gcc/testsuite/ChangeLog: * rust/compile/issue-4140-1.rs: Fixes test. * rust/compile/issue-4140-2.rs: Likewise. Signed-off-by: lenny.chiadmi-delage --- gcc/testsuite/rust/compile/issue-4140-1.rs |

[COMMITTED 01/12] gccrs: fix segfault in clone_pattern w macro

2025-11-25 Thread arthur . cohen
From: "lenny.chiadmi-delage" Check if parser throw an error to avoid cloning nullptr Fixes Rust-GCC#4140 gcc/rust/ChangeLog: * expand/rust-macro-expand.cc (transcribe_expression): Check if parser didn't fail. (transcribe_type): Likewise. (transcribe_pattern): Li

Re: [PATCH 5/5] libstdc++: Add platform wait functions for OpenBSD [PR120527]

2025-11-25 Thread Andrew Pinski
On Tue, Nov 25, 2025 at 1:17 PM Jonathan Wakely wrote: > > This defines __platform_wait, __platform_notify, and > __platform_wait_until for darwin, making use of the futex syscall. small typo there. s/darwin/openbsd/ :). Thanks, Andrew > > libstdc++-v3/ChangeLog: > > PR libstdc++/120527

Re: [PATCH v7 1/1] c: Add _Maxof and _Minof operators

2025-11-25 Thread Alejandro Colomar
Hi Joseph, On Tue, Nov 25, 2025 at 08:17:05PM +, Joseph Myers wrote: > On Tue, 25 Nov 2025, Alejandro Colomar wrote: > > > + if (!INTEGRAL_TYPE_P (type)) > > +{ > > + error_at (loc, "invalid application of %<_Maxof%> to type %qT", > > type); > > + return error_mark_node; > > +

Re: [PATCH v2] c-family: Fix PID_TYPE on 32-bit Solaris

2025-11-25 Thread Rainer Orth
Hi Joseph, > On Tue, 25 Nov 2025, Rainer Orth wrote: > >> However, I think find that defining __PID_TYPE__ alone is still useful >> since it follows a well-known and easily understandable pattern, even if >> its use is limited. This is what the following revision does, also >> clarifying the cont

[PATCH 5/5] libstdc++: Add platform wait functions for OpenBSD [PR120527]

2025-11-25 Thread Jonathan Wakely
This defines __platform_wait, __platform_notify, and __platform_wait_until for darwin, making use of the futex syscall. libstdc++-v3/ChangeLog: PR libstdc++/120527 * include/bits/atomic_wait.h [__OpenBSD__]: Reuse Linux definitions of __platform_wait_t and __platform_wait_

[PATCH 3/5] libstdc++: Add platform wait functions for darwin [PR120527]

2025-11-25 Thread Jonathan Wakely
This defines __platform_wait, __platform_notify, and __platform_wait_until for darwin, making use of the __ulock_wait and __ulock_wake functions. As with the FreeBSD _mutx_op syscall, these functions support both 32-bit and 64-bit types. libstdc++-v3/ChangeLog: PR libstdc++/120527

[PATCH v3 1/5] libstdc++: Future-proof C++20 atomic wait/notify

2025-11-25 Thread Jonathan Wakely
This will allow us to extend atomic waiting functions to support a possible future 64-bit version of futex, as well as supporting futex-like wait/wake primitives on other targets (e.g. macOS has os_sync_wait_on_address and FreeBSD has _umtx_op). Before this change, the decision of whether to do a

Re: Re: [PATCH] rs6000: Support __vector_pair and __vector_quad from POWER9 and later.

2025-11-25 Thread Peter Bergner
On 11/25/25 10:31 AM, Avinash Jayakar wrote: > If the MMA is not available, can we just map the __vector_quad to 4 > contiguous vsx registers (just like __vector_pair), in which case we > would not need to prime/deprime. Note that __vector_pair/__vector_quad are not just 2/4 contiguous VSX registe

[PATCH 4/5] libstdc++: Add platform wait functions for DragonFly [PR120527]

2025-11-25 Thread Jonathan Wakely
This defines __platform_wait, __platform_notify, and __platform_wait_until for darwin, making use of the umtx_sleep and umtx_wakeup functions. libstdc++-v3/ChangeLog: PR libstdc++/120527 * include/bits/atomic_wait.h [__DragonFly__]: Reuse Linux definitions of __platform_wa

[PATCH v2 2/5] libstdc++: Add platform wait functions for FreeBSD [PR120527]

2025-11-25 Thread Jonathan Wakely
This defines __platform_wait, __platform_notify, and __platform_wait_until for FreeBSD, making use of the _umtx_op syscall. The Linux versions of those functions only support 32-bit integers, but the FreeBSD versions use the syscall for both 32-bit and 64-bit types, as the _umtx_op supports both.

Re: [PATCH v2] c-family: Fix PID_TYPE on 32-bit Solaris

2025-11-25 Thread Joseph Myers
On Tue, 25 Nov 2025, Rainer Orth wrote: > However, I think find that defining __PID_TYPE__ alone is still useful > since it follows a well-known and easily understandable pattern, even if > its use is limited. This is what the following revision does, also > clarifying the context for __PID_TYPE_

Re: [PATCH v7 1/1] c: Add _Maxof and _Minof operators

2025-11-25 Thread Joseph Myers
On Tue, 25 Nov 2025, Alejandro Colomar wrote: > + if (!INTEGRAL_TYPE_P (type)) > +{ > + error_at (loc, "invalid application of %<_Maxof%> to type %qT", type); > + return error_mark_node; > +} GNU C has an extension allowing forward references to enum types (without fixed under

[PATCH] PR tree-optimization/122686 - Provide value_range::equal_p which ignores bitmaks.

2025-11-25 Thread Andrew MacLeod
When bitmasks were added to value-range, they were also added to operator==.   we never added the ability to compare just the ranges and ignore the bitmask.  There have been a couple of times that would have been convenient, but never really had a serious need. This patch adds equal_p () which

[PING^3][PATCH] rs6000: Improve codegen for __builtin_bswap16 on GPRs [PR121076]

2025-11-25 Thread Kishan Parmar
Ping! Please review. Thanks & Regards Kishan On 09/09/25 2:04 pm, Kishan Parmar wrote: > Hi All, > > The fallback expansion of __builtin_bswap16 on pre-Power10 used a > sequence of multiple rlwinm/or instructions: > > mr r9,r3 > rlwinm r3,r9,24,24,31 > rlwinm r10,r9,8,16,23 > or

[PING^1][PATCH] rs6000: New splitter to combine two rotates into rldic+rldimi sequence

2025-11-25 Thread Kishan Parmar
Ping! Please review.  Thanks & Regards Kishan On 13/11/25 12:20 am, Kishan Parmar wrote: > Hi Segher and All, > > GCC currently emits three instructions (rldic/rldic/or) for RTL of the > form: > > (ior (and (ashift S1 sh1) mask1) >(and (ashift S2 sh2) mask2)) > > even when the two ma

Re: [PATCH v2 1/2] libstdc++: Future-proof C++20 atomic wait/notify

2025-11-25 Thread Jonathan Wakely
On Tue, 25 Nov 2025, 15:10 Jonathan Wakely, wrote: > This will allow us to extend atomic waiting functions to support a > possible future 64-bit version of futex, as well as supporting > futex-like wait/wake primitives on other targets (e.g. macOS has > os_sync_wait_on_address and FreeBSD has _um

Re: [PATCH v1] rs6000: Remove redundant emit_insn from first_mismatch_or_eos_index

2025-11-25 Thread Segher Boessenkool
Hi! On Tue, Nov 25, 2025 at 11:15:06AM +0530, Manjunath S Matti wrote: > This patch looks good to me. > > This patch significantly simplifies the logic, by directly using vcmpnez > > which appears to achieve the same result! > > > Thanks for fixing this. > > I think we will wait for Segher co

Re: [PATCH] Change the default C++ dialect to gnu++20

2025-11-25 Thread Jakub Jelinek
On Tue, Nov 25, 2025 at 11:36:49PM +0530, Jason Merrill wrote: > It seems discussion has died down, so I think let's go ahead with this, with > an additional note in the standards.texi C++20 section that -std=c++20 > doesn't yet enable modules. So like this (incremental change first, full patch at

Re: [PATCH] rs6000: Support __vector_pair and __vector_quad from POWER9 and later.

2025-11-25 Thread Avinash Jayakar
Hi Peter, thanks for looking into this patch. On Tue, 2025-11-25 at 09:06 -0600, Peter Bergner wrote: > On 11/24/25 10:49 PM, Avinash Jayakar wrote: > > As discussed, we need to relax the requirement on __vector_pair and > > __vector_quad so that it is not tied up to MMA. > > I can believe enabl

Re: [PATCH] rs6000: Support __vector_pair and __vector_quad from POWER9 and later.

2025-11-25 Thread Michael Meissner
On Tue, Nov 25, 2025 at 09:06:37AM -0600, Peter Bergner wrote: > On 11/24/25 10:49 PM, Avinash Jayakar wrote: > > As discussed, we need to relax the requirement on __vector_pair and > > __vector_quad so that it is not tied up to MMA. > > I can believe enabling __vector_pair on pre-Power10 cpus wou

Re: [Patch, fortran] PR104650 - [PDT] ICE in gfc_resolve_finalizers, at fortran/resolve.cc:13749 since r8-3056-g5bab4c9631c478b7

2025-11-25 Thread Jerry D
On 11/25/25 7:48 AM, Paul Richard Thomas wrote: Hi All, The attached patch implements PDT finalizers and, in doing so, fixes the PR. The testcase also tests the second PDT example in the F2018 standard, which used to fail in spectacular fashion. I have checked that all the symbols are indeed

Re: [PATCH] Change the default C++ dialect to gnu++20

2025-11-25 Thread Jason Merrill
On 11/16/25 4:36 AM, Jakub Jelinek wrote: On Mon, Nov 03, 2025 at 01:34:28PM -0500, Marek Polacek via Gcc wrote: I would like us to declare that C++20 is no longer experimental and change the default dialect to gnu++20. Last time we changed the default was over 5 years ago in GCC 11:

[pushed: r16-5590] testsuite: fix issues in gcc.dg/analyzer/strchr-1.c seen with C23 libc

2025-11-25 Thread David Malcolm
Simplify this test case in the hope of avoiding an error seen with glibc-2.42.9000-537-gcd748a63ab1 in CI with "Implement C23 const-preserving standard library macros". Successfully regrtested on x86_64-pc-linux-gnu. Pushed to trunk as r16-5590-g06f094958161f8. gcc/testsuite/ChangeLog: *

[pushed: r16-5589] analyzer: add logging to deref_before_check::emit

2025-11-25 Thread David Malcolm
Successfully bootstrapped & regrtested on x86_64-pc-linux-gnu. Pushed to trunk as r16-5589-g5f1d99180a6ab9. gcc/analyzer/ChangeLog: * sm-malloc.cc (deref_before_check::emit): Add logging of the various conditions for late-rejection of a -Wanalyzer-deref-before-check warning

Re: [PATCH 2/2] libstdc++: Add platform wait functions for FreeBSD [PR120527]

2025-11-25 Thread Jonathan Wakely
On Tue, 25 Nov 2025 at 15:09, Jonathan Wakely wrote: > > This defines __platform_wait, __platform_notify, and > __platform_wait_until for FreeBSD, making use of the _umtx_op syscall. > > The Linux versions of those functions only support 32-bit integers, but > the FreeBSD versions use the syscall

Re: Unreviewd build patch

2025-11-25 Thread Jeff Law
On 11/25/25 8:51 AM, Rainer Orth wrote: The following patch has remained unreviewed for more than a week: build: Save/restore CXXFLAGS for zstd tests https://gcc.gnu.org/pipermail/gcc-patches/2025-November/700456.html It needs a build maintainer, but might even be obvious.

Re: Unreviewd build patch

2025-11-25 Thread Sam James
Rainer Orth writes: > The following patch has remained unreviewed for more than a week: > > build: Save/restore CXXFLAGS for zstd tests > https://gcc.gnu.org/pipermail/gcc-patches/2025-November/700456.html > > It needs a build maintainer, but might even be obvious. > It looks obvio

Re: [PATCH v7] libstdc++: Implement P2408R5 Ranges iterators as inputs to non-Ranges algorithms

2025-11-25 Thread Tomasz Kaminski
Thanks, LGTM. On Tue, Nov 25, 2025 at 4:22 PM Patrick Palka wrote: > changes in v7: just use decltype instead of __decltype in C++11 code > > changes in v6: replace __iter_move_val with _GLIBCXX_ITER_MOVE macro > > changes in v5: correct __iter_move_val's noexcept-spec > > changes in v4: define

Unreviewd build patch

2025-11-25 Thread Rainer Orth
The following patch has remained unreviewed for more than a week: build: Save/restore CXXFLAGS for zstd tests https://gcc.gnu.org/pipermail/gcc-patches/2025-November/700456.html It needs a build maintainer, but might even be obvious. Thanks. Rainer -- --

[PATCH v4] preprocessor: More escapes for Makefile rules (-M option) [PR41329, PR121450]

2025-11-25 Thread joergboe
Hello, is there a special reason that this patch is not merged? https://gcc.gnu.org/pipermail/gcc-patches/2025-September/695577.html Joerg

[Patch, fortran] PR104650 - [PDT] ICE in gfc_resolve_finalizers, at fortran/resolve.cc:13749 since r8-3056-g5bab4c9631c478b7

2025-11-25 Thread Paul Richard Thomas
Hi All, The attached patch implements PDT finalizers and, in doing so, fixes the PR. The testcase also tests the second PDT example in the F2018 standard, which used to fail in spectacular fashion. I have checked that all the symbols are indeed deleted during post compilation clean up. I have als

[PATCH v2] c-family: Fix PID_TYPE on 32-bit Solaris

2025-11-25 Thread Rainer Orth
Hi Joseph, > On Wed, 19 Nov 2025, Rainer Orth wrote: > >> This patch fixes this by providing a Solaris definition instead. At the >> same time, it introduces __PID_TYPE__ etc. macros matching e.g. wint_t >> as well as two testcases. > > The point of those macros is for use in the implementation o

Re: [PATCH] c++: current inst name lookup within noexcept-spec [PR122668]

2025-11-25 Thread Patrick Palka
On Wed, 19 Nov 2025, Jason Merrill wrote: > On 11/18/25 3:27 AM, Patrick Palka wrote: > > Bootstrapped and regtested on x86_64-pc-linux-gnu, does this > > look OK for trunk/15? > > OK. > > -- >8 -- > > > > Since we don't implement deferred noexcept-spec parsing of a friend > > declaration, the r

[PATCH v4 3/3][committed] AArch64: Implement {cond_}vec_cbranch_{any|all} [PR118974]

2025-11-25 Thread Tamar Christina
The following example: #define N 640 int a[N] = {}; int b[N] = {}; int c[N] = {}; void f1 (int d) { for (int i = 0; i < N; i++) { b[i] += a[i]; if (a[i] != d) break; } } today generates with -Ofast -march=armv8-a+sve --param aarch64-autovec-preference=asimd-only .L

Re: [PATCH v3 1/2] libstdc++: Make C++20s operator wrappers operator() static.

2025-11-25 Thread Jonathan Wakely
On Fri, 21 Nov 2025 at 09:55, Tomasz Kamiński wrote: > > The operator() for function objects introduced in C++20 (e.g., std::identity, > std::compare_three_way, std::ranges::equal) is now defined as static. > Although static operator() is a C++23 feature, it is supported in C++20 by > both GCC and

[PATCH v7] libstdc++: Implement P2408R5 Ranges iterators as inputs to non-Ranges algorithms

2025-11-25 Thread Patrick Palka
changes in v7: just use decltype instead of __decltype in C++11 code changes in v6: replace __iter_move_val with _GLIBCXX_ITER_MOVE macro changes in v5: correct __iter_move_val's noexcept-spec changes in v4: define the new helpers in stl_iterator_base_funcs.h rather than stl_iterator_base_types.

Re: [PATCH v3 2/2] libstdc++: Optimize functor storage for transform views iterators.

2025-11-25 Thread Jonathan Wakely
On Fri, 21 Nov 2025 at 09:54 +0100, Tomasz Kamiński wrote: The iterators for transform views (views::transform, views::zip_transform, and views::adjacent_transform) now store a function handle from (from __detail::__func_handle namespace) instead of a pointer to the view object (_M_parent). The

Re: [PATCH v5] libstdc++: Hashing support for chrono value classes [PR110357]

2025-11-25 Thread Jonathan Wakely
On Fri, 21 Nov 2025 at 11:20 +0100, Tomasz Kamiński wrote: This patch implements P2592R3 Hashing support for std::chrono value classes. To avoid the know issues with current hashing of integer types (see PR104945), we use chrono::__int_hash function that hash the bytes of representation, instead

[PATCH v2 1/2] libstdc++: Future-proof C++20 atomic wait/notify

2025-11-25 Thread Jonathan Wakely
This will allow us to extend atomic waiting functions to support a possible future 64-bit version of futex, as well as supporting futex-like wait/wake primitives on other targets (e.g. macOS has os_sync_wait_on_address and FreeBSD has _umtx_op). Before this change, the decision of whether to do a

[PATCH 2/2] libstdc++: Add platform wait functions for FreeBSD [PR120527]

2025-11-25 Thread Jonathan Wakely
This defines __platform_wait, __platform_notify, and __platform_wait_until for FreeBSD, making use of the _umtx_op syscall. The Linux versions of those functions only support 32-bit integers, but the FreeBSD versions use the syscall for both 32-bit and 64-bit types, as the _umtx_op supports both.

Re: [PATCH] rs6000: Support __vector_pair and __vector_quad from POWER9 and later.

2025-11-25 Thread Peter Bergner
On 11/24/25 10:49 PM, Avinash Jayakar wrote: > As discussed, we need to relax the requirement on __vector_pair and > __vector_quad so that it is not tied up to MMA. I can believe enabling __vector_pair on pre-Power10 cpus would work, but I don't think you can do the same for __vector_quad, given i

Re: [PATCH] libstdc++: Implement P2408R5 Ranges iterators as inputs to non-Ranges algorithms

2025-11-25 Thread Patrick Palka
On Tue, 25 Nov 2025, Tomasz Kaminski wrote: > > > On Tue, Nov 25, 2025 at 3:23 PM Patrick Palka wrote: > On Tue, 25 Nov 2025, Tomasz Kaminski wrote: > > > > > > > On Tue, Nov 25, 2025 at 3:07 PM Patrick Palka > wrote: > >       On Tue, 25 Nov 2025, Tomasz Kamins

[PATCH v2] C: fix issues when supporting counted_by fields in anonymous structure/unions [PR122495, PR122496]

2025-11-25 Thread Qing Zhao
Hi, this is the 2nd version of the patch. compared to the first version, the major difference are: 1. more testing cases: A. Support an untagged type as its own top-level type. B. Support an unnamed field with a named struct/union. C. -fms-extensions (inward-to-outward and outward-t

[PATCH] libstdc++: Bump libtool_VERSION for GCC 16

2025-11-25 Thread Jonathan Wakely
This should have been done in r16-995-gda9b2ea04c084d (or any of the later changes that added new symbols to trunk). libstdc++-v3/ChangeLog: * acinclude.m4 (libtool_VERSION): Bump version. * configure: Regenerate. --- Tested x86_64-linux. libstdc++-v3/acinclude.m4 | 2 +- libst

Re: [PATCH v5] [aarch64] Make better use of overflowing operations in max/min(a, add/sub(a, b)) [PR116815]

2025-11-25 Thread Alex Coplan
On 05/11/2025 10:39, Dhruv Chawla wrote: > On 28/10/25 22:03, Alex Coplan wrote: > > External email: Use caution opening links or attachments > > > > > > Hi Dhruv, > > > > Sorry for the long wait on this one. Comments below ... > > Hi Alex, > > Thanks for the review. I have attached a new ver

Re: [PATCH] libstdc++: Implement P2408R5 Ranges iterators as inputs to non-Ranges algorithms

2025-11-25 Thread Patrick Palka
On Tue, 25 Nov 2025, Tomasz Kaminski wrote: > > > On Tue, Nov 25, 2025 at 3:07 PM Patrick Palka wrote: > On Tue, 25 Nov 2025, Tomasz Kaminski wrote: > > > > > > > On Tue, Nov 25, 2025 at 2:58 PM Patrick Palka > wrote: > >       On Tue, 25 Nov 2025, Tomasz Kamins

Re: [PATCH] libstdc++: Implement P2408R5 Ranges iterators as inputs to non-Ranges algorithms

2025-11-25 Thread Patrick Palka
On Tue, 25 Nov 2025, Tomasz Kaminski wrote: > > > On Tue, Nov 25, 2025 at 2:58 PM Patrick Palka wrote: > On Tue, 25 Nov 2025, Tomasz Kaminski wrote: > > > > > > > On Tue, Nov 25, 2025 at 2:28 PM Patrick Palka > wrote: > >       changes in v4: define the new help

Re: [PATCH] libstdc++: Implement P2408R5 Ranges iterators as inputs to non-Ranges algorithms

2025-11-25 Thread Tomasz Kaminski
On Tue, Nov 25, 2025 at 2:58 PM Patrick Palka wrote: > On Tue, 25 Nov 2025, Tomasz Kaminski wrote: > > > > > > > On Tue, Nov 25, 2025 at 2:28 PM Patrick Palka wrote: > > changes in v4: define the new helpers in stl_iterator_base_funcs.h > > rather than stl_iterator_base_types.h. als

Re: [PATCH] libstdc++: Implement P2408R5 Ranges iterators as inputs to non-Ranges algorithms

2025-11-25 Thread Patrick Palka
On Tue, 25 Nov 2025, Tomasz Kaminski wrote: > > > On Tue, Nov 25, 2025 at 2:28 PM Patrick Palka wrote: > changes in v4: define the new helpers in stl_iterator_base_funcs.h > rather than stl_iterator_base_types.h.  also define an __iter_move_val > helper > > changes v3:

Re: [PATCH] libstdc++: Implement P2408R5 Ranges iterators as inputs to non-Ranges algorithms

2025-11-25 Thread Tomasz Kaminski
On Tue, Nov 25, 2025 at 2:28 PM Patrick Palka wrote: > changes in v4: define the new helpers in stl_iterator_base_funcs.h > rather than stl_iterator_base_types.h. also define an __iter_move_val > helper > > changes v3: add inclusive_scan test using zip's proxy iterator. rename > tests from p2408

Re: [PATCH v3 4/9] aarch64: add narrowing sme2 conversions to fp8

2025-11-25 Thread Richard Ball
On Mon, Nov 24, 2025 at 06:01:14PM +, Claudio Bantaloukas wrote: > > This patch adds the following intrinsics (all __arm_streaming only) along with > asm tests for them. All require +sme2+fp8 extensions. > > BFCVT, FCVT Convert to packed 8-bit floating-point format: > - svmfloat8_t svcvt_mf8[

[PATCH] libstdc++: Implement P2408R5 Ranges iterators as inputs to non-Ranges algorithms

2025-11-25 Thread Patrick Palka
changes in v4: define the new helpers in stl_iterator_base_funcs.h rather than stl_iterator_base_types.h. also define an __iter_move_val helper changes v3: add inclusive_scan test using zip's proxy iterator. rename tests from p2408r5.cc to c++20_iter.cc changes v2: more tests, and the one-argume

Re: [RFC v3 1/9] Track the minimum and maximum number of lanes for BB SLP

2025-11-25 Thread Richard Biener
On Mon, Nov 24, 2025 at 8:01 PM Christopher Bazley wrote: > > To decide whether to create a new SLP instance for BB SLP, > vect_analyze_slp_instance will need the minimum number of lanes > in the SLP tree, which must not be less than the group size > (otherwise "unrolling" is required). All usage

Re: [PATCH] vect: Enable prolog peeling for uncounted loops

2025-11-25 Thread Victor Do Nascimento
On 11/18/25 09:38, Richard Biener wrote: On Wed, 12 Nov 2025, Victor Do Nascimento wrote: The categorization of uncounted loops as LOOP_VINFO_EARLY_BREAKS_VECT_PEELED disables prolog peeling by default. This is due to the assumption that you have early break exits following the IV counting

Re: [pushed] c++: modules documentation tweak

2025-11-25 Thread Jakub Jelinek
On Tue, Nov 25, 2025 at 03:52:52PM +0530, Jason Merrill wrote: > The comment about P1815 not being implemented is obsolete since > Nathaniel's work starting with r15-6378. > > gcc/ChangeLog: > > * doc/invoke.texi (C++ Modules): Remove TU-local caveat. Shouldn't then P1815R2 paper be marked

[pushed] c++: modules documentation tweak

2025-11-25 Thread Jason Merrill
The comment about P1815 not being implemented is obsolete since Nathaniel's work starting with r15-6378. gcc/ChangeLog: * doc/invoke.texi (C++ Modules): Remove TU-local caveat. --- gcc/doc/invoke.texi | 8 +--- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/gcc/doc/invo

Re: [PATCH v4 1/3]middle-end: support new {cond{_len}_}vec_cbranch_{any|all} optabs [PR118974]

2025-11-25 Thread Richard Biener
On Tue, 25 Nov 2025, Tamar Christina wrote: > This patch introduces six new vector cbranch optabs > > 1. vec_cbranch_any and vec_cbranch_all. > 2. cond_vec_cbranch_any and cond_vec_cbranch_all. > 3. cond_len_vec_cbranch_any and cond_len_vec_cbranch_all. > > Today cbranch can be used for both vec

Re: [PATCH] testsuite: Fix up vla-1.c test [PR119931]

2025-11-25 Thread Richard Biener
On Tue, 25 Nov 2025, Jakub Jelinek wrote: > Hi! > > From what I can see, the vla-1.c test has been added to test the handling > of debug info for optimized out parameters. But recent changes don't make > the argument optimized away, but optimized away and replaced by constant 5 > (even without I

Re: [PATCH] gimplify, ubsan: Fix -fopenmp -fsanitize=bounds ICE [PR120052]

2025-11-25 Thread Richard Biener
On Tue, 25 Nov 2025, Jakub Jelinek wrote: > Hi! > > The following testcase ICEs, because > 1) -fsanitize=bounds uses TYPE_MAX_VALUE (TYPE_DOMAIN (type)) with >1 or 2 added as last argument of .UBSAN_BOUNDS call and that >expression at that point is some NOP_EXPR around SAVE_EXPR with >

Re: arm: add extra sizes to Wstrinop-overflow-47.c warning tests

2025-11-25 Thread Richard Biener
On Tue, 25 Nov 2025, Andre Vieira wrote: > A thumb2 target without a FPU like -mcpu=cortex-m3 will generate 'vector(4) > char' stores which lead to warnings with sizes that weren't being allowed > before by the test. This patch adds these sizes. > > gcc/testsuite/ChangeLog: > > * gcc.dg/Ws

Re: [PATCH v2 4/4] openmp: Bump Version from 4.5 to 5.2 (4/4)

2025-11-25 Thread Tobias Burnus
Gio T wrote: Modifies the documentation to accurately reflect the version bump, deprecations, and implementation status of OpenMP. Additionally fixes an omitted word from v1. LGTM. Thanks! Tobias

Re: [PATCH v2 3/4] openmp: Bump Version from 4.5 to 5.2 (3/4)

2025-11-25 Thread Tobias Burnus
Gio T wrote: Subject: [PATCH] [PATCH v2 3/4] openmp: Bump Version from 4.5 to 5.2 (3/4) Implements the OpenMP 5.2 Fortran deprecations. Uses the warning established in patch 1/4, -Wdeprecated-openmp, for said deprecations. Similarly, we do not implement the relaxing of constraints for the inte

  1   2   >