[Ada] Fix PR ada/117936

2025-01-05 Thread Eric Botcazou
This just aligns the documentation with the code. Tested with 'make doc', applied on the mainline. 2025-01-06 Eric Botcazou PR ada/117936 * doc/gnat_rm/implementation_defined_pragmas.rst (Unimplemented_Unit): Adjust the description of the error message. * gnat

Re: [PATCH] tree-switch-conversion: don't apply switch size limit on jump tables

2025-01-05 Thread Richard Biener
> Am 06.01.2025 um 06:48 schrieb Andi Kleen : > > Mark Wielaard writes: > >> commit 56946c801a7c ("gimple: Add limit after which slower switchlower >> algs are used [PR117091] [PR117352]") introduced a limit on the number >> of cases of a switch. It also bails out on finding jump tables if t

Re: [PATCH] RISC-V: Move fortran testcase to gfortran.target

2025-01-05 Thread Kito Cheng
Committed to trunk :) On Mon, Dec 23, 2024 at 9:28 PM Kito Cheng wrote: > > gcc/testsuite/ChangeLog: > > * gcc.target/riscv/rvv/fortran/pr111395.f90: Move this file to... > * gfortran.target/riscv/rvv/pr111395.f90: ...here. > * gcc.target/riscv/rvv/fortran/pr111566.f90: Mo

Re: [PATCH] aarch64: Use LDR for first-element loads for Advanced SIMD

2025-01-05 Thread Andrew Pinski
On Sun, Jan 5, 2025 at 10:06 PM Dhruv Chawla wrote: > > This patch modifies Advanced SIMD assembly generation to emit an LDR > instruction when a vector is created using a load to the first element with > the > other elements being zero. > > This is similar to what *aarch64_combinez already does.

[PATCH] aarch64: Use LDR for first-element loads for Advanced SIMD

2025-01-05 Thread Dhruv Chawla
This patch modifies Advanced SIMD assembly generation to emit an LDR instruction when a vector is created using a load to the first element with the other elements being zero. This is similar to what *aarch64_combinez already does. Example: uint8x16_t foo(uint8_t *x) { uint8x16_t r = vdupq_n_

Re: [PATCH] tree-switch-conversion: don't apply switch size limit on jump tables

2025-01-05 Thread Andi Kleen
Mark Wielaard writes: > commit 56946c801a7c ("gimple: Add limit after which slower switchlower > algs are used [PR117091] [PR117352]") introduced a limit on the number > of cases of a switch. It also bails out on finding jump tables if the > switch is too large. This introduces a compile time reg

Re: [PATCH] Fortran: Added support for locality specs in DO CONCURRENT (Fortran 2018/23)

2025-01-05 Thread Jerry D
On 9/23/24 1:00 AM, Andre Vehreschild wrote: Hi Anuj, please check the code style of your patch using: contrib/check_GNU_style.py It reports several errors with line length and formatting. I am going to work with Tobias to move this along. I have the style things fixed. I am going to work

Re: [PATCH 2/2] Add prime path coverage to gcc/gcov

2025-01-05 Thread Jørgen Kvalsvik
On 1/5/25 20:53, Jørgen Kvalsvik wrote: On 1/5/25 20:25, Jan Hubicka wrote: ALGORITHM Since the numbers of paths grows so fast, we need a good algorithm. The naive approach of generating all paths and discarding redundancies (see reference_prime_paths in the diff) simply doesn't complete for ev

[PATCH] c++: Clear TARGET_EXPR_ELIDING_P when forced to use a copy constructor due to __no_unique_address__ [PR118199]

2025-01-05 Thread Simon Martin
We currently fail with a checking assert upon the following valid code when using -fno-elide-constructors === cut here === struct d { ~d(); }; d &b(); struct f { [[__no_unique_address__]] d e; }; struct h : f { h() : f{b()} {} } i; === cut here === The problem is that split_nonconstant_init_

Re: [PATCH 2/2] Add prime path coverage to gcc/gcov

2025-01-05 Thread Jørgen Kvalsvik
On 1/5/25 20:25, Jan Hubicka wrote: ALGORITHM Since the numbers of paths grows so fast, we need a good algorithm. The naive approach of generating all paths and discarding redundancies (see reference_prime_paths in the diff) simply doesn't complete for even pretty simple functions with a few ten

Re: [PATCH 2/2] Add prime path coverage to gcc/gcov

2025-01-05 Thread Jan Hubicka
> ALGORITHM > > Since the numbers of paths grows so fast, we need a good > algorithm. The naive approach of generating all paths and discarding > redundancies (see reference_prime_paths in the diff) simply doesn't > complete for even pretty simple functions with a few ten thousand > paths (granted

Re: [PATCH 1/2] gcov: branch, conds, calls in function summaries

2025-01-05 Thread Jørgen Kvalsvik
On 1/5/25 18:23, Jan Hubicka wrote: The gcov function summaries only output the covered lines, not the branches and calls. Since the function summaries is an opt-in it probably makes sense to also include branch coverage, calls, and condition coverage. $ gcc --coverage -fpath-coverage hello.c -o

[PATCH] tree-switch-conversion: don't apply switch size limit on jump tables

2025-01-05 Thread Mark Wielaard
commit 56946c801a7c ("gimple: Add limit after which slower switchlower algs are used [PR117091] [PR117352]") introduced a limit on the number of cases of a switch. It also bails out on finding jump tables if the switch is too large. This introduces a compile time regression during bootstrap. A risc

Re: [PATCH 1/2] gcov: branch, conds, calls in function summaries

2025-01-05 Thread Jan Hubicka
> The gcov function summaries only output the covered lines, not the > branches and calls. Since the function summaries is an opt-in it > probably makes sense to also include branch coverage, calls, and > condition coverage. > > $ gcc --coverage -fpath-coverage hello.c -o hello > $ ./hello > > Be

Re: [PATCH] Introduce -flto-partition=locality

2025-01-05 Thread Jan Hubicka
> Hi all, > > This is a patch submission following-up from the RFC at: > https://gcc.gnu.org/pipermail/gcc/2024-November/245076.html > The patch is rebased and retested against current trunk, some debugging code > removed, comments improved and some fixes added as I've we've done more > testing. >

[PATCH 1/2] Alpha: Add memory clobbers to `builtin_longjmp' expansion

2025-01-05 Thread Maciej W. Rozycki
Add the same memory clobbers to `builtin_longjmp' for Alpha as with commit 41439bf6a647 ("builtins.c (expand_builtin_longjmp): Added two memory clobbers."), to prevent instructions that access memory via the frame or stack pointer from being moved across the write to the frame pointer.

[PATCH 2/2] Alpha: Restore frame pointer last in `builtin_longjmp' [PR64242]

2025-01-05 Thread Maciej W. Rozycki
Add similar arrangements to `builtin_longjmp' for Alpha as with commit 71b144289c1c ("re PR middle-end/64242 (Longjmp expansion incorrect)") and commit 511ed59d0b04 ("Fix PR64242 - Longjmp expansion incorrect"), so as to restore the frame pointer last, so that accesses to a local buffer supplie

[PATCH 0/2] Alpha: Fix issues with `builtin_longjmp'

2025-01-05 Thread Maciej W. Rozycki
Hi, In the course of verifying my data race fix patch series[1] with a BWX system (credit to Magnus Lindholm for sharing hardware for the purpose of this effort) I came across a suspicious progression triggered with the newly-added `-msafe-partial' option and certain optimisations enabled:

[PATCH] c++: Friend classes don't shadow enclosing template class paramater [PR118255]

2025-01-05 Thread Simon Martin
We currently reject the following code === code here === template struct S { friend class non_template; }; class non_template {}; S<0> s; === code here === While EDG agrees with the current behaviour, clang and MSVC don't (see https://godbolt.org/z/69TGaabhd), and I believe that this code is val

Re: Subject: [PATCH] ipa-cp: Make dumping of bit masks representing -1 nicer

2025-01-05 Thread Jan Hubicka
> Hi, > > dumps of the lattices representing bit-values and of propagation > results of bit-values can print a really long hexadecimal value when > the bit-value represents -1 (all bits set). This patch simply detect > that situation and prints the string "-1" in that case, making the > dumps som

Re: [committed] testsuite, d: Fix failing pr110406.d test

2025-01-05 Thread Iain Buclaw
Excerpts from Rainer Orth's message of Januar 5, 2025 12:42 pm: > Hi Iain, > >> At some point during GCC 15 development, the compiler-generated code for >> D ModuleInfo support now gets transformed into the following on x86: >> >> _12 = (uint) &__stop_minfo; >> _13 = (uint) &__start_minfo;

[committed] d: Merge upstream dmd c11e1d1708, druntime e60bfd11bd, phobos 8729740e3

2025-01-05 Thread Iain Buclaw
Hi, This patch merges the D front-end with upstream dmd c11e1d1708. Synchronizing the compiler with the upstream release of v2.108.1. D front-end changes: - Import dmd v2.108.1. - Add experimental support for language editions, enabled by adding the UDA `@__edition_la

Re: [PATCH] Ada: Fix build for dummy s-taprop

2025-01-05 Thread Eric Botcazou
> The dummy s-taprop.adb included in libgnarl has been broken for a few > releases, as the signature for `Unlock' and `Write_Lock' on `RTS_Lock' has > changed. That file doesn't seem to be used by any of the current runtime > configurations, but it can be helpful for bringing up a new target. Than

Re: [committed] testsuite, d: Fix failing pr110406.d test

2025-01-05 Thread Rainer Orth
Hi Iain, > At some point during GCC 15 development, the compiler-generated code for > D ModuleInfo support now gets transformed into the following on x86: > > _12 = (uint) &__stop_minfo; > _13 = (uint) &__start_minfo; > _14 = (uint) &gdc.dso_slot; > _15 = {1, _14, _13, _12}; >

[committed] testsuite, d: Fix failing pr110406.d test

2025-01-05 Thread Iain Buclaw
Hi, At some point during GCC 15 development, the compiler-generated code for D ModuleInfo support now gets transformed into the following on x86: _12 = (uint) &__stop_minfo; _13 = (uint) &__start_minfo; _14 = (uint) &gdc.dso_slot; _15 = {1, _14, _13, _12}; gdc.dso_initialized