[PATCH 3/3] LoongArch: testsuite: Fix gcc.dg/vect/slp-26.c.

2025-03-09 Thread Lulu Cheng
After d34cda720988674bcf8a24267c9e1ec61335d6de, what was originally not vectorizable can now be vectorized. So adjust gcc.dg/vect/slp-26.c. gcc/testsuite/ChangeLog: * gcc.dg/vect/slp-26.c: Adjust. --- gcc/testsuite/gcc.dg/vect/slp-26.c | 4 ++-- 1 file changed, 2 insertions(+), 2 delet

Re: [PATCH] libstdc++: Ensure defines __pair_like

2025-03-09 Thread Jonathan Wakely
On Thu, 6 Mar 2025 at 16:09, Patrick Palka wrote: > > On Thu, Mar 6, 2025 at 6:28 AM Jonathan Wakely wrote: > > > > We need to include in C++23 and later, so that > > __pair_like_convertible_from can use __pair_like. > > > > libstdc++-v3/ChangeLog: > > > > * include/bits/ranges_util.h: I

New French PO file for 'gcc' (version 15-b20250216)

2025-03-09 Thread Translation Project Robot
Hello, gentle maintainer. This is a message from the Translation Project robot. A revised PO file for textual domain 'gcc' has been submitted by the French team of translators. The file is available at: https://translationproject.org/latest/gcc/fr.po (This file, 'gcc-15-b20250216.fr.po', h

New Swedish PO file for 'gcc' (version 15-b20250216)

2025-03-09 Thread Translation Project Robot
Hello, gentle maintainer. This is a message from the Translation Project robot. A revised PO file for textual domain 'gcc' has been submitted by the Swedish team of translators. The file is available at: https://translationproject.org/latest/gcc/sv.po (This file, 'gcc-15-b20250216.sv.po',

Re: [patch, Fortran] Fix PR 119157, regression with -Wexternal-argument-mismatch

2025-03-09 Thread Thomas Koenig
Hi Mikael, _symbol *asym = a->expr->symtree->n.sym; You may consider calling gfc_commit_symbol(s) instead at the end of the function body.  It might avoid leaking the old_symbol field in case the function is called more than once or the symbol is already existing (not completely clear wheth

Re: [patch, Fortran] Fix PR 119157, regression with -Wexternal-argument-mismatch

2025-03-09 Thread Mikael Morin
Le 09/03/2025 à 17:40, Thomas Koenig a écrit : Hi Mikael, _symbol *asym = a->expr->symtree->n.sym; You may consider calling gfc_commit_symbol(s) instead at the end of the function body.  It might avoid leaking the old_symbol field in case the function is called more than once or the symbol

[PATCH] phiopt: Fix value_replacement for middle bb having phi nodes [PR118922]

2025-03-09 Thread Andrew Pinski
After r12-5300-gf98f373dd822b3, value_replacement would be able to look at the following cfg structure: ``` [local count: 1014686024]: if (h_6 != 0) goto ; [94.50%] else goto ; [5.50%] [local count: 114863530]: # h_6 = PHI <0(4), 1(5)> [local count: 1073741824]: # f_8 = P

[committed] testsuite: Require effective target float16 for test [PR119133]

2025-03-09 Thread Dimitar Dimitrov
The test spuriously failed on pru-unknown-elf due to missing support for _Float16 type. Pushed to trunk as obvious. PR target/119133 gcc/testsuite/ChangeLog: * gcc.dg/torture/pr119133.c: Require effective target float16. Signed-off-by: Dimitar Dimitrov --- gcc/testsuite/gcc.d

[PATCH] i386: Verify that argument registers are spilled properly

2025-03-09 Thread H.J. Lu
RDI, RSI, RDX and RCX registers are used to pass arguments in 64-bit mode. EAX, EDX and ECX registers are used to pass arguments in 32-bit mode. Add tests to verify that argument registers are spilled properly. PR target/119171 * gcc.target/i386/pr119171-1.c: New test. *

Re: [PATCH] phiopt: Fix value_replacement for middle bb having phi nodes [PR118922]

2025-03-09 Thread Richard Biener
> Am 09.03.2025 um 18:11 schrieb Andrew Pinski : > > After r12-5300-gf98f373dd822b3, value_replacement would be able to look at > the > following cfg structure: > ``` > [local count: 1014686024]: > if (h_6 != 0) >goto ; [94.50%] > else >goto ; [5.50%] > > [local count: 11486353

Re: [PATCH] c++: Fix up instantiation of pointer/reference/array types with attributes [PR119138]

2025-03-09 Thread Jason Merrill
On 3/6/25 11:23 AM, Jakub Jelinek wrote: Hi! My r15-7822 PR118787 change unfortunately broke build on x86_64-w64-mingw32. The reduced testcase below shows what is going on. va_list on this target is char * with extra (non-dependent) attributes on it. Before my r15-7822 change, instantiation of s

[rtl-optimization/117467] Avoid unnecessarily marking things live in ext-dce

2025-03-09 Thread Jeff Law
This is the first of what I expect to be a few patches to improve memory consumption and performance of ext-dce. While I haven't been able to reproduce the insane memory usage that Richi saw, I can certainly see how we might get there. I instrumented ext-dce to dump the size of liveness sets,

[rtl-optimization/117467] Mark FP destinations as dead

2025-03-09 Thread Jeff Law
The next step in improving ext-dce is to clean up a minor wart in the set/clobber handling code. In that code the safe thing to do is to not process a destination at all. That will leave bits set in the live bitmaps for objects that may no longer be live. Of course with extraneous bits set

[PATCH 1/2] aarch64: Add FMA and FMAF intrinsics and tests

2025-03-09 Thread Ayan Shafqat
This patch introduces inline definitions for the __fma and __fmaf functions in arm_acle.h for AArch64 targets. These definitions rely on __builtin_fma and __builtin_fmaf to ensure proper inlining and to meet the ACLE requirements [1]. The patch has been tested locally using a crosstool-NG sysroot

[pushed] wwwdocs: gcc-5: Fix markup after AVR changes

2025-03-09 Thread Gerald Pfeifer
HTML 5 again uses over or . (I pushed this some 10 days ago.) Gerald --- htdocs/gcc-5/changes.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/htdocs/gcc-5/changes.html b/htdocs/gcc-5/changes.html index 5035ed3c..6c04a70b 100644 --- a/htdocs/gcc-5/changes.html +++ b/htd

[PATCH v2] testcase: Add testcase for shrink wrapping of vector::push_back [PR118502]

2025-03-09 Thread Andrew Pinski
LLVM folks noticed that GCC was shrink wrapping the call to vector::push_back. So I thought it was a good idea to commit a testcase to make sure GCC does not regress in this area unknowning. Note the shrink wrapping started with r15-1619-g3b9b8d6cfdf593. Note this enables the testcase for x86_64

Re: [PATCH] i386: Verify that argument registers are spilled properly

2025-03-09 Thread H.J. Lu
On Sun, Mar 9, 2025 at 2:54 PM Sam James wrote: > > Uros Bizjak writes: > > > On Sun, Mar 9, 2025 at 3:05 PM H.J. Lu wrote: > >> > >> RDI, RSI, RDX and RCX registers are used to pass arguments in 64-bit > >> mode. EAX, EDX and ECX registers are used to pass arguments in 32-bit > >> mode. Add t

Re: [PATCH] i386: Verify that argument registers are spilled properly

2025-03-09 Thread Uros Bizjak
On Sun, Mar 9, 2025 at 3:05 PM H.J. Lu wrote: > > RDI, RSI, RDX and RCX registers are used to pass arguments in 64-bit > mode. EAX, EDX and ECX registers are used to pass arguments in 32-bit > mode. Add tests to verify that argument registers are spilled properly. > > PR target/119171 >

Re: [PATCH] i386: Verify that argument registers are spilled properly

2025-03-09 Thread Sam James
Uros Bizjak writes: > On Sun, Mar 9, 2025 at 3:05 PM H.J. Lu wrote: >> >> RDI, RSI, RDX and RCX registers are used to pass arguments in 64-bit >> mode. EAX, EDX and ECX registers are used to pass arguments in 32-bit >> mode. Add tests to verify that argument registers are spilled properly. >>

[PATCH 2/2] arm: Add FMA and FMAF intrinsics with corresponding tests

2025-03-09 Thread Ayan Shafqat
This patch introduces inline definitions for the __fma and __fmaf functions in arm_acle.h for arm targets. These definitions rely on __builtin_fma and __builtin_fmaf to ensure proper inlining and to meet the ACLE requirements [1]. The patch has been tested locally using a crosstool-NG sysroot for

[PATCH v2] i386: Verify that argument registers are spilled properly

2025-03-09 Thread H.J. Lu
While working on a local x86 patch, which passed the GCC testsuite, I got a compiler error: In function ‘paravirt_read_msr’, inlined from ‘perf_ibs_handle_irq’ at arch/x86/events/amd/ibs.c:1055:2: ./arch/x86/include/asm/paravirt_types.h:397:17: error: ‘asm’ operand has impossible constraints