Re: [PATCH 2/2] libstdc++: add constexpr stable_partition

2025-03-27 Thread Jonathan Wakely
On Mon, 17 Mar 2025 at 10:24, Giuseppe D'Angelo wrote: > > Hello, > > On 17/03/2025 10:03, Tomasz Kaminski wrote: > > It seems that the patch is causing *first to be moved twice into the > > same position. > > Good catch. I think I need to move it *back*, at least that's what > __uninitialized_con

Re: [PATCH v2] RISC-V: Fix wrong LMUL when only implict zve32f.

2025-03-27 Thread Robin Dapp
This does not only happen on ELEN=32 and VLEN=32, it happened on all ELEN=32 arch, and one of our internal configurations hit this... Wait, is there something I keep missing? There must be I guess. Disregarding the SEW=8 case because that one is clear, but take for example: ENTRY (RVVMF4HI,

[PATCH] libstdc++: Update tzdata to 2025b

2025-03-27 Thread Jonathan Wakely
Import the new 2025b tzdata.zi file. libstdc++-v3/ChangeLog: * src/c++20/tzdata.zi: Import new file from 2025b release. --- A much smaller change for 2025b, and no update to the leapseconds file. Tested x86-64-linux with this file installed via RPM to /usr/share/zoneinfo/ so that the te

Re: [PATCH 2/2] libstdc++: add constexpr stable_partition

2025-03-27 Thread Giuseppe D'Angelo
Hello, Thank you for the review! On 27/03/2025 11:38, Jonathan Wakely wrote: With the inplace_merge and stable_partition patches approved, can you bump it again now? That would presumably resolve PR 119488. Sure thing; is the attached patch OK (on top of the other two)? Thank you, -- Giusep

Re: [PATCH 2/2] libstdc++: add constexpr stable_partition

2025-03-27 Thread Jonathan Wakely
On Thu, 27 Mar 2025 at 12:20, Giuseppe D'Angelo wrote: > > Hello, > > Thank you for the review! > > On 27/03/2025 11:38, Jonathan Wakely wrote: > > With the inplace_merge and stable_partition patches approved, can you > > bump it again now? > > > > That would presumably resolve PR 119488. > > Sure

[gcc-14 PATCH] Reuse scratch registers generated by LRA

2025-03-27 Thread Xi Ruoyao
From: Denis Chertykov Test file: udivmoddi.c problem insn: 484 Before LRA pass we have: (insn 484 483 485 72 (parallel [ (set (reg/v:SI 143 [ __q1 ]) (plus:SI (reg/v:SI 143 [ __q1 ]) (const_int -2 [0xfffe]))) (clobber (scrat

Re: [PATCH 09/12] testsuite, ia64: fix broken dg directives

2025-03-27 Thread Jakub Jelinek
On Wed, Mar 26, 2025 at 02:34:51PM -0400, David Malcolm wrote: > Found by dg-lint. > > gcc/testsuite/ChangeLog: > * gcc.target/ia64/mfused-madd-vect.c: Fix missing trailing " }" in > dg-do directive. > * gcc.target/ia64/mfused-madd.c: Likewise. > * gcc.target/ia64/mno-fused

[PATCH 6/8] target/119010 - reservations for Zen4/Zen5 movhlps to memory

2025-03-27 Thread Richard Biener
The following adds missing reservations for the store variant of sselog reservations covering ;; 112--> b 0: i1499 [dx-0x10]=vec_select(xmm10,parallel):nothing Bootstrapped and tested on x86_64-unknown-linux-gnu, OK? PR target/119010 * config/i386/zn4zn5.md (znver4_sse_l

[PATCH 5/8] target/119010 - fixup Zen4/Zen5 fp<->int convert reservations

2025-03-27 Thread Richard Biener
They were using ssecvt instead of sseicvt, I've also added handling for sseicvt2 which was introduced without fixing up automata, and the relevant instruction uses DFmode. IMO this is a quite messy area that could need TLC in the machine description itself. Bootstrapped and tested on x86_64-unkno

[PATCH 2/8] target/119010 - missing reservations for Zen4/5 and SSE compares

2025-03-27 Thread Richard Biener
There's the znver4_sse_test reservation which matches the memory-less SSE compares but currently requires prefix_extra == 1. The old znver automata in this case sometimes uses znver1-double instead of znver1-direct, but it's quite a maze. The following simply drops the prefix_extra requirement, b

[PATCH 3/8] target/119010 - add reservations for integer vector compares to zen4/zen5

2025-03-27 Thread Richard Biener
The following handles TI, OI and XI mode in the respective EVEX compare reservations that do not use memory (I've not yet run into ones with). The znver automata has separate reservations for integer compares (but only for zen1, for zen2 and zen3 there are no compare reservations at all), but I do

Re: [PATCH 2/2] libstdc++: add constexpr stable_partition

2025-03-27 Thread Giuseppe D'Angelo
On 27/03/2025 13:24, Jonathan Wakely wrote: Sure thing; is the attached patch OK (on top of the other two)? Yes, looks good, thanks! Thank you, the 3 patches have now been committed to trunk. -- Giuseppe D'Angelo smime.p7s Description: S/MIME Cryptographic Signature

[PATCH 2/3] testsuite: fix typos in comments

2025-03-27 Thread Sam James
This fixes some 'scan-tree-dump-times' (vs '-time') typos and one or two others I noticed in passing. gcc/testsuite/ChangeLog: * g++.dg/warn/Winvalid-memory-model.C: Fix typo in comment. * gcc.dg/builtin-dynamic-object-size-19.c: Ditto. * gcc.dg/builtin-object-size-19.c: D

Re: [libstdc++] Optimize string constructors

2025-03-27 Thread Jonathan Wakely
On Wed, 15 Jan 2025 at 12:10, Jonathan Wakely wrote: > > On Fri, 13 Dec 2024 at 14:01, Jan Hubicka wrote: > > > > Hi, > > this patch improves code generation on string constructors. We currently > > have > > _M_construct which takes as a parameter two iterators (begin/end pointers to > > other

[Patch] OpenMP: Fix C++ template handling with append_args' prefer_type modifier

2025-03-27 Thread Tobias Burnus
When Sandra implemented the GOMP_interop call in gimplify.cc for declare_variant's append_args, she run into an ICE because the C++ template substitution for prefer_type did not work. Her solution was to add a sorry to defer the implementation, which now the attached patch does. Actually, the hea

Re: [libstdc++] Optimize string constructors

2025-03-27 Thread Jan Hubicka
> > Newline between functions please. > > > > OK with those two changes. > > Looking back through my inbox, this one doesn't seem to have been > pushed. Was it superseded by something else, or is it just waiting for > stage 1 now? Seems I missed the approval, sorry. I will push it - I think it w

[PATCH,wwwdocs] Mention Incremental LTO in GCC15

2025-03-27 Thread Michal Jires
This patch adds mention of my new Incremental LTO in gcc-15/changes.html General Improvements. Ok? --- htdocs/gcc-15/changes.html | 6 ++ 1 file changed, 6 insertions(+) diff --git a/htdocs/gcc-15/changes.html b/htdocs/gcc-15/changes.html index dbc82be2..8a050aed 100644 --- a/htdocs/gcc-15/

Re: [PATCH 2/2] c++/modules: Handle conflicting ABI tags [PR118920]

2025-03-27 Thread Jason Merrill
On 3/26/25 9:24 AM, Nathaniel Shead wrote: Bootstrapped and regtested on x86_64-pc-linux-gnu, OK for trunk? -- >8 -- The ICE in the linked PR is caused because out_ptr_t inherits an ABI tag in a module that it does not in the importing module. When we try to build a qualified 'const out_ptr_t'

Re: [PATCH 2/2] c++/modules: Handle conflicting ABI tags [PR118920]

2025-03-27 Thread Jason Merrill
On 3/27/25 8:05 AM, Nathaniel Shead wrote: On Thu, Mar 27, 2025 at 08:02:20AM -0400, Jason Merrill wrote: On 3/26/25 9:24 AM, Nathaniel Shead wrote: Bootstrapped and regtested on x86_64-pc-linux-gnu, OK for trunk? -- >8 -- The ICE in the linked PR is caused because out_ptr_t inherits an ABI t

[PATCH 1/3] testsuite: harmless dg-* whitespace fixes

2025-03-27 Thread Sam James
These just fix inconsistent/unusual style to avoid noise when grepping and also people picking up bad habits when they see it (as similar mistakes can be harmful). gcc/testsuite/ChangeLog: * c-c++-common/goacc/pr69916.c: Fix unusual whitespace in dg-*. * g++.old-deja/g++.abi/vtabl

[PATCH 1/8] target/119010 - fixup zn4zn5 reservation for move from const_vector

2025-03-27 Thread Richard Biener
movv8si_internal uses sselog1 and V4SFmode for an instruction like (insn 363 2437 371 97 (set (reg:V8SI 46 xmm10 [1125]) (const_vector:V8SI [ (const_int 0 [0]) repeated x8 ])) "ComputeNonbondedUtil.C":185:21 2402 {movv8si_internal} this wasn't catched by the ex

[PATCH 0/3] testsuite: more typo/directive fixes

2025-03-27 Thread Sam James
Pushed. Sam James (3): testsuite: harmless dg-* whitespace fixes testsuite: fix typos in comments testsuite: fix dg-* typos gcc/testsuite/c-c++-common/goacc/pr69916.c| 2 +- gcc/testsuite/g++.dg/warn/Winvalid-memory-model.C | 2 +- gcc/testsuite/g++.old-deja/g++.abi/vtable2

COBOL constant compile-time expressions and numeric literals (was: [PATCH][RFC] [cobol] change cbl_field_data_t::etc_t::value from _Float128 to tree)

2025-03-27 Thread Simon Sobisch
> Section 8.3.3.3 of the ISO spec defines both fixed- and floating-point > numeric literals. > > "A fixed-point numeric literal is a character-string whose > characters are selected from the digits '0' through '9', the plus > sign, the minus sign, and the decimal point. The implementor shall > all

Re: [PATCH 06/12] testsuite, arm: fix broken dg directives

2025-03-27 Thread Richard Earnshaw (lists)
On 26/03/2025 18:34, David Malcolm wrote: > Found by dg-lint. > > gcc/testsuite/ChangeLog: > * gcc.target/arm/cmse/cmse-17.c: Fix missing space before trailing > "}" in dg-options. > * gcc.target/arm/short-vfp-1.c: Likewise for dg-final; also after > leading "{", in 5 place

[COMMITTED 087/146] gccrs: lang-items: Collect trait functions that are lang items

2025-03-27 Thread arthur . cohen
From: Arthur Cohen gcc/rust/ChangeLog: * ast/rust-collect-lang-items.cc (CollectLangItems::visit): Add visitor for collecting functions that might be lang items. * ast/rust-collect-lang-items.h: Likewise. --- gcc/rust/ast/rust-collect-lang-items.cc | 8 gcc/rus

Re: [PATCH] target/119474 - more DFmode handling in zn4zn5 reservations

2025-03-27 Thread Jan Hubicka
> The following adds DFmode where V1DFmode and SFmode were handled. > This resolves missing reservations for adds, subs [with memory] > and for FMAs for the testcase I'm looking at. Resolved cases are > > -;; 16--> b 0: i 237 xmm3=xmm3+[r9*0x8+si] :nothing > -;; 29-->

Re: [PATCH,wwwdocs] Mention Incremental LTO in GCC15

2025-03-27 Thread Gerald Pfeifer
On Thu, 27 Mar 2025, Michal Jires wrote: > + Introduced incremental Link-Time Optimizations to significantly reduce > +average recompilation time with small code changes while using LTO. How about rephrasing this to "Incremental Link-Time Optimizations significantly reduce average recompilat

[PATCH 7/8] target/119010 - Zen4/Zen5 reservations for movlhps loads

2025-03-27 Thread Richard Biener
The following fixes up the ssemov2 type introduction, amending the znver4_sse_mov_fp_load reservation. This fixes ;; 14--> b 0: i1436 xmm6=vec_concat(xmm6,[ax+0x8]) :nothing Bootstrapped and tested on x86_64-unknown-linux-gnu, OK? PR target/119010 * config/i386/zn

[PATCH 4/8] target/119010 - handle DFmode in SSE divide reservations for Zen4/Zen5

2025-03-27 Thread Richard Biener
Like the other DFmode cases. Bootstrapped and tested on x86_64-unknown-linux-gnu, OK? PR target/119010 * config/i386/zn4zn5.md (znver4_sse_div_pd, znver4_sse_div_pd_load, znver5_sse_div_pd_load): Handle DFmode. --- gcc/config/i386/zn4zn5.md | 6 +++--- 1 file changed, 3 i

[PATCH 8/8] target/119010 - add mode attribute to *vmovv16si_constm1_pternlog_false_dep

2025-03-27 Thread Richard Biener
Like the other instances. This avoids ;; 1--> b 0: i6540 {xmm2=const_vector;unspec[xmm2] 38;}:nothing Bootstrapped and tested on x86_64-unknown-linux-gnu, OK? PR target/119010 * config/i386/sse.md (*vmov_constm1_pternlog_false_dep): Add mode attribute. --- gc

Re: [PATCH] libiberty, gcc: Add memrchr to libiberty and use it [PR119283].

2025-03-27 Thread Richard Biener
On Fri, Mar 21, 2025 at 11:01 AM Iain Sandoe wrote: > > It seems that libiberty already has replacements for most of the > mem* functions, but they are not published via include/libiberty.h. > > Tested on x86_64 Linux, Darwin aarch64 Linux, OK for trunk? OK. Richard. > thanks, > Iain > > --- 8<

[PATCH 3/3] testsuite: fix dg-* typos

2025-03-27 Thread Sam James
I have a handful more of these left but those introduce FAILs, while these all introduce new PASSes. libstdc++-v3/ChangeLog: * testsuite/std/format/string_neg.cc: Add missing brace for dg-error. gcc/testsuite/ChangeLog: * gcc.dg/analyzer/fd-datagram-socket.c: Fix 'dg-message' sp

[COMMITTED 108/144] gccrs: Add default resolver parent functions by default

2025-03-27 Thread arthur . cohen
From: Pierre-Emmanuel Patry gcc/rust/ChangeLog: * resolve/rust-finalize-imports-2.0.h: Add parent member functions from default resolver. Signed-off-by: Pierre-Emmanuel Patry --- gcc/rust/resolve/rust-finalize-imports-2.0.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a

Re: [PATCH] target/119010 - add znver{4,5}_insn_both to resolve missing reservations

2025-03-27 Thread Jan Hubicka
> I still was seeing > > ;;0--> b 0: i 101 {[sp-0x3c]=[sp-0x3c]+0x1;clobber flags;}:nothing > > so the following adds a standard alu insn reservation mimicing that > from the znver.md description allowing both load and store. > > Bootstrap and regtest running on x86_64-unknown-linux-gnu

<    1   2