Re: [PING][PATCH V4 10/10] autovectorizer: Test autovectorization of different dot-prod modes.

2024-09-26 Thread Richard Biener
On Thu, 26 Sep 2024, Victor Do Nascimento wrote: > Hello, > > Gentle reminder for this simple renaming update in response to the feedback > from the last iteration. 🙂 OK. Thanks, Richard. > Thanks, > Victor > > > On 9/5/24 12:05, Victor Do Nascimento wrote: > > Changes from previous revision

Re: [PATCH] unswitch: Replace manual ondemand maybe_undef with ssa_name_maybe_undef_p/mark_ssa_maybe_undefs [PR116848]

2024-09-26 Thread Richard Biener
On Thu, Sep 26, 2024 at 5:11 PM Andrew Pinski wrote: > > The ondemand maybe_undef that follows phis was added in > r7-6427-g8b670f93ab1136 > but then later ssa_name_maybe_undef_p/mark_ssa_maybe_undefs was added in > r13-972-gbe2861fe8c527a. This moves the ondemand one to use > mark_ssa_maybe_unde

Re: [PATCH] Fix PR58143 and dups

2024-09-26 Thread Richard Biener
On Thu, 26 Sep 2024, Andrew Pinski wrote: > On Tue, Oct 15, 2013 at 6:57 AM Richard Biener wrote: > > > > > > This is an alternate fix (see > > http://gcc.gnu.org/ml/gcc-patches/2013-09/msg00234.html for the other > > one) for the various PRs that show that LIM exposes undefined > > signed overfl

Re: [PATCH] c++: compile time evaluation of prvalues [PR116416]

2024-09-26 Thread Richard Biener
On Thu, 26 Sep 2024, Marek Polacek wrote: > On Wed, Sep 25, 2024 at 08:45:50PM -0400, Jason Merrill wrote: > > On 9/25/24 4:21 PM, Marek Polacek wrote: > > > On Wed, Sep 25, 2024 at 08:54:46AM -0400, Jason Merrill wrote: > > > > On 9/24/24 5:10 PM, Marek Polacek wrote: > > > > > On Fri, Sep 20, 20

Re: [PATCH] tree-optimization/116850 - path isolation fails to update post-dominators

2024-09-26 Thread Richard Biener
On Thu, 26 Sep 2024, Jeff Law wrote: > > > On 9/26/24 5:06 AM, Richard Biener wrote: > > When path isolation performs CFG manipulations (block splitting) it > > fails to update post-dominators it computes on-demand. That both > > runs into dominance verification issues when we compute post-domi

[PATCH v2 5/6] c++/modules: Validate external linkage definitions in header units [PR116401]

2024-09-26 Thread Nathaniel Shead
Bootstrapped and regtested on x86_64-pc-linux-gnu and aarch64-unknown-linux-gnu, OK for trunk? -- >8 -- [module.import] p6 says "A header unit shall not contain a definition of a non-inline function or variable whose name has external linkage." This patch implements this requirement, and cleans

[PATCH v2 4/6] c++/modules: Check linkage for exported declarations

2024-09-26 Thread Nathaniel Shead
Bootstrapped and regtested on x86_64-pc-linux-gnu and aarch64-unknown-linux-gnu, OK for trunk? -- >8 -- By [module.interface] p3, if an exported declaration is not within a header unit, it shall not declare a name with internal linkage. Unfortunately we cannot just do this within set_originating

Re: [PATCH] tree-optimization/114855 - speed up dom_oracle::register_transitives

2024-09-26 Thread Richard Biener
On Thu, 26 Sep 2024, Andrew MacLeod wrote: > > On 9/26/24 10:03, Andrew MacLeod wrote: > > > > On 9/26/24 03:07, Richard Biener wrote: > >> On Wed, 25 Sep 2024, Andrew MacLeod wrote: > >> > >>> > >>> > >>> I added a note to the PR before I saw this... we can just disable > >>> transitives > >>> w

[PATCH v2 1/6] c++/modules: Detect exposures of TU-local entities

2024-09-26 Thread Nathaniel Shead
I feel like there should be a way to make use of LAMBDA_TYPE_EXTRA_SCOPE to avoid the need for the new TYPE_DEFINED_IN_INITIALIZER_P flag, perhaps once something like my patch here[1] is accepted (but with further embellishments for concepts, probably), but I wasn't able to work it out. Since curr

[PATCH v2 3/6] c++/modules: Support anonymous namespaces in header units

2024-09-26 Thread Nathaniel Shead
Bootstrapped and regtested on x86_64-pc-linux-gnu and aarch64-unknown-linux-gnu, OK for trunk? -- >8 -- A header unit may contain anonymous namespaces, and those declarations are exported (as with any declaration in a header unit). This patch ensures that such declarations are correctly handled.

[PATCH v2 6/6] c++/modules: Add testcase for standard-library exposures [PR115126]

2024-09-26 Thread Nathaniel Shead
Bootstrapped and regtested on x86_64-pc-linux-gnu and aarch64-unknown-linux-gnu, OK for trunk? -- >8 -- This adds a new xtreme-header testcase to ensure that we have no regressions with regards to exposures of TU-local declarations in the standard library header files. A more restrictive test wo

[PATCH v2 2/6] c++/modules: Implement ignored TU-local exposures

2024-09-26 Thread Nathaniel Shead
Currently I just stream DECL_NAME in TU_LOCAL_ENTITYs for use in diagnostics, but this feels perhaps insufficient. Are there any better approaches here? Otherwise I don't think it matters too much, as which entity it is will also be hopefully clear from the 'declared here' notes. I've put the new

[PATCH v2 0/6] c++/modules: Implement P1815 "Translation-unit-local entities"

2024-09-26 Thread Nathaniel Shead
This patch series implements most of the changes made by P1815. It also cleans up a few bugs found along the way that impacted tests I wrote. The whole patch series was bootstrapped on x86_64-pc-linux-gnu and aarch64-unknown-linux-gnu with no regressions. Changes since v1: - Merged in already a

Re: [PATCH] Fix PR58143 and dups

2024-09-26 Thread Andrew Pinski
On Tue, Oct 15, 2013 at 6:57 AM Richard Biener wrote: > > > This is an alternate fix (see > http://gcc.gnu.org/ml/gcc-patches/2013-09/msg00234.html for the other > one) for the various PRs that show that LIM exposes undefined > signed overflow on paths where it wasn't executed before LIM > ultimat

Re: [PATCH 10/10] c++/modules: Validate external linkage definitions in header units [PR116401]

2024-09-26 Thread Nathaniel Shead
On Thu, Sep 26, 2024 at 05:27:23PM -0400, Jason Merrill wrote: > On 9/26/24 1:29 AM, Nathaniel Shead wrote: > > On Tue, Sep 24, 2024 at 09:47:17AM +1000, Nathaniel Shead wrote: > > > Bootstrapped and regtested on x86_64-pc-linux-gnu, OK for trunk? > > > > > > -- >8 -- > > > > > > [module.import]

Re: [RFC] Prevent the scheduler from moving prefetch instructions when expanding __builtin_prefetch [PR 116713]

2024-09-26 Thread Oleg Endo
On Fri, 2024-09-27 at 00:26 -0400, Pietro Monteiro wrote: > The prefetch instruction that is emitted by __builtin_prefetch is re-ordered > on GCC, but not on clang[0]. GCC's behavior is surprising because when using > the builtin you want the instruction to be placed at the exact point where >

[RFC] Prevent the scheduler from moving prefetch instructions when expanding __builtin_prefetch [PR 116713]

2024-09-26 Thread Pietro Monteiro
The prefetch instruction that is emitted by __builtin_prefetch is re-ordered on GCC, but not on clang[0]. GCC's behavior is surprising because when using the builtin you want the instruction to be placed at the exact point where you put it. Moving it around, specially across load/stores, may end

[committed] testsuite/gfortran.dg/open_errors_2.f90: Remove now-redundant file deletion

2024-09-26 Thread Hans-Peter Nilsson
Only because I wrote earlier that I'd do this patch. Committed as obvious. Sanity-checked by running the test in a native tree as "make check-gcc-fortran RUNTESTFLAGS=dg.exp=open_errors_2.f90" -- >8 -- Now that fort.N files are removed by the testsuite framework, remove this single "manual" file

[r15-3899 Regression] FAIL: gfortran.dg/initialization_25.f90 -O xfail *-*-* (test for errors, line 11) on Linux/x86_64

2024-09-26 Thread haochen.jiang
On Linux/x86_64, 819098dc71f2079aedc15a904ab5f17f0788d991 is the first bad commit commit 819098dc71f2079aedc15a904ab5f17f0788d991 Author: Sam James Date: Thu Sep 26 15:43:33 2024 +0100 testsuite: XFAIL gfortran.dg/initialization_25.f90 properly caused FAIL: gfortran.dg/initialization_25.

[committed] libstdc++: Add missing 'inline' to always_inline function

2024-09-26 Thread Jonathan Wakely
Tested x86_64-linux. Pushed to trunk. -- >8 -- This fixes a -Wattributes warning for the COW std::string which was previously suppressed due to being in a system header. libstdc++-v3/ChangeLog: * include/bits/cow_string.h (__resize_for_overwrite): Add inline keyword to function

Re: [PATCH v2] libgcc, libstdc++: Make TU-local declarations in headers external linkage [PR115126]

2024-09-26 Thread Jonathan Wakely
On Thu, 26 Sept 2024 at 13:07, Jakub Jelinek wrote: > > On Thu, Sep 26, 2024 at 08:34:45PM +1000, Nathaniel Shead wrote: > > --- a/libgcc/gthr-posix.h > > +++ b/libgcc/gthr-posix.h > > @@ -44,6 +44,21 @@ see the files COPYING3 and COPYING.RUNTIME respectively. > > If not, see > > # endif > > #

Re: [PATCH] c++: compile time evaluation of prvalues [PR116416]

2024-09-26 Thread Marek Polacek
On Wed, Sep 25, 2024 at 08:45:50PM -0400, Jason Merrill wrote: > On 9/25/24 4:21 PM, Marek Polacek wrote: > > On Wed, Sep 25, 2024 at 08:54:46AM -0400, Jason Merrill wrote: > > > On 9/24/24 5:10 PM, Marek Polacek wrote: > > > > On Fri, Sep 20, 2024 at 06:39:52PM -0400, Jason Merrill wrote: > > > >

[PATCH] diagnostic: Save/restore diagnostic context history and push/pop state for PCH [PR116847]

2024-09-26 Thread Jakub Jelinek
Hi! The following patch on top of the just posted cleanup patch saves/restores the m_classification_history and m_push_list vectors for PCH. Without that as the testcase shows during parsing of the templates we don't report ignored diagnostics, but after loading PCH header when instantiating thos

Re: [PATCH 04/10] c++/modules: Fix linkage checks for exported using-decls

2024-09-26 Thread Jason Merrill
On 9/24/24 2:53 AM, Nathaniel Shead wrote: On Tue, Sep 24, 2024 at 09:44:48AM +1000, Nathaniel Shead wrote: Bootstrapped and regtested on x86_64-pc-linux-gnu, OK for trunk? -- >8 -- This fixes some inconsistencies with what kinds of linkage various entities are assumed to have. This also fixe

Re: [PATCH 05/10] c++/modules: Allow imported references in constant expressions

2024-09-26 Thread Jason Merrill
On 9/23/24 7:45 PM, Nathaniel Shead wrote: Bootstrapped and regtested on x86_64-pc-linux-gnu, OK for trunk? -- >8 -- Currently the streaming code uses TREE_CONSTANT to determine whether an entity will have a definition that is interesting to stream out. This is not sufficient, however; we also

Re: [PATCH 10/10] c++/modules: Validate external linkage definitions in header units [PR116401]

2024-09-26 Thread Jason Merrill
On 9/26/24 1:29 AM, Nathaniel Shead wrote: On Tue, Sep 24, 2024 at 09:47:17AM +1000, Nathaniel Shead wrote: Bootstrapped and regtested on x86_64-pc-linux-gnu, OK for trunk? -- >8 -- [module.import] p6 says "A header unit shall not contain a definition of a non-inline function or variable whose

[PATCH] diagnostic: Use vec instead of custom array reallocations for m_classification_history/m_push_list [PR116847]

2024-09-26 Thread Jakub Jelinek
Hi! diagnostic.h already relies on vec.h, it uses auto_vec in one spot. The following patch converts m_classification_history and m_push_list hand-managed arrays to vec templates. The main advantage is exponential rather than linear reallocation, e.g. with current libstdc++ headers if one include

Re: [PATCH 1/2 v2] Introduce __builtin_is_virtual_base_of

2024-09-26 Thread Jason Merrill
On 9/26/24 4:41 AM, Giuseppe D'Angelo wrote: Hi, Thank you for the review. Il 25/09/24 20:13, Jason Merrill ha scritto: Supporting the ambiguous case seems pointless to me but, that is what the accepted proposal specifies, so indeed that's what we should implement. It's fundamentally the s

Re: [PATCH] testsuite: Prevent unrolling of main in LTO test [PR116683]

2024-09-26 Thread Mike Stump
On Sep 26, 2024, at 11:47 AM, Alex Coplan wrote: > > In r15-3585-g9759f6299d9633cabac540e5c893341c708093ac I added a test which > started failing on PowerPC. The test checks that we unroll exactly one loop > three times with the following: > > // { dg-final { scan-ltrans-rtl-dump-times "Unrolle

[PING][PATCH V4 10/10] autovectorizer: Test autovectorization of different dot-prod modes.

2024-09-26 Thread Victor Do Nascimento
Hello, Gentle reminder for this simple renaming update in response to the feedback from the last iteration. 🙂 Thanks, Victor On 9/5/24 12:05, Victor Do Nascimento wrote: Changes from previous revision: Rename new `check_effective_target' and tests to make their intent clearer. * lib/ta

[committed] libstdc++: Preserve signbit of nan when converting float to double [PR113578]

2024-09-26 Thread Jonathan Wakely
Tested x86_64-linux (and passed CI for ARM and RISV-V). Pushed to trunk. -- >8 -- LWG 117 specifies that inserting a float into an ostream should cast it to double, because there's no std::num_put::put member that takes a float. However, on RISC-V converting a NaN float to double loses the sign,

[committed] libstdc++: Fix comments in tests that mention basic_filebuf

2024-09-26 Thread Jonathan Wakely
Tested x86_64-linux. Pushed to trunk. -- >8 -- libstdc++-v3/ChangeLog: * testsuite/27_io/basic_istringstream/cons/2020.cc: Fix comment referring to basic_filebuf. * testsuite/27_io/basic_istringstream/requirements/base_classes.cc: Likewise. * testsuite/27_

[committed] libstdc++: Add [[nodiscard]] to iostream members

2024-09-26 Thread Jonathan Wakely
Tested x86_64-linux. Pushed to trunk. -- >8 -- These are all pure functions and MSVC also marks all of these as nodiscard except for std::basic_ios::tie() const, but that's been confirmed as an accidental omission. libstdc++-v3/ChangeLog: * include/bits/basic_ios.h (basic_ios::operator

Re: [PATCH] libstdc++: Fix freebsd/dragonfly build [PR116859]

2024-09-26 Thread Jonathan Wakely
CC gcc-patches as well On Thu, 26 Sept 2024 at 21:04, Jakub Jelinek wrote: > > Hi! > > As reported in the PR, the system headers libstdc++ changes result in > -Werror=expansion-to-defined errors on FreeBSD and supposedly on DragonFly > too. > > The following patch fixes those by performing the pr

Fwd: [patch, fortran] Matmul and dot_product for unsigned

2024-09-26 Thread Thomas Koenig
[I just saw I hit the wrong reply button on this] Hi Andre, thanks for your answers. I am ok with the patch. I have committed all four patches. Thanks a lot for the reviews! Now for the remaining intrinsics (FINDLOC, MAXLOC, MINLOC, MAXVAL, MINVAL, CSHIFT and EOSHIFT still missing). And af

RE: [PATCH] aarch64: Improve scalar mode popcount expansion by using SVE [PR113860]

2024-09-26 Thread Pengxuan Zheng (QUIC)
> Pengxuan Zheng writes: > > This is similar to the recent improvements to the Advanced SIMD > > popcount expansion by using SVE. We can utilize SVE to generate more > > efficient code for scalar mode popcount too. > > > > PR target/113860 > > > > gcc/ChangeLog: > > > > * config/aarch64/aa

[PATCH v2] aarch64: Improve scalar mode popcount expansion by using SVE [PR113860]

2024-09-26 Thread Pengxuan Zheng
This is similar to the recent improvements to the Advanced SIMD popcount expansion by using SVE. We can utilize SVE to generate more efficient code for scalar mode popcount too. Changes since v1: * v2: Add a new VNx1BI mode and a new test case for V1DI. PR target/113860 gcc/ChangeLog:

Re: [PATCH] gfortran testsuite: Remove unit-files in files having open-statements, PR116701

2024-09-26 Thread rep . dot . nop
On 25 September 2024 22:08:15 CEST, rep.dot@gmail.com wrote: > >>Your interpretation of my typo is correct. Along with Andre I like auto >>cleanup. On new test cases we try to have them self delete whether they pass >>or fail. >> > >so why don't we issue the cleanup then, regardless?

Re: [PATCH] aarch64: fix build failure on aarch64-none-elf

2024-09-26 Thread Andrew Pinski
On Thu, Sep 26, 2024 at 10:28 AM Andrew Pinski wrote: > > On Thu, Sep 26, 2024 at 10:15 AM Matthieu Longo > wrote: > > > > A previous patch ([1]) introduced a build regression on aarch64-none-elf > > target. The changes were primarilly tested on aarch64-unknown-linux-gnu, > > so the issue was mi

Re: [PATCH] arm: Force flag_pic for FDPIC

2024-09-26 Thread Fangrui Song
On Thu, Sep 26, 2024 at 11:21 AM Ramana Radhakrishnan wrote: > > On Mon, Mar 4, 2024 at 1:43 PM Fangrui Song wrote: > > > > From: Fangrui Song > > > > -fno-pic -mfdpic generated code is like regular -fno-pic, not suitable > > for FDPIC (absolute addressing for symbol references and no function >

[PATCH] testsuite: Prevent unrolling of main in LTO test [PR116683]

2024-09-26 Thread Alex Coplan
Hi, In r15-3585-g9759f6299d9633cabac540e5c893341c708093ac I added a test which started failing on PowerPC. The test checks that we unroll exactly one loop three times with the following: // { dg-final { scan-ltrans-rtl-dump-times "Unrolled loop 3 times" 1 "loop2_unroll" } } which passes on mos

Re: [PATCH] aarch64: fix build failure on aarch64-none-elf

2024-09-26 Thread Andrew Pinski
On Thu, Sep 26, 2024 at 10:15 AM Matthieu Longo wrote: > > A previous patch ([1]) introduced a build regression on aarch64-none-elf > target. The changes were primarilly tested on aarch64-unknown-linux-gnu, > so the issue was missed during development. > The includes are slighly different between

[PATCH] doc: Remove variables from fortran options in index

2024-09-26 Thread Mikael Morin
From: Mikael Morin With this change, -ffixed-line-length-n and -ffree-line-length-n are the only remaining options with variables appearing in the index. But I think they are better left as-is. I refrained from adding the missing syntactic variant in the documentation of options allowing both s

Re: [PATCH] arm: Force flag_pic for FDPIC

2024-09-26 Thread Ramana Radhakrishnan
On Mon, Mar 4, 2024 at 1:43 PM Fangrui Song wrote: > > From: Fangrui Song > > -fno-pic -mfdpic generated code is like regular -fno-pic, not suitable > for FDPIC (absolute addressing for symbol references and no function > descriptor). The sh port simply upgrades -fno-pic to -fpie by setting > fl

Re: [PATCH] arm: Fix missed CE optimization for armv8.1-m.main [PR 116444]

2024-09-26 Thread Ramana Radhakrishnan
> On 25 Sep 2024, at 7:38 PM, Andre Vieira (lists) > wrote: > > External email: Use caution opening links or attachments > > > Hi, > > This patch restores missed optimizations for armv8.1-m.main targets that > were missed when the generation of csinc, csinv and csneg were enabled > or the sa

Re: [PATCH 0/2] arm: Allow -mcpu and -march options to be unset

2024-09-26 Thread Ramana Radhakrishnan
On Thu, Sep 12, 2024 at 8:42 PM Richard Earnshaw wrote: > > This short patch series adds the ability to unset the -mcpu and -march > options on the Arm port. This helps to avoid ambiguities and warnings > if, for some reason, the compiler flags need to be overridden. > > The main intent of this i

Re: [PATCH V4 04/10] arm: Fix arm backend-use of (u|s|us)dot_prod patterns

2024-09-26 Thread Ramana Radhakrishnan
On Thu, Sep 5, 2024 at 4:30 PM Victor Do Nascimento wrote: > > > Changes from previous revision: > > As was done for the equivalent aarch64 patch, we rework this patch to do away > with > mission creep, keeping changes as simple as possible. > > We thus remove the `gimple_fold_builtin' changes th

[PATCH] aarch64: fix build failure on aarch64-none-elf

2024-09-26 Thread Matthieu Longo
A previous patch ([1]) introduced a build regression on aarch64-none-elf target. The changes were primarilly tested on aarch64-unknown-linux-gnu, so the issue was missed during development. The includes are slighly different between the two targets, and due to some include rules ([2]), "aarch64-unw

[PING][PATCH V4 04/10] arm: Fix arm backend-use of (u|s|us)dot_prod patterns

2024-09-26 Thread Victor Do Nascimento
Hello, Gentle reminder for this patch 🙂 Thanks, Victor On 9/5/24 11:59, Victor Do Nascimento wrote: Changes from previous revision: As was done for the equivalent aarch64 patch, we rework this patch to do away with mission creep, keeping changes as simple as possible. We thus remove the `

Re: [PATCH] c++/coro: ignore cleanup_point_exprs while expanding awaits [PR116793]

2024-09-26 Thread Jason Merrill
On 9/25/24 6:24 PM, Arsen Arsenović wrote: Tested on x86_64-pc-linux-gnu. OK for trunk? OK. TIA -- >8 -- If we reach a CLEANUP_POINT_EXPR while trying to walk statements, we actually care about the statement or statement list contained within it. Indeed, such a construction

[PATCH] diagnostics: Fix compile error for MinGW <7.0

2024-09-26 Thread Torbjörn SVENSSON
Ok for trunk? -- The define ENABLE_VIRTUAL_TERMINAL_PROCESSING was introduced in MinGW 7.0 gcc/ChangeLog: * gcc/diagnostic-color.cc: Conditionally enable terminal processing based on available MinGW version. * gcc/pretty-print.cc: Likewise. Signed-off-by: Torbjörn SVENS

Re: [PATCH] tree-optimization/116850 - path isolation fails to update post-dominators

2024-09-26 Thread Jeff Law
On 9/26/24 5:06 AM, Richard Biener wrote: When path isolation performs CFG manipulations (block splitting) it fails to update post-dominators it computes on-demand. That both runs into dominance verification issues when we compute post-dominators again and possibly accessing missing or broken

Re: [PATCH] tree-optimization/114855 - speed up dom_oracle::register_transitives

2024-09-26 Thread Andrew MacLeod
On 9/26/24 10:03, Andrew MacLeod wrote: On 9/26/24 03:07, Richard Biener wrote: On Wed, 25 Sep 2024, Andrew MacLeod wrote: I added a note to the PR before I saw this... we can just disable transitives when the graph gets too big... I don't think they are worth the expense when things ge

Re: [PATCH] c++: tweak for -Wrange-loop-construct [PR116731]

2024-09-26 Thread Jason Merrill
On 9/18/24 2:35 PM, Marek Polacek wrote: Bootstrapped/regtested on x86_64-pc-linux-gnu, ok for trunk? OK. -- >8 -- This PR reports that the warning would be better off using a check for trivially constructible rather than trivially copyable. LLVM accepted a similar fix: https://github.com/ll

[committed] libgomp.texi: Fix deprecation note for omp_{get,set}_nested + OMP_NESTED

2024-09-26 Thread Tobias Burnus
While the header files correctly have: extern void omp_set_nested (int) __GOMP_NOTHROW __GOMP_DEPRECATED_5_0; extern int omp_get_nested (void) __GOMP_NOTHROW __GOMP_DEPRECATED_5_0; and for Fortran #if _OPENMP >= 201811 !GCC$ ATTRIBUTES DEPRECATED :: omp_get_nested, omp_set_nested ... The docum

[PATCH] unswitch: Replace manual ondemand maybe_undef with ssa_name_maybe_undef_p/mark_ssa_maybe_undefs [PR116848]

2024-09-26 Thread Andrew Pinski
The ondemand maybe_undef that follows phis was added in r7-6427-g8b670f93ab1136 but then later ssa_name_maybe_undef_p/mark_ssa_maybe_undefs was added in r13-972-gbe2861fe8c527a. This moves the ondemand one to use mark_ssa_maybe_undefs/ssa_name_maybe_undef_p instead. Which itself will be faster sinc

Re: RFC PATCH: contrib/test_summary mode for submitting testsuite results to bunsen

2024-09-26 Thread Frank Ch. Eigler
Hi - > Regarding functionality, perfect enough AFAICT. I was going to > make a nitpick comment about comments with full sentences and > all that GNU...but better be consistent with the rest of the > file. Thanks! I don't mind addressing even nitpicks, while awaiting word from someone who can

[COMMITTED] testsuite: XFAIL gfortran.dg/initialization_25.f90 properly

2024-09-26 Thread Sam James
The test was disabled/XFAIL'd informally in r0-100012-gcdc6637d7c78ec, but r15-3890-g34bf6aa41ba539 didn't realize this, causing a FAIL. Fix that by marking it as XFAIL per the original intent. gcc/testsuite/ChangeLog: PR fortran/35779 PR fortran/116858 * gfortran.dg/init

Re: [PATCH] ltmain.sh: allow more flags at link-time

2024-09-26 Thread Sam James
Andreas Schwab writes: > This has been fixed in commit d31c9cf54ac. Thanks.

[r15-3890 Regression] FAIL: gfortran.dg/initialization_25.f90 -O (test for errors, line 11) on Linux/x86_64

2024-09-26 Thread haochen.jiang
On Linux/x86_64, 34bf6aa41ba5390ce26eb40208f10186d0ab17c4 is the first bad commit commit 34bf6aa41ba5390ce26eb40208f10186d0ab17c4 Author: Sam James Date: Fri Aug 2 06:38:34 2024 +0100 testsuite: fix hyphen typos caused FAIL: gfortran.dg/initialization_25.f90 -O (test for errors, line

Re: [PATCH] tree-optimization/114855 - speed up dom_oracle::register_transitives

2024-09-26 Thread Andrew MacLeod
On 9/26/24 03:07, Richard Biener wrote: On Wed, 25 Sep 2024, Andrew MacLeod wrote: I added a note to the PR before I saw this... we can just disable transitives when the graph gets too big... I don't think they are worth the expense when things get large.   I've attached that patch if you w

[Fortran, Patch, PR93158, v1] Fix ICE with coarrays on submodules

2024-09-26 Thread Andre Vehreschild
Hi all, attached patch fixes an ICE when a derived type was used as a coarray in a submodule. The fix is to not allow caf-token creation for vtypes. Again this, like the previous patch on pr80235, feels like fixing the symptom and not the cause. But I can't find where it goes wrong. So if some one

[PATCH] libstdc++: Populate std::time_get::get's %c format for C locale

2024-09-26 Thread Jonathan Wakely
Howard brought https://stackoverflow.com/a/79015753/981959 to my attention, where chrono::parse fails with %c as the format, because we don't populate all fields of the __timepunct facet for the C locale. It looks like I noticed that when testing std::format and implemented a workaround:

Re: [PATCH] tree-optimization/116850 - path isolation fails to update post-dominators

2024-09-26 Thread Richard Biener
On Thu, 26 Sep 2024, Richard Biener wrote: > When path isolation performs CFG manipulations (block splitting) it > fails to update post-dominators it computes on-demand. That both > runs into dominance verification issues when we compute post-dominators > again and possibly accessing missing or b

Re: RFC PATCH: contrib/test_summary mode for submitting testsuite results to bunsen

2024-09-26 Thread Hans-Peter Nilsson
On Mon, 23 Sep 2024, Frank Ch. Eigler wrote: > Hi, HP - > > > I'd love for (something like) gcc-testresults@ to be usefully > > searchable (it can be done but... lacks), so please allow me: > > Certainly! > > > > +: ${bunsengit=ssh://sourceware.org/git/bunsendb.git/}; > > > +: ${bunsentag=`who

[pushed] doc: Remove index reference to removed documentation in, fortran manual

2024-09-26 Thread Mikael Morin
Checked with make html pdf. Pushed.From e9f341426567442a70747f89b6b954a005ca287a Mon Sep 17 00:00:00 2001 From: Mikael Morin Date: Thu, 26 Sep 2024 14:23:06 +0200 Subject: [PATCH] doc: Remove index reference to removed documentation in fortran manual Fortran option -M used to be an alias for -J

[COMMITTED] Add virtual destructor to AbstractExpr

2024-09-26 Thread Sam James
From: Owen Avery gcc/rust/ChangeLog: * checks/errors/borrowck/rust-bir.h (class AbstractExpr): Add virtual destructor. Signed-off-by: Owen Avery --- gcc/rust/checks/errors/borrowck/rust-bir.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gcc/rust/checks/errors/borrowck

Re: [PATCH] ltmain.sh: allow more flags at link-time

2024-09-26 Thread Andreas Schwab
This has been fixed in commit d31c9cf54ac. -- Andreas Schwab, SUSE Labs, sch...@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different."

[PATCH] libstdc++: Fix rounding in chrono::parse

2024-09-26 Thread Jonathan Wakely
Does this rounding heuristic seem reasonable? I have discussed it with Howard and he agreed that rounding "2024-09-22 18:34:56" up to the next day, 2024-09-23, could be surprising. But he convinced me that using chrono::round was correct in general (certainly better than what we have now using chro

Re: [Patch][RFC] Fortran/OpenMP: Middle-end support for mapping of DT with allocatable components

2024-09-26 Thread Tobias Burnus
Now committed as r15-3895-ge4a58b6f28383c. * * * Next step is to sent the Fortran part. While it exists, I want to proof read what I wrote a couple years back and I want to split-off the polymorphism/class part as the current implementation has some issues and OpenMP 6 decided to disallow pol

[PATCH] tree-optimiztation/114855 - profile prediction slowness

2024-09-26 Thread Richard Biener
The testcase in PR114855 shows profile prediction to evaluate the same SSA def via expr_expected_value for each condition or switch in a function. The following patch caches the expected value (and probability/predictor) for each visited SSA def, also protecting against recursion and thus obsoleti

[PATCH v1 1/2] Match: Support form 2 for scalar signed integer SAT_SUB

2024-09-26 Thread pan2 . li
From: Pan Li This patch would like to support the form 2 of the scalar signed integer SAT_SUB. Aka below example: Form 2: #define DEF_SAT_S_SUB_FMT_2(T, UT, MIN, MAX) \ T __attribute__((noinline)) \ sat_s_sub_##T##_fmt_1 (T x, T y) \ {

[PATCH v1 2/2] RISC-V: Add testcases for form 2 of scalar signed SAT_SUB

2024-09-26 Thread pan2 . li
From: Pan Li Form 2: #define DEF_SAT_S_SUB_FMT_2(T, UT, MIN, MAX) \ T __attribute__((noinline)) \ sat_s_sub_##T##_fmt_1 (T x, T y) \ {\ T minus = (UT)x - (UT)y; \ if ((x ^ y) >= 0 || (minus

Re: [PATCH v2] libgcc, libstdc++: Make TU-local declarations in headers external linkage [PR115126]

2024-09-26 Thread Jakub Jelinek
On Thu, Sep 26, 2024 at 08:34:45PM +1000, Nathaniel Shead wrote: > --- a/libgcc/gthr-posix.h > +++ b/libgcc/gthr-posix.h > @@ -44,6 +44,21 @@ see the files COPYING3 and COPYING.RUNTIME respectively. > If not, see > # endif > #endif > > +#ifdef __has_attribute > +# if __has_attribute(__always_

[pushed] libstdc++: Suppress an attribute suggestion warning [PR116853].

2024-09-26 Thread Iain Sandoe
Tested on x86_64-darwin19, 21 and on powerpc54le-linux, approved by Jonathan in the PR, pushed to trunk, thanks Iain --- 8< --- This warning is triggering during the build and breaking bootstrap on at least two targets. The warning appears valid, but the final fix for it is not yet clear. In t

[committed] libstdc++: Fix std::basic_stracktrace to not assume allocators throw std::bad_alloc

2024-09-26 Thread Jonathan Wakely
I find this allowance in the standard baffling, but it is what it is. Tested x86_64-linux. Pushed to trunk. -- >8 -- The standard allows allocators to throw any kind of exception, not only something that can be caught as std::bad_alloc. std::basic_stracktrace was assuming std::bad_alloc. libstd

[committed] libstdc++: Remove noexcept-specifier from MCF __cxa_guard_acquire [PR116857]

2024-09-26 Thread Jonathan Wakely
Pushed to trunk as obvious (not tested, because I don't have a MCF thread build). -- >8 -- This function definition should not be marked as non-throwing, because the declaration in is potentially throwing. Also fix whitespace. libstdc++-v3/ChangeLog: PR libstdc++/116857 * libs

[PATCH 2/2] tree-optimization/116818 - try VMAT_GATHER_SCATTER also for SLP

2024-09-26 Thread Richard Biener
When not doing SLP and we end up with VMAT_ELEMENTWISE we consider using strided loads, aka VMAT_GATHER_SCATTER. The following moves this logic down to also apply to SLP where we now can end up using VMAT_ELEMENTWISE as well. PR tree-optimization/116818 * tree-vect-stmts.cc (get_g

[PATCH 1/2] Fix bogus SLP nvector compute in check_load_store_for_partial_vectors

2024-09-26 Thread Richard Biener
We have a new overload for vect_get_num_copies that handles both SLP and non-SLP. Use it and avoid the division by group_size for SLP when not using load-store lanes. * tree-vect-stmts.cc (check_load_store_for_partial_vectors): Use the new vect_get_num_copies overload. Only divid

[PATCH] tree-optimization/116850 - path isolation fails to update post-dominators

2024-09-26 Thread Richard Biener
When path isolation performs CFG manipulations (block splitting) it fails to update post-dominators it computes on-demand. That both runs into dominance verification issues when we compute post-dominators again and possibly accessing missing or broken post-dominance data when checking is disabled.

Re: [PATCH] ltmain.sh: allow more flags at link-time

2024-09-26 Thread Andreas Schwab
On Aug 14 2024, Sam James wrote: > In particular, this now allows some harmless diagnostic flags (especially > useful for things like -Werror=odr), more optimization flags, and some > Clang-specific options. This now passes -Werror down to the linker, which breaks the binutils build with LTO beca

[PATCH v2] libgcc, libstdc++: Make TU-local declarations in headers external linkage [PR115126]

2024-09-26 Thread Nathaniel Shead
On Thu, Sep 26, 2024 at 01:46:27PM +1000, Nathaniel Shead wrote: > On Wed, Sep 25, 2024 at 01:30:55PM +0200, Jakub Jelinek wrote: > > On Wed, Sep 25, 2024 at 12:18:07PM +0100, Jonathan Wakely wrote: > > > > > And whether similarly we couldn't use > > > > > __attribute__((__visibility__ ("hidden"))

Re: [PATCH 0/5] arm, MVE: Refactor the vst and vld intrinsics

2024-09-26 Thread Christophe Lyon
ping? On Mon, 16 Sept 2024 at 11:39, Christophe Lyon wrote: > > From: Alfie Richards > > Hi, > > This patch series refactors the MVE vst and vld intrinsics to use the builtins > framework. > > This is a prerequisite for a later patch which adds gimple folding which in > turn enables some optimis

Re: [PATCH v2 00/36] arm: [MVE intrinsics] Re-implement more intrinsics

2024-09-26 Thread Christophe Lyon
ping? On Wed, 4 Sept 2024 at 15:27, Christophe Lyon wrote: > > Hi, > > This is v2 of the patch series I sent in > https://gcc.gnu.org/pipermail/gcc-patches/2024-July/657065.html. > > I have taken into account the feedback I received, and added more > patches to the series, converting more MVE int

Re: [PATCH v4 2/2] arm: [MVE intrinsics] Improve vdupq_n implementation

2024-09-26 Thread Christophe Lyon
ping? On Mon, 9 Sept 2024 at 14:44, Christophe Lyon wrote: > > ping? > > On Tue, 30 Jul 2024 at 23:41, Christophe Lyon wrote: > > > > Hi, > > > > v4 of patch 2/2 fixes a small mistake in 3 testcases, by relaxing the > > expected q0 as result register into q[0-9]+ to account for codegen > > diffe

Re: [PATCH] pretty-print: Fix up allocate_object

2024-09-26 Thread Richard Biener
On Thu, 26 Sep 2024, Jakub Jelinek wrote: > On Thu, Aug 29, 2024 at 06:58:12PM -0400, David Malcolm wrote: > > The following patch rewrites the internals of pp_format. > > > The tokens and token lists are allocated on the chunk_obstack, and so > > there's no additional heap activity required, wit

[PATCH] pretty-print: Fix up allocate_object

2024-09-26 Thread Jakub Jelinek
On Thu, Aug 29, 2024 at 06:58:12PM -0400, David Malcolm wrote: > The following patch rewrites the internals of pp_format. > The tokens and token lists are allocated on the chunk_obstack, and so > there's no additional heap activity required, with the memory reclaimed > when the chunk_obstack is fr

[PATCH] fold fold_truth_andor field merging into ifcombine was: [PATCH] assorted improvements for fold_truth_andor_1)

2024-09-26 Thread Alexandre Oliva
This patch introduces various improvements to the logic that merges field compares, moving it into ifcombine. Before the patch, we could merge: (a.x1 EQNE b.x1) ANDOR (a.y1 EQNE b.y1) into something like: (((type *)&a)[Na] & MASK) EQNE (((type *)&b)[Nb] & MASK) if both of A's fields li

Re: [PATCH 1/2 v2] Introduce __builtin_is_virtual_base_of

2024-09-26 Thread Giuseppe D'Angelo
Hi, Thank you for the review. Il 25/09/24 20:13, Jason Merrill ha scritto: Supporting the ambiguous case seems pointless to me but, that is what the accepted proposal specifies, so indeed that's what we should implement. It's fundamentally the same with is_base_of, also supporting ambiguous

[COMMITTED 2/2] testsuite: fix hyphen typos

2024-09-26 Thread Sam James
gcc/testsuite/ChangeLog: * g++.dg/modules/reparent-1_c.C: Fix whitespace around '-' in dg directive. * gfortran.dg/initialization_25.f90: Ditto. --- Committed as obvious. gcc/testsuite/g++.dg/modules/reparent-1_c.C | 2 +- gcc/testsuite/gfortran.dg/initialization_25.f90 | 4

[COMMITTED 1/2] testsuite: fix comment-only directive typos

2024-09-26 Thread Sam James
Doing this to avoid FPs from grepping but also to avoid the potential for people learning bad habits. gcc/testsuite/ChangeLog: * gfortran.dg/coarray/caf.exp: Fix 'dg-do-run' typo. * lib/gfortran-dg.exp: Ditto. * lib/gm2-dg.exp: Ditto. * lib/go-dg.exp: Ditto. --- Co

[pushed] doc: Remove MinGW note on binutils 2.16

2024-09-26 Thread Gerald Pfeifer
Binutils 2.16 is 13 years old; no need to specifically refer to it as a requirement. gcc: PR target/69374 * doc/install.texi (Specific) <*-*-mingw32>: Remove note regarding binutils 2.16. --- gcc/doc/install.texi | 4 1 file changed, 4 deletions(-) diff --git a/gcc/d

Re: [PATCH] tree-optimization/114855 - speed up dom_oracle::register_transitives

2024-09-26 Thread Richard Biener
On Wed, 25 Sep 2024, Andrew MacLeod wrote: > > On 9/25/24 06:51, Richard Biener wrote: > > dom_oracle::register_transitives contains an unbound dominator walk > > which for the testcase in PR114855 dominates the profile. I've also > > noticed odd behavior in the case when set_one_relation return