Re: [PATCH v2 03/10] libstdc++: Implement submdspan_extents. [PR110352]

2025-11-19 Thread Tomasz Kaminski
On Wed, Nov 19, 2025 at 6:22 PM Luc Grosheintz wrote: > > > On 11/19/25 14:54, Tomasz Kaminski wrote: > > On Tue, Nov 18, 2025 at 3:28 PM Luc Grosheintz > > > wrote: > > > >> Implement submdspan_extents as described in P3663 and adds it to the std > >> module. > >> > >> There's one deviation fro

[committed] c++: Fix error recovery ICE in tsubst_baselink [PR120876]

2025-11-19 Thread Jakub Jelinek
Hi! The following testcase ICEs since r12-6080. The problem is that lookup_fnfields can return NULL_TREE on failure, but the maybe_incomplete handling was added before the if (!baselink) handling and assumes that baselink is non-NULL (and BASELINK). The following patch reorders the if (maybe_inc

[PATCH] combine: Partially revert the r12-4475 changes [PR120250]

2025-11-19 Thread Jakub Jelinek
Hi! The r12-4475 change added extra code to recog_for_combine to attempt to force some constants into the constant pool. Unfortunately, as this (UB at runtime) testcase shows, such changes are harmful for computed_jump_p jumps. The computed_jump_p returns false for loads from constant pool MEMs:

[PATCH] c++: Limit P2795R5 handling of jumps across vacuous inits to !processing_template_decl [PR122758]

2025-11-19 Thread Jakub Jelinek
Hi! The extra handling of jumps across vacuous inits for -std=c++26 or -ftrivial-auto-var-init={zero,pattern} added for P2795R5 is undesirable when processing_template_decl, because it creates labels without DECL_NAME and GOTO_EXPRs to those and those can't be tsubsted. I was afraid the pop_labels

[PATCH v1] rs6000: Remove redundant emit_insn from first_mismatch_or_eos_index

2025-11-19 Thread Vijay Shankar
Changes from v1: * Corrected commit message formatting and fixed typo. This patch removes redundant vector compare instructions and logic from the vec_first_mismatch_or_eos_index intrinsic. Currently, GCC generates extra vcmpneb instructions and additional masking logic (xxland, xxlorc) to

Re: [PATCH 1/1] Fix typo in eh49.C and eh52.C: O9 -> O0

2025-11-19 Thread Andrew Pinski
On Wed, Nov 19, 2025 at 10:24 PM Jim Tsung-Chun Lin(林宗俊) wrote: > So there is not enough history on these 2. They were added to the repo as > -O9 back in 1997 when it looks like the testsuite was merged in a whole to > the cvs. I suspect these testcases were failing at -O3 back then. So > changin

[PATCH 1/1] Fix typo in eh49.C and eh52.C: O9 -> O3

2025-11-19 Thread Jim Lin
I believe there is no reason to use -O9 for these two testcases. So I assumed it was a typo. --- gcc/testsuite/g++.old-deja/g++.mike/eh49.C | 2 +- gcc/testsuite/g++.old-deja/g++.mike/eh52.C | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/testsuite/g++.old-deja/g++.mike/

回覆: [PATCH 1/1] Fix typo in eh49.C and eh52.C: O9 -> O0

2025-11-19 Thread 林宗俊
​ So there is not enough history on these 2. They were added to the repo as -O9 back in 1997 when it looks like the testsuite was merged in a whole to the cvs. I suspect these testcases were failing at -O3 back then. So changing it to -O0 seems wrong and unwanted. Can you explain why you want to

Re: [PATCH 1/1] Fix typo in eh49.C and eh52.C: O9 -> O0

2025-11-19 Thread Andrew Pinski
On Wed, Nov 19, 2025 at 9:28 PM Jim Lin wrote: > > I believe there is no reason to use -O9 for these two testcases. So I > assumed it was a typo. The number 9 is next to 0 on the keyboard. So there is not enough history on these 2. They were added to the repo as -O9 back in 1997 when it looks lik

[PATCH 1/1] Fix typo in eh49.C and eh52.C: O9 -> O0

2025-11-19 Thread Jim Lin
I believe there is no reason to use -O9 for these two testcases. So I assumed it was a typo. The number 9 is next to 0 on the keyboard. --- gcc/testsuite/g++.old-deja/g++.mike/eh49.C | 2 +- gcc/testsuite/g++.old-deja/g++.mike/eh52.C | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff -

Re: [PATCH] c++: Fix error recovery in cp_hide_range_decl [PR122465]

2025-11-19 Thread Jason Merrill
On 11/19/25 1:57 PM, Jakub Jelinek wrote: Hi! The following testcase shows that range_decl in cp_hide_range_decl is sometimes also NULL_TREE and not just error_mark_node, and the function IMHO should treat both the same, not try to hide anything in that case because it doesn't know what should b

[PATCH] rs6000: Fix [su]mul_highpart patterns to use unspec [PR122665]

2025-11-19 Thread jeevitha
Hi All, The following patch is to fix PR122665 has been bootstrapped and regtested on powerpc64le-linux. Is it OK for trunk? The existing smul3_highpart and umul3_highpart patterns incorrectly defined the high-part multiply by shifting both operands before multiplication. This does not match the

Re: [PATCH v3] PR tree-optimization/122733: Remove patterns for (y << x) {<,<=,>,>=} x

2025-11-19 Thread Dhruv Chawla
On 19/11/25 20:47, Jakub Jelinek wrote: External email: Use caution opening links or attachments On Wed, Nov 19, 2025 at 08:39:48PM +0530, Dhruv Chawla wrote: Ah, I didn't even think of that, good catch. I've attached an updated patch, does it look okay? Signed-off-by: Dhruv Chawla

Re: [PATCH] build: Define DISABLE_MULTILIB if --disable-multilib

2025-11-19 Thread Lulu Cheng
在 2025/11/19 上午12:43, Rainer Orth 写道: When building trunk on Solaris with --disable-multilib, I noticed that the non-default multilib wasn't rejected any longer, leading to unexpected link failures. I could trace this to DISABLE_MULTILIB no longer being defined in multilib.h. The problem ist

Re: [PATCH 09/19] doc, cris: Clean up CRIS option documentation [PR122243]

2025-11-19 Thread Sandra Loosemore
On 11/19/25 15:07, Hans-Peter Nilsson wrote: I wrote: If I had gone with your suggestions your changes would make sense, so I trust that you can reverse the hyphenated vs. no-hyphenated form change without separate approval, so "ok with that change". ...which of course does not address

Re: [PATCH] c++: Fix error recovery for enums with bad underlying type [PR122540]

2025-11-19 Thread Jason Merrill
On 11/20/25 1:31 AM, Marek Polacek wrote: On Wed, Nov 19, 2025 at 09:24:26AM +0100, Jakub Jelinek wrote: Hi! The r16-4698 patch to use fold_convert in finish_enum_value_list instead of copy_node + set TREE_TYPE caused UB in the compiler as detected e.g. by valgrind on the g++.dg/parse/pr96442.C

Re: [PATCH] ch: Improve copy header when the first bbs goto __builtin_unreachable [PR122734]

2025-11-19 Thread Andrew Pinski
On Wed, Nov 19, 2025 at 1:38 PM Andrew Pinski wrote: > > With the addition of some `if (a) __builtin_unreachable();` in libstdc++, > the loop ch might not be copying the full header and only copy the bb > which contains the condition that leads to the `__builtin_unreachable()`. > We want to contin

[PATCH 4/4] openmp: Bump Version from 4.5 to 5.2

2025-11-19 Thread Gio T
This patch alters the documentation to reflect the version change, deprecations, and current implementation status of OpenMP. Built/tested x86_64-pc-linux-gnu. From 4fe50b2a6b9bebfb77c2dd27040529a1f1feab58 Mon Sep 17 00:00:00 2001 From: supers1ngular Date: Mon, 17 Nov 2025 15:45:57 -0800 Subject:

[PATCH 3/4] openmp: Bump Version from 4.5 to 5.2

2025-11-19 Thread Gio T
This patch implements the Fortran deprecations for OpenMP 5.2, save those either not currently available in mainline or undeprecated in OpenMP 6.0. Deprecations use the warning introduced in patch 1/4, Wdeprecated-openmp. It modifies the test suite accordingly. Built/tested x86_64-pc-linux-gnu. Fr

[PATCH v1] RISC-V: Fix missed zero extend for unsigned scalar SAT_TRUNC [PR122692]

2025-11-19 Thread pan2 . li
From: Pan Li When the input of the scalar unsigned SAT_TRUNC is not Xmode, the rtx need to zero extend to Xmode before the underlying code gen. Most of other SAT_* code gen has leveraged the API riscv_extend_to_xmode_reg but still have the ustrunc missed. Then results in the failures mentioned

Re: [PATCH] Switch from USE_GAS/GLD to HAVE_GNU_AS/LD

2025-11-19 Thread Ian Lance Taylor
Rainer Orth writes: > We currently have two ways to distinguish GNU and non-GNU assemblers and > linkers: > > * USE_GAS and USE_GLD, defined via gcc/config/usegas.h and usegld.h > which are included via config.gcc > > * HAVE_GNU_AS and HAVE_GNU_LD, determined from gcc/configure.ac > > This is c

Re: [PATCH] configure: Support disabling specific languages [PR12407]

2025-11-19 Thread Lewis Hyatt
On Mon, Nov 17, 2025 at 12:09 AM Sam James wrote: > > Lewis Hyatt writes: > > > Hello- > > > > This patch makes it easier to disable a specific language, which is a need > > that comes up from time to time. I have tested it by trying a variety of > > combinations of --enable-languages arguments o

Re: [PATCH v7 7/7] riscv: Add RISC-V Kernel Control Flow Integrity implementation

2025-11-19 Thread Kees Cook
On Wed, Nov 19, 2025 at 08:35:35AM -0700, Jeff Law wrote: > Note there's still review work to do on the RISC-V bits. But it's worth > noting your patch triggers ICEs in the RISC-V testsuite. See: > > https://github.com/ewlu/gcc-precommit-ci/issues/4115#issuecomment-3543758441 Ah thanks for the

Re: [PATCH] tree-optimization/122722 - better SLP reduction group discovery

2025-11-19 Thread Andrew Waterman
On Wed, Nov 19, 2025 at 1:31 PM Robin Dapp wrote: > > > Yes, it's supposed to be a start. > > > > Btw, after Robin now implemented "type punning" for gather/stride loads > > to handle power-of-two size groups load/store-lanes needs similar > > support which would esp. help ARM where there's only u

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

2025-11-19 Thread Jeff Law
On 11/16/25 4:36 PM, H.J. Lu wrote: On Mon, Nov 17, 2025 at 12:38 AM Jeff Law wrote: On 10/27/25 3:53 PM, H.J. Lu wrote: As HJ indicated, I wouldn't expect significant fallout on load/store architectures. So the scope of fallout isn't likely to be too terrible. I was going to throw

Re: [PATCH 14/19] doc, bpf: Clean up eBPF option documentation [PR122243]

2025-11-19 Thread Jose E. Marchesi
Hello Sandra. The bpf changes LGTM. Thanks! > gcc/ChangeLog > PR other/122243 > * doc/invoke.texi (Option Summary) : Fix formatting > issues. Remove redundant entry for -mno-co-re. > (eBPF Options): Add missing @opindex entries. Combine documentation > for -mco-r

Re: [PATCH 09/19] doc, cris: Clean up CRIS option documentation [PR122243]

2025-11-19 Thread Hans-Peter Nilsson
I wrote: If I had gone with your suggestions your changes would make sense, so I trust that you can reverse the hyphenated vs. no-hyphenated form change without separate approval, so "ok with that change". ...which of course does not address the non-hyphenated forms not appearing in invoke.te

[committed] libstdc++: Remove vertical whitespace from code listings in manual

2025-11-19 Thread Jonathan Wakely
This removes unnecessary whitespace following blocks in the HTML output. libstdc++-v3/ChangeLog: * doc/xml/faq.xml: Remove unwanted whitespace inside programlisting elements. * doc/xml/manual/allocator.xml: Likewise. * doc/xml/manual/auto_ptr.xml: Likewise.

[committed] libstdc++: Update GCC 16.1 library versions in docs

2025-11-19 Thread Jonathan Wakely
libstdc++-v3/ChangeLog: * doc/xml/manual/abi.xml: Add versions for GCC 16. * doc/html/manual/abi.html: Regenerate. --- Pushed to trunk. libstdc++-v3/doc/html/manual/abi.html | 4 ++-- libstdc++-v3/doc/xml/manual/abi.xml | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-)

[committed] libstdc++: Update GCC 15.1 library versions in docs [PR122743]

2025-11-19 Thread Jonathan Wakely
libstdc++-v3/ChangeLog: PR libstdc++/122743 * doc/xml/manual/abi.xml: Add versions for GCC 15. * doc/html/manual/abi.html: Regenerate. --- Pushed to trunk and gcc-15. libstdc++-v3/doc/html/manual/abi.html | 4 ++-- libstdc++-v3/doc/xml/manual/abi.xml | 2 ++ 2 files ch

Re: [PATCH 09/19] doc, cris: Clean up CRIS option documentation [PR122243]

2025-11-19 Thread Hans-Peter Nilsson
> From: Sandra Loosemore > Date: Wed, 19 Nov 2025 13:07:36 -0700 > This is another patch in the series to make documentation of > target-specific options in invoke.texi match what is in the > corresponding .opt files. > > The cris.opt file is a bit strange, with many cases where negative > forms

[PATCH] ch: Improve copy header when the first bbs goto __builtin_unreachable [PR122734]

2025-11-19 Thread Andrew Pinski
With the addition of some `if (a) __builtin_unreachable();` in libstdc++, the loop ch might not be copying the full header and only copy the bb which contains the condition that leads to the `__builtin_unreachable()`. We want to continue if there is such a condition on to the next bb and copy that

Re: [PATCH v5] ipa, cgraph: Enable constant propagation to OpenMP kernels

2025-11-19 Thread Josef Melcr
Hi Malcolm, On 11/19/25 18:09, Matthew Malcomson wrote: Hi Josef, I've been seeing a linker error after this patch (commit 7cd91c7c42) on a benchmark that is not open. A `func1._omp_fn.0` gets ICF'd with a `func2._omp_fn.0`, but the address pointer in `func1` doesn't get updated for some re

Re: [PATCH] tree-optimization/122722 - better SLP reduction group discovery

2025-11-19 Thread Robin Dapp
> Yes, it's supposed to be a start. > > Btw, after Robin now implemented "type punning" for gather/stride loads > to handle power-of-two size groups load/store-lanes needs similar > support which would esp. help ARM where there's only up to ld4(?). >From what I heard so far nobody really likes seg

How to distinguish an anonymous structure TYPE when it is the top-level type or not

2025-11-19 Thread Qing Zhao
Hi, For the following two cases: A. Anonymous structure type is a top-level type: struct { int a; char c[] __attribute__ ((counted_by (a))); }; B. Anonymous structure type is the type for an unnamed field of another structure: struct s { int a; struct { int b; char c[] __att

Re: [PATCH 12/19] doc, darwin: Clean up Darwin options and documentation [PR122243]

2025-11-19 Thread Iain Sandoe
Hi Sandra, > On 19 Nov 2025, at 20:07, Sandra Loosemore wrote: > > The Darwin target options documentation was a bit of a mess, with several > undocumented options, some that were listed in the option summary or mentioned > in discussion of other options but not actually documented, and a large

Re: [PATCH 01/19] doc, aarch64: Clean up aarch64 options and documentation [PR122243]

2025-11-19 Thread Andrew Pinski
On Wed, Nov 19, 2025 at 12:16 PM Sandra Loosemore wrote: > > gcc/ChangeLog > PR other/122243 > * aarch64.opt (Wexperimental-fmv-target): Mark as "Undocumented". > * doc/invoke.texi (Option Summary) : Don't > list "Undocumented" aarch64 options -mverbose-cost-dump or

[PATCH 14/19] doc, bpf: Clean up eBPF option documentation [PR122243]

2025-11-19 Thread Sandra Loosemore
gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) : Fix formatting issues. Remove redundant entry for -mno-co-re. (eBPF Options): Add missing @opindex entries. Combine documentation for -mco-re and -mno-co-re. --- gcc/doc/invoke.texi | 30 ++

[PATCH 16/19] doc, ft32: Clean up FT32 options and documentation [PR122243]

2025-11-19 Thread Sandra Loosemore
gcc/ChangeLog PR other/122243 * config/ft32/ft32.opt (mlra): Mark obsolete option as Undocumented. * doc/invoke.texi (Option Summary) : Remove -mlra. (FT32 Options): Likewise. Add @opindex entries for negative option forms. --- gcc/config/ft32/ft32.opt | 2

[PATCH 12/19] doc, darwin: Clean up Darwin options and documentation [PR122243]

2025-11-19 Thread Sandra Loosemore
The Darwin target options documentation was a bit of a mess, with several undocumented options, some that were listed in the option summary or mentioned in discussion of other options but not actually documented, and a large number of options listed in darwin.opt as being obsolete. I've undocument

[RFA 19/19] doc, h8300: Clean up H8/300 option and attribute documentation [PR122243]

2025-11-19 Thread Sandra Loosemore
Comparing the documentation in invoke.texi with hs8300.opt, I spotted a few options in the latter that were missing documentation, and added it. Also -mexr and -mno-exr are listed as separate options in the .opt file but pretty clearly are intended to be inverses of each other, so I added RejectNe

[PATCH 11/19] doc, mingw: Clean up Cygwin and MinGW option documentation [PR122243]

2025-11-19 Thread Sandra Loosemore
gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) : Correct spelling of -mthreads and add missing options. (Cygwin and MinGW Options): Add @opindex for negative forms. --- gcc/doc/invoke.texi | 9 +++-- 1 file changed, 7 insertions(+), 2 deletions

[PATCH 17/19] doc, frv: Clean up FRV option documentation [PR122243]

2025-11-19 Thread Sandra Loosemore
frv.opt has a few options that have never been documented in the manual. In the initial commit of the FRV port (prior to the adoption of .opt files) they were marked as "Internal debug switch" so I have explicitly made them "Undocumented", consistently with other options similarly marked in the or

[PATCH 18/19] doc, linux: Clean up GNU/Linux option documentation [PR122243]

2025-11-19 Thread Sandra Loosemore
gcc/ChangeLog PR other/122243 * doc/invoke.texi: Document -mno-android. --- gcc/doc/invoke.texi | 4 1 file changed, 4 insertions(+) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 97e60473337..07bf00219c6 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.tex

[PATCH 15/19] doc, fr30: Clean up FR30 option documentation [PR122243]

2025-11-19 Thread Sandra Loosemore
gcc/ChangeLog PR other/122243 * doc/invoke.texi (FR30 Options): Add @opindex for -mno-small-model. --- gcc/doc/invoke.texi | 1 + 1 file changed, 1 insertion(+) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 5f1fabc8b0e..4333700df4a 100644 --- a/gcc/doc/invoke.texi +

[PATCH 07/19] doc, blackfin: Don't separately document no- form of Blackfin options [PR122243]

2025-11-19 Thread Sandra Loosemore
The documentation for Blackfin options had separate entries for the positive and negative forms of many options, both in the Option Summary and detailed documentation. This is unnecessarily verbose and counter to the general rule that only one form of each option is documented. gcc/ChangeLog

[PATCH 08/19] doc, c6x: Document missing C6X options [PR122243]

2025-11-19 Thread Sandra Loosemore
gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) : Add -mdbst and -mlong-calls. (C6X Options): Likewise. --- gcc/doc/invoke.texi | 13 - 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.te

[PATCH 10/19] doc, csky: C-SKY option documentation cleanup [PR122243]

2025-11-19 Thread Sandra Loosemore
gcc/ChangeLog PR other/122243 * doc/invoke.texi (Option Summary) : Remove entries for "Undocumented" options -EB, -EL, -mhard-float, -msoft-float, and nonexistent option -mcse-cc. (C-SKY Options): Likewise. Also remove references to "Undocumented" op

[PATCH 09/19] doc, cris: Clean up CRIS option documentation [PR122243]

2025-11-19 Thread Sandra Loosemore
This is another patch in the series to make documentation of target-specific options in invoke.texi match what is in the corresponding .opt files. The cris.opt file is a bit strange, with many cases where negative forms are listed explicitly as separate options from the positive forms, with both h

[PATCH 13/19] doc, alpha: Document missing alpha options [PR122243]

2025-11-19 Thread Sandra Loosemore
gcc/ChangeLog PR other/122243 * config/alpha/alpha.opt (mgas): Mark as Undocumented. * doc/invoke.texi (Option Summary) : Add -mtls-kernel, -mtls-size=, -mlong-double-128, and -mlong-double-64. (DEC Alpha Options): Likewise. --- gcc/config/alpha/alpha.opt |

[PATCH 01/19] doc, aarch64: Clean up aarch64 options and documentation [PR122243]

2025-11-19 Thread Sandra Loosemore
gcc/ChangeLog PR other/122243 * aarch64.opt (Wexperimental-fmv-target): Mark as "Undocumented". * doc/invoke.texi (Option Summary) : Don't list "Undocumented" aarch64 options -mverbose-cost-dump or -Wexperimental-fmv-target, or both positive and negative form

[PATCH 02/19] doc, epiphany: Clean up epiphany target options and docs [PR122243]

2025-11-19 Thread Sandra Loosemore
gcc/ChangeLog PR other/122243 * config/epiphany/epiphany.opt (mlong-calls): Make it do something useful. (may-round-for-trunc): Make this undocumented option with a weird name an alias for -mmay-round-for-trunc. (mfp-iarith): Fix doc string. *

[PATCH 06/19] doc, arm: Clean up ARM option documentation [PR122243]

2025-11-19 Thread Sandra Loosemore
This patch undocuments ARM target-specific options that have never been implemented, are already marked as "Undocumented" in arm.opt file, and/or are presently documented as obsolete or only useful for back end debugging. I've also cleaned up the option summary to list only one of the positive or

[PATCH 05/19] doc, arc: Undocument deprecated and deleted options [PR122243]

2025-11-19 Thread Sandra Loosemore
The ARC front end presently has a large number of options that are explicitly deprecated, either by the "Warn" option or by being documented as such in the GCC manual. The manual text has documented a long list of obsolete options with a warning that they will be removed completely in a future rel

[RFA 04/19] arc: Fix positive form of -mno-brcc and -mno-dpfp-lrsr options [PR122243]

2025-11-19 Thread Sandra Loosemore
These two options are defined in the negative form and don't have the RejectNegative property so they end up having positive forms beginning with "-mno-no-", which is confusing. I've inverted the sense of the option instead (so that the positive forms are -mbrcc and -mdpfp-lrsr). I'm not set up t

Re: [PATCH] c++: Fix error recovery for enums with bad underlying type [PR122540]

2025-11-19 Thread Marek Polacek
On Wed, Nov 19, 2025 at 09:24:26AM +0100, Jakub Jelinek wrote: > Hi! > > The r16-4698 patch to use fold_convert in finish_enum_value_list instead > of copy_node + set TREE_TYPE caused UB in the compiler as detected e.g. > by valgrind on the g++.dg/parse/pr96442.C g++.dg/cpp0x/auto9.C testcases. >

[RFA 03/19] doc, gcn: Clean up gcn target options and docs [PR122243] [PR122288]

2025-11-19 Thread Sandra Loosemore
Per PR target/122288, gcn.opt contained some invalid syntax that was quietly accepted by the options processor. This patch fixes that, marks some useless options as "Undocumented", and brings the documentation into sync with the options file. I tested the .opt file changes on both a standalone gc

[PATCH 00/19] doc: First batch of target options cleanups [PR122243]

2025-11-19 Thread Sandra Loosemore
Continuing with PR122243 fixes, this set of patches covers about the first third of the target-specific options sections in invoke.texi. The goal I've been working towards with these patches is that all options that aren't marked as "Undocumented" in the .opt file ought to have documentation in the

Re: [PATCH v3] c++: fix ICE with consteval functions in template decls [PR122658]

2025-11-19 Thread Marek Polacek
On Wed, Nov 19, 2025 at 05:03:05PM +0100, Daniele Sahebi wrote: > Fixed the issues from the previous version. > Bootstrapped and regtested on x86_64-linux-unknown-gnu, OK? > --- > > Currently, build_over_call calls build_cplus_new in template decls, generating > a TARGET_EXPR that it then passes t

Re: [PATCH 0/5] Some gcov bugfixes and improvements

2025-11-19 Thread Jørgen Kvalsvik
On 11/5/25 23:38, Jørgen Kvalsvik wrote: Hi, These patches are a mix of features, bugfixes, and quality of life improvements. * fixes a wrong line count when multiple blocks touch the same line * -fpath-coverage and -fcondition-coverage implies -ftest-coverage (.gcno, a prerequisite for run

[COMMITTED] PR tree-optimization/122756 - Avoid recursion with SCEV

2025-11-19 Thread Andrew MacLeod
Now that SCEV is calling ranger for values, we need to make sure ranger doesnt call back into SCEV again or we get infinite loops like this PR. fold_using_range::range_of_ssa_name_with_loop_info   tries to use SCEV to see if it can refinea PHI result based on loop information. This patch adds

Re: [PATCH] ipa/122663 - fix ICE with stmt removal during IPA modification

2025-11-19 Thread Martin Jambor
Hello, On Thu, Nov 13 2025, Richard Biener wrote: > We currently remove stmts inside of a FOR_EACH_IMM_USE_STMT iteration > which can be problematical. The following adjusts purge_all_uses > to gather all stmts to remove and remove them in reverse order > afterwards which also better deals with d

Re: [PATCH] Switch from USE_GAS/GLD to HAVE_GNU_AS/LD

2025-11-19 Thread John David Anglin
On 2025-11-19 12:49 p.m., Rainer Orth wrote: > Hi Dave, > >> On 2025-11-19 3:29 a.m., Rainer Orth wrote: >>> diff --git a/gcc/config/ia64/hpux.h b/gcc/config/ia64/hpux.h >>> --- a/gcc/config/ia64/hpux.h >>> +++ b/gcc/config/ia64/hpux.h >>> @@ -62,10 +62,6 @@ do {

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

2025-11-19 Thread Joseph Myers
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 of (because that's a

Re: [PATCH 4/4] ipa: Remove LTO requirement for builtin callback carriers

2025-11-19 Thread Martin Jambor
Hi, On Sat, Oct 18 2025, Josef Melcr wrote: > Due to the if statement in ipa_compute_jump_functions_for_bb, callback > edges were never constructed for builtin functions unless LTO was > enabled. This patch corrects this behavior, allowing GCC to optimize > callbacks more broadly. It also extend

Re: [PATCH 3/4] ipa: Add early return when the hashed edge is a callback-carrying edge.

2025-11-19 Thread Martin Jambor
Hello, On Sat, Oct 18 2025, Josef Melcr wrote: > The inclusion of this early return statement has been discussed before, > it was ultimately left out of the original patch, but it turns out to be > necessary. > > When a callback edge is being created, it is first created by > symbol_table::create_

Re: [PATCH] Switch from USE_GAS/GLD to HAVE_GNU_AS/LD

2025-11-19 Thread Rainer Orth
Hi Dave, > On 2025-11-19 3:29 a.m., Rainer Orth wrote: >> diff --git a/gcc/config/ia64/hpux.h b/gcc/config/ia64/hpux.h >> --- a/gcc/config/ia64/hpux.h >> +++ b/gcc/config/ia64/hpux.h >> @@ -62,10 +62,6 @@ do { >> \ >> #undef ASM_EXTRA_SPEC >>

Re: [PATCH v2 03/10] libstdc++: Implement submdspan_extents. [PR110352]

2025-11-19 Thread Luc Grosheintz
On 11/19/25 14:54, Tomasz Kaminski wrote: On Tue, Nov 18, 2025 at 3:28 PM Luc Grosheintz wrote: Implement submdspan_extents as described in P3663 and adds it to the std module. There's one deviation from the standard. Doesn't (under all circumstances) require: 0 <= begin[k] <= end[k] <

Re: [PATCH v5] ipa, cgraph: Enable constant propagation to OpenMP kernels

2025-11-19 Thread Matthew Malcomson
Hi Josef, I've been seeing a linker error after this patch (commit 7cd91c7c42) on a benchmark that is not open. A `func1._omp_fn.0` gets ICF'd with a `func2._omp_fn.0`, but the address pointer in `func1` doesn't get updated for some reason and the linker ends up complaining that there is no

Re: [PATCH v3 2/5] asf: Add cost function for store/load reordering

2025-11-19 Thread Andi Kleen
> I know I was pushing for it to be enabled more widely as it's painfully hard > to forward from a narrow store to a wider load. But based on earlier > discussions I've backed off that position. FWIW I would expect any slightly better OOO core aimed at general purpose code to have some form of ha

Re: [PATCH] aarch64: Fix ICE when laying out arguments of size 0 [PR 122763]

2025-11-19 Thread Wilco Dijkstra
Hi Alfie,   > This is a fix for the regression I caused with my preserve_none patch. > > Bootstrapped and reg tested on aarch64-linux-gnu. LGTM. Cheers, Wilco When laying out arguments of size 0, previously would return the next argument passing register, without checking that there was a next

RE: [PATCH] aarch64: Add cortex-A320 core

2025-11-19 Thread Tamar Christina
Hi Alfie, > -Original Message- > From: Alfie Richards > Sent: 14 November 2025 13:45 > To: [email protected] > Cc: Richard Earnshaw ; Tamar Christina > ; [email protected]; Alice Carlotti > ; Alex Coplan ; Wilco > Dijkstra ; [email protected]; Alfie > Richards > Subj

Re: [PATCH] Switch from USE_GAS/GLD to HAVE_GNU_AS/LD

2025-11-19 Thread John David Anglin
On 2025-11-19 3:29 a.m., Rainer Orth wrote: > diff --git a/gcc/config/ia64/hpux.h b/gcc/config/ia64/hpux.h > --- a/gcc/config/ia64/hpux.h > +++ b/gcc/config/ia64/hpux.h > @@ -62,10 +62,6 @@ do { > \ > #undef ASM_EXTRA_SPEC > #define ASM_EXTR

Re: [PATCH v2] libstdc++: Optimize functor storage for transform views iterators.

2025-11-19 Thread Patrick Palka
On Fri, 14 Nov 2025, Tomasz Kamiński wrote: > The iterators for transform views (views::transform, views::zip_transform, > and views::adjacent_transform) now store a __detail::__func_handle instead > of a pointer to the view object (_M_parent). > > The behavior of the __func_handle specialization

[PATCH] aarch64: Fix ICE when laying out arguments of size 0 [PR 122763]

2025-11-19 Thread Alfie Richards
Hi all, This is a fix for the regression I caused with my preserve_none patch. Bootstrapped and reg tested on aarch64-linux-gnu. Kind Regards, Alfie -- >8 -- When laying out arguments of size 0, previously would return the next argument passing register, without checking that there was a next

Re: [PATCH] support Wild linker

2025-11-19 Thread Sam James
Martin Liška writes: > On 11/17/25 2:41 PM, Sam James wrote: >> Martin Liška writes: >> >>> Hello. >>> So this might break there, I don't know if this test would work with the hp linker though. (and yes hppa64-hp-hpux11 was working on the trunk as of a little over a month ag

[PATCH v3] c++: fix ICE with consteval functions in template decls [PR122658]

2025-11-19 Thread Daniele Sahebi
Fixed the issues from the previous version. Bootstrapped and regtested on x86_64-linux-unknown-gnu, OK? --- Currently, build_over_call calls build_cplus_new in template decls, generating a TARGET_EXPR that it then passes to fold_non_dependent_expr, which ends up calling tsubst_expr, and since tsub

Re: [PATCH v7 7/7] riscv: Add RISC-V Kernel Control Flow Integrity implementation

2025-11-19 Thread Jeff Law
On 11/17/25 1:12 PM, Kees Cook wrote: Implement RISC-V-specific KCFI backend. Nothing is conceptually rv64 specific, but using an alternative set of instructions for rv32 would be needed, and at present the only user of KCFI on riscv is the rv64 build of the Linux kernel. - Scratch register a

Re: [PATCH] support Wild linker

2025-11-19 Thread Martin Liška
On 11/17/25 2:41 PM, Sam James wrote: > Martin Liška writes: > >> Hello. >> >>> So this might break there, I don't know if this test would work with >>> the hp linker though. >>> (and yes hppa64-hp-hpux11 was working on the trunk as of a little over >>> a month ago: >>> https://gcc.gnu.org/pi

Re: [PATCH v3] PR tree-optimization/122733: Remove patterns for (y << x) {<,<=,>,>=} x

2025-11-19 Thread Jakub Jelinek
On Wed, Nov 19, 2025 at 08:39:48PM +0530, Dhruv Chawla wrote: > Ah, I didn't even think of that, good catch. I've attached an updated patch, > does it look okay? > Signed-off-by: Dhruv Chawla > > PR tree-optimization/122733 > > gcc/ChangeLog: > > * match.pd: Remove patterns. Also c

[PATCH v3] PR tree-optimization/122733: Remove patterns for (y << x) {<,<=,>,>=} x

2025-11-19 Thread Dhruv Chawla
On 19/11/25 19:45, Jakub Jelinek wrote: External email: Use caution opening links or attachments On Wed, Nov 19, 2025 at 03:07:52PM +0100, Richard Biener wrote: --- a/gcc/match.pd +++ b/gcc/match.pd @@ -1339,37 +1339,19 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT) (if (INTEGRAL_TYPE_P (type))

Re: [PATCH v2] c++: fix ICE with consteval functions in template decls [PR122658]

2025-11-19 Thread Jakub Jelinek
On Wed, Nov 19, 2025 at 03:49:28PM +0100, Daniele Sahebi wrote: > > --- /dev/null > > +++ b/gcc/testsuite/g++.dg/pr122658.C > > @@ -0,0 +1,15 @@ > > +/* PR c++/53055 */ > Well I just noticed this is wrong. > I was looking around the other tests to see what they were doing and > that must have slipp

Re: [PATCH] vrp: Infer ranges from constant aggregates with initializers (v3)

2025-11-19 Thread Martin Jambor
Hello, On Mon, Nov 10 2025, David Malcolm wrote: > On Sat, 2025-11-08 at 00:12 +0100, Martin Jambor wrote: > > [...snip...] > >> diff --git a/gcc/testsuite/gcc.dg/tree-ssa/vrp-from-cst-agg-3.c >> b/gcc/testsuite/gcc.dg/tree-ssa/vrp-from-cst-agg-3.c >> new file mode 100644 >> index 000..d4

Re: [PATCH] c6x: fix the scheduling of floating-point multiplication instructions

2025-11-19 Thread Jeff Law
On 11/17/25 7:59 AM, Richard Braun wrote: From: Richard Braun Instructions have two time-related units associated with them: the number of delay slots, and the functional unit latency. But some floating-point multiplication instructions have a functional unit latency that actually varies dep

Re: [PATCH v2] c++: fix ICE with consteval functions in template decls [PR122658]

2025-11-19 Thread Daniele Sahebi
On Wed, Nov 19, 2025 at 09:28:42AM +0100, Daniele Sahebi wrote: > Fixed what was asked. > Bootstrapped and regtested on x86_64-linux-unknown-gnu, please tell me > if there are any other issues. > > --- > Currently, build_over_call calls build_cplus_new in template decls, generating > a TARGET_EXPR

Re: [PATCH v3 2/5] asf: Add cost function for store/load reordering

2025-11-19 Thread Konstantinos Eleftheriou
On Wed, Nov 19, 2025 at 10:32 AM Richard Biener wrote: > On Tue, 18 Nov 2025, Konstantinos Eleftheriou wrote: > > > On Mon, Nov 17, 2025 at 2:51 PM Richard Biener > wrote: > > > > > On Mon, 17 Nov 2025, Konstantinos Eleftheriou wrote: > > > > > > > Hi Richard, thanks for the feedback. > > > > >

Re: [PATCH v3 2/5] asf: Add cost function for store/load reordering

2025-11-19 Thread Jeff Law
On 11/19/25 1:32 AM, Richard Biener wrote: Well. I think it's OK to enable on a subset of targets by default, but it should be target maintainers say whether a target is among the crowd or not. There's the target specific optimization_table as mechanism to achieve such defaults, like gcc/

[PATCH v4 1/2] asf: Update destination register after store_bit_field when needed

2025-11-19 Thread Konstantinos Eleftheriou
Sometimes, `store_bit_field` copies the destination register into a new one, which leads to the old register being used in the instructions that follow the ones generated by `store_bit_field`, while the bit field insertion is performed on the new register. This patch copies back the new destinatio

[PATCH v4 2/2] asf: Enable pass at O2 or higher on AArch64

2025-11-19 Thread Konstantinos Eleftheriou
From: kelefth This patch enables the avoid-store-forwarding patch by default at O2 or higher on AArch64. The assembly patterns in `bitfield-bitint-abi-align16.c` and `bitfield-bitint-abi-align8.c` have been updated to account for the asf transformations. gcc/ChangeLog: * common/config/

[PATCH v4 0/2] asf: Enable pass at O2 or higher on AArch64

2025-11-19 Thread Konstantinos Eleftheriou
The avoid-store-forwarding pass is disabled by default and therefore in the risk of bit-rotting. This patch addresses this by enabling the pass at O2 or higher on AArch64. Bootstrapped/regtested on AArch64 and x86_64. Changes in v4: - Enable asf on AArch64 only. - Remove `avoid_store_forwardin

Re: [PATCH] c++: Fix error recovery in cp_hide_range_decl [PR122465]

2025-11-19 Thread Marek Polacek
On Wed, Nov 19, 2025 at 09:27:27AM +0100, Jakub Jelinek wrote: > Hi! > > The following testcase shows that range_decl in cp_hide_range_decl is > sometimes also NULL_TREE and not just error_mark_node, and the function > IMHO should treat both the same, not try to hide anything in that case > becaus

Re: [PATCH v2] PR tree-optimization/122733: Remove patterns for (y << x) {<,<=,>,>=} x

2025-11-19 Thread Jakub Jelinek
On Wed, Nov 19, 2025 at 03:07:52PM +0100, Richard Biener wrote: > > --- a/gcc/match.pd > > +++ b/gcc/match.pd > > @@ -1339,37 +1339,19 @@ DEFINE_INT_AND_FLOAT_ROUND_FN (RINT) > > (if (INTEGRAL_TYPE_P (type)) > >(rshift (op @0 @2) @1 > > > > -/* (y << x) == x -> 0 when y != 0. */

Re: [PATCH v2] PR tree-optimization/122733: Remove patterns for (y << x) {<,<=,>,>=} x

2025-11-19 Thread Richard Biener
On Wed, 19 Nov 2025, [email protected] wrote: > From: Dhruv Chawla > > These patterns should not be in match.pd as they require range > information checks that ideally belong in VRP. They were also causing > breakages as the checks weren't tight enough. > > Bootstrapped and regtested on aarch64

[PATCH v2] PR tree-optimization/122733: Remove patterns for (y << x) {<, <=, >, >=} x

2025-11-19 Thread dhruvc
From: Dhruv Chawla These patterns should not be in match.pd as they require range information checks that ideally belong in VRP. They were also causing breakages as the checks weren't tight enough. Bootstrapped and regtested on aarch64-linux-gnu. Signed-off-by: Dhruv Chawla PR tree-op

Re: [PATCH v2 03/10] libstdc++: Implement submdspan_extents. [PR110352]

2025-11-19 Thread Tomasz Kaminski
On Tue, Nov 18, 2025 at 3:28 PM Luc Grosheintz wrote: > Implement submdspan_extents as described in P3663 and adds it to the std > module. > > There's one deviation from the standard. Doesn't (under all > circumstances) require: > > 0 <= begin[k] <= end[k] <= exts.extent(k) > > where the k-th s

Re: [PATCH][_GLIBCXX_DEBUG] Fix std::erase_if implementation for std::vector

2025-11-19 Thread Jonathan Wakely
On Tue, 18 Nov 2025 at 21:38, François Dumont wrote: > > Ok, here is the new patch, only fixing the std::erase_if behavior for > the _GLIBCXX_DEBUG. Is that right? I thought this change is to benefit direct uses of __gnu_debug::vector not std::vector with _GLIBCXX_DEBUG? The first new test alread

[committed][RISC-V] Fix trivial bootstrap failure on RISC-V

2025-11-19 Thread Jeff Law
Trivial bootstrap fix for the RISC-V port where a recent change introduced a signed vs unsigned warning. Pushing to the trunk. jeffcommit a3e97daf1f7452d060d2e5e4eb2fea7717343f18 Author: Jeff Law Date: Wed Nov 19 06:34:33 2025 -0700 [RISC-V] Fix trivial bootstrap failure on RISC-V

Re: [PATCH] libstdc++: store the length after the store of the null character

2025-11-19 Thread Jakub Jelinek
On Wed, Nov 19, 2025 at 02:13:28PM +0100, Richard Biener wrote: > > > Makes me wonder if we couldn't set DECL_NONADDRESSABLE_P on private > > > FIELD_DECLs in classes where none of the methods take address of it and > > > either it doesn't have friends, or none of the friends take address of it > >

Re: [PATCH] libstdc++: store the length after the store of the null character

2025-11-19 Thread Tomasz Kaminski
On Wed, Nov 19, 2025 at 2:06 PM Jakub Jelinek wrote: > On Wed, Nov 19, 2025 at 01:49:39PM +0100, Richard Biener wrote: > > Then, there is DECL_NONADDRESSABLE_P on a FIELD_DECL which for, > > say > > > > struct{ > > int len; > > char *data; > > }; > > > > could say that 'len' cannot ha

Re: [PATCH] libstdc++: store the length after the store of the null character

2025-11-19 Thread Richard Biener
On Wed, Nov 19, 2025 at 2:03 PM Jakub Jelinek wrote: > > On Wed, Nov 19, 2025 at 02:00:03PM +0100, Jakub Jelinek wrote: > > On Wed, Nov 19, 2025 at 01:49:39PM +0100, Richard Biener wrote: > > > Then, there is DECL_NONADDRESSABLE_P on a FIELD_DECL which for, > > > say > > > > > > struct{ > > >

  1   2   >