[PATCH] forwprop: Fix non-call exceptions some more with copy prop for aggregates [PR121494]

2025-08-11 Thread Andrew Pinski
From: Andrew Pinski Note this conflicts with my not yet approved patch for copy prop for aggregates into function arguments (I will get back to that soon). So the problem here is that I assumed if: *a = decl1; would not cause an exception that: decl2 = *a; would cause not cause one too. I was

Re: [PATCH] Add ia64*-*-* to the list of obsolete targets

2025-08-11 Thread Richard Biener
On Mon, 11 Aug 2025, Frank Scheiner wrote: > Dear all, > > On 11.08.25 12:59, Richard Biener wrote: > > On Mon, 11 Aug 2025, Sam James wrote: > >> Frank Scheiner writes: > >>> On 11.08.25 09:49, Richard Biener wrote: > On Sun, 10 Aug 2025, Jeff Law wrote: > > On 8/10/25 3:24 PM, Andrew

[PATCH] LoongArch: Define hook TARGET_COMPUTE_PRESSURE_CLASSES[PR120476].

2025-08-11 Thread Lulu Cheng
The rtx cost value defined by the target backend affects the calculation of register pressure classes in the IRA, thus affecting scheduling. This may cause program performance degradation. For example, OpenSSL 3.5.1 SHA512 and SPEC CPU 2017 exchange_r. This problem can be avoided by defining a se

Re: [PATCH v3] x86-64: Remove redundant TLS calls

2025-08-11 Thread Hongtao Liu
On Mon, Aug 4, 2025 at 11:33 PM H.J. Lu wrote: > > On Mon, Aug 04, 2025 at 02:57:39PM +0800, Hongtao Liu wrote: > > > > > > + rtx_insn *before = nullptr; > > > > > > + rtx_insn *after = nullptr; > > > > > > + if (insn == BB_HEAD (bb)) > > > > > > +before = insn; > > > > > > + else > > > >

Re: [PATCH] x86: Change unsigned 32-bit immediate to signed if needed

2025-08-11 Thread Hongtao Liu
On Tue, Aug 12, 2025 at 5:14 AM H.J. Lu wrote: > > Since SImode MOV only supports signed 32-bit immediate, change unsigned > 32-bit immediate to signed if needed. > > gcc/ > > PR target/121497 > * config/i386/i386-features.cc (ix86_place_single_vector_set): > Change unsigne

[PATCHv4] libstdc++: Add generate_canonical impl (P0952, LWG2524) [PR119739]

2025-08-11 Thread Nathan Myers
Changes in v4: * Static-assert arg is floating-point, coercible from bigger unsigned. * Static-assert arg satisfies uniform_random_bit_generator, movable. * Include uniform_int_dist.h for concept uniform_random_bit_generator * Coerce floating consts from unsigned literals, matching other usage.

Re: [PATCH v2 0/2] RISC-V: Combine vec_duplicate + vmerge.vvm to vmerge.vxm on GR2VR cost

2025-08-11 Thread Jeff Law
On 8/11/25 7:39 PM, pan2...@intel.com wrote: From: Pan Li This patch would like to introduce the combine of vec_dup + vmerge.vvm into vmerge.vxm on the cost value of GR2VR. The late-combine will take place if the cost of GR2VR is zero, or reject the combine if non-zero like 1, 2, 15 in test

[PATCH v2 1/2] RISC-V: Combine vec_duplicate + vmerge.vv to vmerge.vx on GR2VR cost

2025-08-11 Thread pan2 . li
From: Pan Li This patch would like to combine the vec_duplicate + vaadd.vv to the vaadd.vx. From example as below code. The related pattern will depend on the cost of vec_duplicate from GR2VR. Then the late-combine will take action if the cost of GR2VR is zero, and reject the combination if th

[PATCH v2 2/2] RISC-V: RISC-V: Add test for vec_duplicate + vmerge.vvm combine with GR2VR cost 0, 1 and 15

2025-08-11 Thread pan2 . li
From: Pan Li Add asm dump check and run test for vec_duplicate + vmerge.vvm combine to vmerge.vxm, with the GR2VR cost is 0, 2 and 15. gcc/testsuite/ChangeLog: * gcc.target/riscv/rvv/autovec/vx_vf/vx_binary.h: Add test helper macros. * gcc.target/riscv/rvv/autovec/vx_vf/

[PATCH v2 0/2] RISC-V: Combine vec_duplicate + vmerge.vvm to vmerge.vxm on GR2VR cost

2025-08-11 Thread pan2 . li
From: Pan Li This patch would like to introduce the combine of vec_dup + vmerge.vvm into vmerge.vxm on the cost value of GR2VR. The late-combine will take place if the cost of GR2VR is zero, or reject the combine if non-zero like 1, 2, 15 in test. From: | ... | vmv.v.x | L1: | vaadd.v

[committed] cobol: Bring EBCDIC NumericDisplay variables into IBM compliance.

2025-08-11 Thread Robert Dubner
>From 830b2b67e6a114984acf0686efad9fac87400b21 Mon Sep 17 00:00:00 2001 From: Robert Dubner Date: Mon, 11 Aug 2025 20:56:38 -0400 Subject: [PATCH] cobol: Bring EBCDIC NumericDisplay variables into IBM compliance. The internal representation of Numeric Display (ND) zoned decimal variables when op

Re: [PATCH v2 00/13] aarch64: CMPBR fixes

2025-08-11 Thread Richard Henderson
On 8/8/25 21:30, Richard Sandiford wrote: Richard Henderson writes: Version 1 regressed the expansion of atomics, which means the addition of CC clobber to all conditional branches is flawed. Version 2 goes the other way: remove CC clobber from all conditional branches. This requires the out-

Re: [PATCH] c++, v2: Implement C++26 P1306R5 - Expansion statements [PR120776]

2025-08-11 Thread Jason Merrill
On 8/11/25 2:39 AM, Jakub Jelinek wrote: On Wed, Aug 06, 2025 at 10:18:54PM -0700, Jason Merrill wrote: On 7/28/25 3:03 AM, Jakub Jelinek wrote: That makes sense from the specification, but also seems like an unnecessary restriction, would be worth raising with the committee. https://cplusplus

Re: [RFC v2] c++: Quoting in -fmodules-mapper [PR110153]

2025-08-11 Thread Jason Merrill
On 7/13/25 12:31 AM, Nicolas Werner wrote: Am Freitag, 11. Juli 2025, 18:42:34 Mitteleuropäische Sommerzeit schrieb Jason Merrill: On 7/10/25 4:41 PM, Nicolas Werner wrote: Users might be using a space in their build directory path. To allow specifying such a root for the module mapper started

Re: [PATCH] [RFC] Delayed parsing for bounds safety attributes

2025-08-11 Thread Joseph Myers
On Mon, 11 Aug 2025, Bill Wendling wrote: > On Thu, Jul 31, 2025 at 12:01 PM Joseph Myers wrote: > > > > On Thu, 24 Jul 2025, Aaron Ballman wrote: > > > > > Question on the .N syntax: I thought I heard that this was something > > > GCC could handle, but that it still requires late parsing to ensu

Re: [PATCH] [RFC] Delayed parsing for bounds safety attributes

2025-08-11 Thread Bill Wendling
On Thu, Jul 31, 2025 at 12:01 PM Joseph Myers wrote: > > On Thu, 24 Jul 2025, Aaron Ballman wrote: > > > Question on the .N syntax: I thought I heard that this was something > > GCC could handle, but that it still requires late parsing to ensure > > type information for N is available and that was

Re: [PATCH] driver: Rework for_each_path using C++

2025-08-11 Thread Jason Merrill
On 8/6/25 7:52 AM, John Ericson wrote: The old C-style was cumbersome make making one responsible for manually create and pass a closure (separate function and *_info class for closed-over variables). I would have liked to redo this with C++ lambdas, so we could: - derive environment types impl

Re: [PATCH] c++: fix ICE on function call with ill-formed compound requirement [PR120618]

2025-08-11 Thread Jason Merrill
On 8/8/25 12:18 AM, Ben Wu wrote: Here is a patch which conforms to the style requirements. Thanks! But I still get a bunch of complaints about the commit message from git gcc-verify, because: The ChangeLog entries should come after the rationale, not before. Please wrap lines in the commi

[PATCH] x86: Change unsigned 32-bit immediate to signed if needed

2025-08-11 Thread H.J. Lu
Since SImode MOV only supports signed 32-bit immediate, change unsigned 32-bit immediate to signed if needed. gcc/ PR target/121497 * config/i386/i386-features.cc (ix86_place_single_vector_set): Change unsigned 32-bit immediate to signed if needed. gcc/testsuite/

Re: [PATCH 1/2] Match: Support SAT_TRUNC variant NARROW_CLIP

2025-08-11 Thread Edwin Lu
On Fri, Aug 8, 2025 at 3:23 AM Richard Biener wrote: > > On Wed, Aug 6, 2025 at 7:04 AM Edwin Lu wrote: > > > > This patch tries to add support for a variant of SAT_TRUNC where > > negative numbers are clipped to 0 instead of NARROW_TYPE_MAX_VALUE. > > This form is seen in x264, aka > > > > UT cl

Re: [Patch, fortran] PR121398 - gfortran rejects procedure binding on PDT

2025-08-11 Thread Paul Richard Thomas
Thanks, Jerry. Pushed as r16-3135. Paul On Mon, 11 Aug 2025 at 18:38, Jerry D wrote: > On 8/11/25 8:10 AM, Paul Richard Thomas wrote: > > Hi All, > > > > This patch eliminates errors that arose in the use of generic bindings > in PDT > > templates and their instances. This came about because

[PATCH v2 2/2] libstdc++: Simplify precomputed partial products in .

2025-08-11 Thread Luc Grosheintz
Prior to this commit, the partial products of static extents in was done in a loop that calls a function that computes the partial product. The complexity is quadratic in the rank. This commit removes the quadratic complexity. libstdc++-v3/ChangeLog: * include/std/mdspan (__static_prod)

[PATCH v2 0/2] Two cleanup patches for .

2025-08-11 Thread Luc Grosheintz
This second iteration: - fixes the commit message of both patches, - prefers if over multiplying with 1, - use a span instead of a const array&, - use constexpr for __sta_prod. Luc Grosheintz (2): libstdc++: Reduce size static storage for __fwd_prod in mdspan. libstdc++: Simplify prec

[PATCH v2 1/2] libstdc++: Reduce size static storage for __fwd_prod in mdspan.

2025-08-11 Thread Luc Grosheintz
This fixes an oversight in a previous commit that improved mdspan related code. Because __size doesn't use __fwd_prod, __fwd_prod(__rank) is not needed anymore. Hence, one can shrink the size of __fwd_partial_prods. libstdc++-v3/ChangeLog: * include/std/mdspan (__fwd_partial_prods): Reduc

Re: [PATCH] D: Adjust the code-gen for a string constant.

2025-08-11 Thread Iain Sandoe
Hi Iain, > On 11 Aug 2025, at 17:36, Iain Buclaw wrote: > > Excerpts from Iain Sandoe's message of August 11, 2025 12:33 am: >> Tested on x86_64-darwin (i.e. that the string is now seen as a regular > No preference over whether you go for `length + 1` or > build_string_literal, both are OK. T

Re: [Patch, fortran] PR121398 - gfortran rejects procedure binding on PDT

2025-08-11 Thread Jerry D
On 8/11/25 8:10 AM, Paul Richard Thomas wrote: Hi All, This patch eliminates errors that arose in the use of generic bindings in PDT templates and their instances. This came about because none of the pdt instances matched the PDT template types and some of them might not match not match the c

Re: [PATCH] OpenMP: Improve front-end error-checking for "declare variant"

2025-08-11 Thread Tobias Burnus
Sandra Loosemore wrote: This patch fixes a number of problems with parser error checking of "declare variant", especially in the C front end. The new C testcase unprototyped-variant.c added by this patch used to ICE when gimplifying the call site, at least in part because the variant was being r

Re: [PATCH] D: Adjust the code-gen for a string constant.

2025-08-11 Thread Iain Buclaw
Excerpts from Iain Sandoe's message of August 11, 2025 12:33 am: > Tested on x86_64-darwin (i.e. that the string is now seen as a regular > c-string and placed in the appropriate section). > OK for trunk? > thanks > Iain > > --- 8< --- > > In this function, we are generating a string constant b

[PATCH v2] libstdc++: Add symlink support on Windows

2025-08-11 Thread Adam Wood
I am reposting this patch because I haven't gotten any feedback since I originally posted it a few weeks ago. Changes in v2: Wrapped a Windows specific function in an #ifdef. This patch adds symlink support on Windows. I tested it on x86_64-w64-mingw32 with msys2. A few notes about this patch: 1

[to-be-committed][RISC-V] Improve initial code generation for addsi/adddi

2025-08-11 Thread Jeff Law
This is a patch primarily from Shreya, though I think she cribbed some code from Philipp that we had internally within Ventana and I made some minor adjustments as well. So the basic idea here is similar to her work on logical ops -- specifically when we can generate more efficient code at exp

Re: [PATCH] libstdc++: Adjust generate_canonical (P0952, LWG2524) [PR119739]

2025-08-11 Thread Tomasz Kaminski
On Sat, Aug 9, 2025 at 2:00 PM Nathan Myers wrote: > Changes in V3: > * Implement exactly as specified in the WP, for C++26 and up. > * Eliminate massive overhead seen in present implementation. > > Implement P0952R2 "A new specification for std::generate_canonical". > It has us start over if t

Re: [PATCH v3] Evaluate the object size by the size of the pointee type when the type is a structure with flexible array member which is annotated with counted_by.

2025-08-11 Thread Qing Zhao
Ping * 2. Thanks a lot. Qing > On Jun 25, 2025, at 10:07, Qing Zhao wrote: > > Hi, > > This is the 3rd version of the patch for: > > Evaluate the object size by the size of the pointee type when the type > is a structure with flexible array member which is annotated with > counted_by. >

Re: [RFC PATCH v2 4/6] aarch64: Enable parsing of user-provided AArch64 CPU tuning parameters

2025-08-11 Thread Richard Sandiford
writes: > +/* Extract string value from JSON, returning allocated C string. */ > +char * > +extract_string (const json::value *val) > +{ > + if (auto *string_val = dyn_cast (val)) > +{ > + char *result = new char[string_val->get_length () + 1]; > + strcpy (result, string_val->get_s

[Patch, fortran] PR121398 - gfortran rejects procedure binding on PDT

2025-08-11 Thread Paul Richard Thomas
Hi All, This patch eliminates errors that arose in the use of generic bindings in PDT templates and their instances. This came about because none of the pdt instances matched the PDT template types and some of them might not match not match the containing specific type; ie. with different kind par

Re: [PATCH v9 0/4] extend "counted_by" attribute to pointer fields of structures + fix PR120929

2025-08-11 Thread Qing Zhao
Hi, a status update on this patch set: [PATCH v9 1/4] Extend "counted_by" attribute to pointer fields of structures. [PATCH v9 2/4] Use the counted_by attribute of pointers in builtinin-object-size [PATCH v9 3/4] Use the counted_by attribute of pointers in array bound checker. [PATCH v9 4/4] Gener

Re: [PATCH] Add ia64*-*-* to the list of obsolete targets

2025-08-11 Thread Frank Scheiner
Dear all, On 11.08.25 12:59, Richard Biener wrote: > On Mon, 11 Aug 2025, Sam James wrote: >> Frank Scheiner writes: >>> On 11.08.25 09:49, Richard Biener wrote: On Sun, 10 Aug 2025, Jeff Law wrote: > On 8/10/25 3:24 PM, Andrew Pinski wrote: >> I just looked and the last testsuite re

Re: [RFC PATCH v2 2/6] aarch64: Enable dumping of AArch64 CPU tuning parameters to JSON

2025-08-11 Thread Richard Sandiford
writes: > +/* Mapping structure for enum-to-string conversion. */ > +template struct enum_mapping > +{ > + const char *name; > + EnumType value; > +}; > + > +static const enum_mapping > + autoprefetcher_model_mappings[] > + = {{"AUTOPREFETCHER_OFF", tune_params::AUTOPREFETCHER_OFF}, > +

[PING] [PATCH] Use x86 GFNI for vectorized constant byte shifts/rotates

2025-08-11 Thread Andi Kleen
Andi Kleen writes: I wanted to ping https://gcc.gnu.org/pipermail/gcc-patches/2025-August/691624.html > From: Andi Kleen > > The GFNI AVX gf2p8affineqb instruction can be used to implement > vectorized byte shifts or rotates. This patch uses them to implement > shift and rotate patterns to all

[committed][RISC-V] Don't run tests requiring "B" on designs without "B"

2025-08-11 Thread Jeff Law
So I resurrected our milkv pioneer over the weekend. While it had the tell-tale signs of PCIE switch issues, it actually appears that the NMVE drive was failing. I had an NVME that was going to be installed in a different system, so I threw it into the Pioneer as a last ditch effort to get it

Re: [PATCH v9 3/4] Use the counted_by attribute of pointers in array bound checker.

2025-08-11 Thread Qing Zhao
> On Aug 8, 2025, at 16:33, Joseph Myers wrote: > > On Fri, 1 Aug 2025, Qing Zhao wrote: > >> + /* For a poiner array address as: > > "poiner" should be "pointer”. Will fix this before committing. > > OK with that fix, in the absence of objections within the next week from > other maintain

Re: [PATCH v1 2/2] libstdc++: Simplify precomputed partial products in .

2025-08-11 Thread Tomasz Kaminski
On Mon, Aug 11, 2025 at 3:49 PM Luc Grosheintz wrote: > > > On 8/11/25 15:29, Tomasz Kaminski wrote: > > On Mon, Aug 11, 2025 at 3:23 PM Luc Grosheintz > > > wrote: > > > >> Prior to this commit, the partial producs of static extents in > >> was done in a loop that calls a function that compute

[PATCH 2/2] tree-optimization/121493 - another missed VN with aggregate copy

2025-08-11 Thread Richard Biener
This is another case where opportunistically handling a first aggregate copy where we failed to match up the refs exactly (as we don't insert missing handling components) yields to a failure in the second aggregate copy that we visit. Add another fixup to deal with such situations, in-line with th

[PATCH 1/2] Restrict aggregate copy VN generalization

2025-08-11 Thread Richard Biener
The following avoids ending up with a MEM_REF as component to apply. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. * tree-ssa-sccvn.cc (vn_reference_lookup_3): When we fail to match up the two base MEM_REFs, fail. --- gcc/tree-ssa-sccvn.cc | 5 + 1 file chang

Re: [PATCH v1 2/2] libstdc++: Simplify precomputed partial products in .

2025-08-11 Thread Luc Grosheintz
On 8/11/25 15:29, Tomasz Kaminski wrote: On Mon, Aug 11, 2025 at 3:23 PM Luc Grosheintz wrote: Prior to this commit, the partial producs of static extents in was done in a loop that calls a function that computes the partial product. The complexity is quadratic in the rank. This commit re

[PATCH] tree-optimization/121488 - improve BIT_FIELD_REF lookup in VN

2025-08-11 Thread Richard Biener
When a BIT_FIELD_REF lookup combined with a defining load RHS results in a wrongly typed result, try looking up or inserting a VIEW_CONVERT_EXPR to the desired type. Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. PR tree-optimization/121488 * tree-ssa-sccvn.cc (visit

Re: [PATCH v1 2/2] libstdc++: Simplify precomputed partial products in .

2025-08-11 Thread Tomasz Kaminski
On Mon, Aug 11, 2025 at 3:29 PM Tomasz Kaminski wrote: > > > On Mon, Aug 11, 2025 at 3:23 PM Luc Grosheintz > wrote: > >> Prior to this commit, the partial producs of static extents in >> was done in a loop that calls a function that computes the partial >> product. The complexity is quadratic

Re: [PATCH v1 1/2] libstdc++: Reduce size static storage for __fwd_prod in mdspan.

2025-08-11 Thread Tomasz Kaminski
On Mon, Aug 11, 2025 at 3:29 PM Luc Grosheintz wrote: > This fixes an oversight in a previous commit that improved mdspan > related code. Because __size doesn't use __fwd_prod. Therefore, > __fwd_prod(__r) is only called with __r = 0, ..., __rank (exclusive). > Hence, one can shrink the size of _

Re: [PATCH v1 2/2] libstdc++: Simplify precomputed partial products in .

2025-08-11 Thread Tomasz Kaminski
On Mon, Aug 11, 2025 at 3:23 PM Luc Grosheintz wrote: > Prior to this commit, the partial producs of static extents in > was done in a loop that calls a function that computes the partial > product. The complexity is quadratic in the rank. > > This commit removes the quadratic complexity. > > li

Re: [PATCH] fix cris-elf build with binutils-2.45

2025-08-11 Thread Hans-Peter Nilsson
> From: Mikael Pettersson > Date: Thu, 31 Jul 2025 17:00:40 +0200 > gcc/ > PR target/121336 > * config/cris/cris.h: Do not abbreviate --emulation. > > Signed-off-by: Mikael Pettersson Bah, I forgot about that binutils change... Ok, thanks! Also: would have been ok to just commit

[PATCH v1 1/2] libstdc++: Reduce size static storage for __fwd_prod in mdspan.

2025-08-11 Thread Luc Grosheintz
This fixes an oversight in a previous commit that improved mdspan related code. Because __size doesn't use __fwd_prod. Therefore, __fwd_prod(__r) is only called with __r = 0, ..., __rank (exclusive). Hence, one can shrink the size of __fwd_partial_prods. libstdc++-v3/ChangeLog: * include/

[PATCH v1 2/2] libstdc++: Simplify precomputed partial products in .

2025-08-11 Thread Luc Grosheintz
Prior to this commit, the partial producs of static extents in was done in a loop that calls a function that computes the partial product. The complexity is quadratic in the rank. This commit removes the quadratic complexity. libstdc++-v3/ChangeLog: * include/std/mdspan (__static_prod):

[PATCH v1 0/2] Two cleanup patches for .

2025-08-11 Thread Luc Grosheintz
As part of the review of: we agreed to prepare patches to fix two things: - shrink the size of __fwd_partial_prod, - compute __*_partial_prod in linear time. Luc Grosheintz (2): libstdc++: Reduce size static storage for __fwd_prod in mdspan. libstdc++: Simplify precomputed partial produc

[PATCH] Mark , constexpr

2025-08-11 Thread Thor Preimesberger
libstdc++: Mark , constexpr. This patch makes partial progress towards P3372 by marking std::{deque, priority_queue, queue} and relevant internal helpers to be constexpr when using C++26. libstdc++-v3/ChangeLog: * include/bits/deque.tcc: Mark nonmember functions constexpr. * inc

RE: [PATCH v1] RISC-V: Refactor the vec_duplicate cost on gpr/fpr2vr-cost param

2025-08-11 Thread Li, Pan2
Thanks Jeff, committed. Pan -Original Message- From: Jeff Law Sent: Sunday, August 10, 2025 11:11 PM To: Li, Pan2 ; gcc-patches@gcc.gnu.org Cc: juzhe.zh...@rivai.ai; kito.ch...@gmail.com; rdapp@gmail.com; Chen, Ken ; Liu, Hongtao Subject: Re: [PATCH v1] RISC-V: Refactor the vec_du

Re: [PATCH v2] [x86] Enable unroll in the vectorizer when there's reduction for FMA/DOT_PROD_EXPR/SAD_EXPR

2025-08-11 Thread Richard Biener
On Sun, 10 Aug 2025, liuhongt wrote: > > > > The comment doesn't match the bool type. > > > Fixed. > > > > > is_gimple_assign (stmt_info->stmt) > > > Changed. > > > There's also SAD_EXPR? The vectorizer has lane_reducing_op_p () > > for this that also lists WIDEN_SUM_EXPR. > Add SAD_EXPR since

Re: [RFC PATCH v2 6/6] aarch64: Script to auto generate JSON tuning routines

2025-08-11 Thread Richard Sandiford
writes: > From: Soumya AR > > This commit introduces a Python maintenance script that generates C++ code > for parsing and serializing AArch64 JSON tuning parameters based on the > schema defined in aarch64-json-schema.h. > > The script generates two include files: > - aarch64-json-tunings-pars

[PATCH 07/10] testsuite: Add tests for fp resolutions of __atomic_fetch_add

2025-08-11 Thread mmalcomson
From: Matthew Malcomson Tests we include are: - A set of tests checking the observed arithmetic behaviour of the new builtins. - A test ensuring the floating point exception handling for of the new builtins for each of the standard floating point types. - A test checking that we error for unk

Re: [PATCH] [testsuite] add missing require vect_early_break_hw for vect-tsvc

2025-08-11 Thread Torbjorn SVENSSON
On 2025-08-11 13:08, Richard Biener wrote: On Sun, Aug 10, 2025 at 2:44 PM Torbjorn SVENSSON wrote: Hi, Can this patch (r16-799-g57cc4f8bf31) also be cherry-picked to releases/gcc-15 and releases/gcc-14? This patch by itself would not fix the issues that I've seen, but together with http

[PATCH 10/10] i386: Mark a tree node in i386.cc as TREE_SIDE_EFFECTS

2025-08-11 Thread mmalcomson
From: Matthew Malcomson Cc'ing in i386 maintainers. -- >8 --- 8< --- In ix86_atomic_assign_expand_fenv we generate some TREE to be expanded. Originally this code used `MODIFY_EXPR`, but that caused some bugs due to the use of `create_tmp_var_raw`. https://gcc.gnu.org/bugz

[PATCH 05/10] c: c++: Expand into CAS loop in frontend

2025-08-11 Thread mmalcomson
From: Matthew Malcomson Use wrapper in builtins.cc to check if required. N.b. if there are any floating point types that are available but not as arithmetic types or simply not available, that should be handled by the sync_resolve_size check against available types. We add an assertion in the C

[PATCH 09/10] [Not For Commit] Add demo implementation of one of the operations

2025-08-11 Thread mmalcomson
From: Matthew Malcomson NOT For commit. Do demo implementation in AArch64 since that's the backend I'm most familiar with. Nothing much else to say -- nice to see that the demo implementation seems to work as expected (being used for fetch_add, add_fetch and sub_fetch even though it's only defi

[PATCH 08/10] doc: Mention floating point atomic fetch_add etc in docs

2025-08-11 Thread mmalcomson
From: Matthew Malcomson N.b. this has already been approved (since I made the suggested changes) https://gcc.gnu.org/pipermail/gcc-patches/2024-November/668858.html Including this so I'm sending up a complete rebased patchset, but not requesting a review for it. -- >8 --- 8< ---

[PATCH 06/10] builtins: optab: Tie the new atomic builtins to the backend

2025-08-11 Thread mmalcomson
From: Matthew Malcomson Update the optabs definitions to include floating point versions of atomic fetch_add variants. Things to highlight to any reviewer: 1) I do not always expand into the modify before version, but also use the modify after version when unable to inline. - From looking

[PATCH 03/10] c: c++: Define new floating point builtin fetch_add functions

2025-08-11 Thread mmalcomson
From: Matthew Malcomson This commit just defines the new names -- as yet don't implement them. Saving this commit because this is one decision, and recording what the decision was and why: Adding new floating point builtins for each floating point type that is defined in the general code *except

[PATCH 04/10] builtins: Add FP types for atomic builtin overload resolution

2025-08-11 Thread mmalcomson
From: Matthew Malcomson N.b. we match which function to use based on the MODE of the type for two reasons: 1) Can't match directly on type as otherwise `typedef float x` would mean that `x` could no longer be used with that intrinsic. 2) MODE (i.e. the types ABI) is the thing that we need to d

[PATCH 01/10] libatomic: Split concept of SUFFIX and SIZE in libatomic

2025-08-11 Thread mmalcomson
From: Matthew Malcomson Honestly don't know who should be specifically Cc'd in for this. Would appreciate any pointers. -- >8 --- 8< --- Many functions in libatomic are defined multiple times with different suffixes from 1, 2, 4, 8, 16. These also correspond to the size

[PATCH 00/10] Add FP overloads for __atomic_fetch_add etc

2025-08-11 Thread mmalcomson
From: Matthew Malcomson Cc'ing in middle-end maintainers since I *think* that is the best group for the atomics machinery. Would appreciate a pointer if someone else would be better to Cc in. Cc'ing in Joseph Myers since he's been very helpful w.r.t. floating point and libatomic so far. Droppi

Re: [PATCH] [testsuite] add missing require vect_early_break_hw for vect-tsvc

2025-08-11 Thread Richard Biener
On Sun, Aug 10, 2025 at 2:44 PM Torbjorn SVENSSON wrote: > > Hi, > > Can this patch (r16-799-g57cc4f8bf31) also be cherry-picked to > releases/gcc-15 and releases/gcc-14? > This patch by itself would not fix the issues that I've seen, but together > with https://gcc.gnu.org/pipermail/gcc-patches

Re: [PATCH v3 4/5] forwprop: Recongize a store of integral zero for optimize_aggr_zeroprop.

2025-08-11 Thread Richard Biener
On Fri, Aug 8, 2025 at 11:56 PM Andrew Pinski wrote: > > On Thu, Aug 7, 2025 at 4:29 AM Richard Biener > wrote: > > > > On Wed, Aug 6, 2025 at 7:30 PM Andrew Pinski > > wrote: > > > > > > While looking into the gimple level after optimization of the highway code > > > from google, I noticed in

Re: [PATCH] Add ia64*-*-* to the list of obsolete targets

2025-08-11 Thread Richard Biener
On Mon, 11 Aug 2025, Sam James wrote: > Frank Scheiner writes: > > > Dear all, > > > > On 11.08.25 09:49, Richard Biener wrote: > >> On Sun, 10 Aug 2025, Jeff Law wrote: > >>> On 8/10/25 3:24 PM, Andrew Pinski wrote: > I just looked and the last testsuite results for ia64 was back in June >

[PATCH] tree-optimization/121362 - fixup thinko in earlier change

2025-08-11 Thread Richard Biener
The following fixes the index guards on the component stripping loops, I swapped them it seems. Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. PR tree-optimization/121362 * tree-ssa-sccvn.cc (vn_reference_lookup_3): Swap index guards on component stripping lo

Re: [RFC PATCH v2 3/6] json: Add get_map() method to JSON object class

2025-08-11 Thread Richard Sandiford
writes: > From: Soumya AR > > This patch adds a get_map () method to the JSON object class to provide access > to the underlying hash map that stores the JSON key-value pairs. > > It also reorganizes the private and public sections of the class to expose the > map_t typedef, which is the return t

Re: [PATCH] Add ia64*-*-* to the list of obsolete targets

2025-08-11 Thread Sam James
Frank Scheiner writes: > Dear all, > > On 11.08.25 09:49, Richard Biener wrote: >> On Sun, 10 Aug 2025, Jeff Law wrote: >>> On 8/10/25 3:24 PM, Andrew Pinski wrote: I just looked and the last testsuite results for ia64 was back in June 2024. There has been no movement since. Can we agai

Re: [PATCH] Add ia64*-*-* to the list of obsolete targets

2025-08-11 Thread Frank Scheiner
Dear all, On 11.08.25 09:49, Richard Biener wrote: > On Sun, 10 Aug 2025, Jeff Law wrote: >> On 8/10/25 3:24 PM, Andrew Pinski wrote: >>> I just looked and the last testsuite results for ia64 was back in June >>> 2024. There has been no movement since. Can we again make ia64 >>> obsolete? Is ther

Re: [PATCH v4 0/1] Add warnings of potentially-uninitialized padding bits

2025-08-11 Thread Christopher Bazley
Ping. Thanks, Chris On 21/05/2025 16:13, Christopher Bazley wrote: Commit 0547dbb725b reduced the number of cases in which union padding bits are zeroed when the relevant language standard does not strictly require it, unless gcc was invoked with -fzero-init-padding-bits=unions or -fzero-init-p

Re: [PATCH v2 12/13] aarch64: CMPBR branches must be invertable

2025-08-11 Thread Richard Sandiford
Richard Henderson writes: > On 8/8/25 21:18, Richard Sandiford wrote: >>> +(define_insn "*aarch64_cb" >>> + [(set (pc) (if_then_else >>> + (INT_CMP >>> + (match_operand:GPI 0 "register_operand" "r") >>> + (match_operand:GPI 1 >>> + "" "r")) >> >> A

Re: [PATCH v2 05/13] aarch64: Fix gcs save/restore_stack_nonlocal

2025-08-11 Thread Richard Sandiford
Richard Henderson writes: > On 8/8/25 20:39, Richard Sandiford wrote: >> Richard Henderson writes: >>> The save/restore_stack_nonlocal patterns passed a DImode rtx >>> to gen_tbranch_neqi3 for a QImode compare. The tbranch expander >>> did not do what it said on the tin, that is: emit TBNZ. >>>

Re: [RFC PATCH v2 0/6] aarch64: Support for user-defined aarch64 tuning parameters in JSON

2025-08-11 Thread Richard Sandiford
writes: > From: Soumya AR > > Hi, > > This RFC is a continuation of previous patches sent here: > https://gcc.gnu.org/pipermail/gcc-patches/2025-May/682702.html > > As suggested in the earlier thread, I've now added a python script to generete > the printing and parsing routines for the JSON tuni

Re: [PATCH] Add ia64*-*-* to the list of obsolete targets

2025-08-11 Thread Richard Biener
On Sun, 10 Aug 2025, Jeff Law wrote: > > > On 8/10/25 3:24 PM, Andrew Pinski wrote: > > On Fri, Feb 23, 2024 at 12:33 AM Jeff Law wrote: > >> > >> > >> > >> On 2/23/24 01:05, Richard Biener wrote: > >>> The following deprecates ia64*-*-* for GCC 14. Since we plan to > >>> force LRA for GCC 15

[committed] Fix comment typos

2025-08-11 Thread Jakub Jelinek
Hi! This patch fixes some comment typos, singe -> single and unsinged -> unsigned. 2025-08-11 Jakub Jelinek gcc/ * tree-cfg.cc (find_case_label_for_value): Fix comment typo, singe-valued -> single-valued. * config/arc/arc.md: Fix comment typos, unsinged -> unsigned. gc