Re: [PATCH] i386: Fix up ICE with -mveclibabi={acml,svml} [PR105367]

2022-04-26 Thread Richard Biener via Gcc-patches
On Tue, Apr 26, 2022 at 8:54 AM Jakub Jelinek via Gcc-patches wrote: > > Hi! > > The following testcase ICEs, because conversion between scalar float types > which have the same mode are useless in GIMPLE, but for mathfn_built_in the > exact type matters (it treats say double and _Float64 or float

[committed] libgomp: Fix up two non-GOMP_USE_ALIGNED_WORK_SHARES related issues [PR105358]

2022-04-26 Thread Jakub Jelinek via Gcc-patches
Hi! Last fall I've changed struct gomp_work_share, so that it doesn't have __attribute__((aligned (64))) lock member in the middle unless the target has non-emulated aligned allocator, otherwise it just makes sure the first and second halves are 64 bytes appart for cache line reasons, but doesn't

[PATCH] reassoc: Don't call fold_convert if !fold_convertible_p [PR105374]

2022-04-26 Thread Jakub Jelinek via Gcc-patches
Hi! As mentioned in the PR, we ICE because maybe_fold_*_comparisons returns an expression with V4SImode type and we try to fold_convert it to V4BImode, which isn't allowed. IMHO no matter whether we change maybe_fold_*_comparisons we should play safe on the reassoc side and punt if we can't conve

[PATCH] ifcvt: Improve noce_try_store_flag_mask [PR105314]

2022-04-26 Thread Jakub Jelinek via Gcc-patches
Hi! The following testcase regressed on riscv due to the splitting of critical edges in the sink pass, similarly to x86_64 compared to GCC 11 we now swap the edges, whether true or false edge goes to an empty forwarded bb. >From GIMPLE POV, those 2 forms are equivalent, but as can be seen here, fo

Re: [PATCH] reassoc: Don't call fold_convert if !fold_convertible_p [PR105374]

2022-04-26 Thread Richard Biener via Gcc-patches
On Tue, 26 Apr 2022, Jakub Jelinek wrote: > Hi! > > As mentioned in the PR, we ICE because maybe_fold_*_comparisons returns > an expression with V4SImode type and we try to fold_convert it to > V4BImode, which isn't allowed. > > IMHO no matter whether we change maybe_fold_*_comparisons we should

Re: [PATCH] i386: Improve ix86_expand_int_movcc

2022-04-26 Thread Uros Bizjak via Gcc-patches
On Tue, Apr 26, 2022 at 8:44 AM Jakub Jelinek wrote: > > Hi! > > When working on PR105338, I've noticed that in some cases we emit > unnecessarily long sequence which has then higher seq_cost than necessary. > > E.g. when ix86_expand_int_movcc is called with > operands[0] (reg/v:SI 83 [ i ]) > ope

[committed] testsuite: Fix up g++.target/i386/vec-tmpl1.C testcase [PR65211]

2022-04-26 Thread Jakub Jelinek via Gcc-patches
Hi! This test fails on i686-linux: Excess errors: .../gcc/testsuite/g++.target/i386/vec-tmpl1.C:13:27: warning: SSE vector return without SSE enabled changes the ABI [-Wpsabi] Fixed thusly, tested on x86_64-linux with make check-g++ RUNTESTFLAGS='--target_board=unix\{-m32,-m64,-m32/-mno-sse\} i

Re: [PATCH] ifcvt: Improve noce_try_store_flag_mask [PR105314]

2022-04-26 Thread Richard Biener via Gcc-patches
On Tue, 26 Apr 2022, Jakub Jelinek wrote: > Hi! > > The following testcase regressed on riscv due to the splitting of critical > edges in the sink pass, similarly to x86_64 compared to GCC 11 we now swap > the edges, whether true or false edge goes to an empty forwarded bb. > From GIMPLE POV, tho

Re: [PATCH] reassoc: Don't call fold_convert if !fold_convertible_p [PR105374]

2022-04-26 Thread Christophe Lyon via Gcc-patches
On 4/26/22 09:24, Jakub Jelinek wrote: Hi! As mentioned in the PR, we ICE because maybe_fold_*_comparisons returns an expression with V4SImode type and we try to fold_convert it to V4BImode, which isn't allowed. IMHO no matter whether we change maybe_fold_*_comparisons we should play safe on

Re: [PATCH] ifcvt: Improve noce_try_store_flag_mask [PR105314]

2022-04-26 Thread Jakub Jelinek via Gcc-patches
On Tue, Apr 26, 2022 at 09:58:35AM +0200, Richard Biener wrote: > > The following testcase regressed on riscv due to the splitting of critical > > edges in the sink pass, similarly to x86_64 compared to GCC 11 we now swap > > the edges, whether true or false edge goes to an empty forwarded bb. > >

Re: [PATCH] ifcvt: Improve noce_try_store_flag_mask [PR105314]

2022-04-26 Thread Richard Biener via Gcc-patches
On Tue, 26 Apr 2022, Jakub Jelinek wrote: > On Tue, Apr 26, 2022 at 09:58:35AM +0200, Richard Biener wrote: > > > The following testcase regressed on riscv due to the splitting of critical > > > edges in the sink pass, similarly to x86_64 compared to GCC 11 we now swap > > > the edges, whether tru

New Swedish PO file for 'gcc' (version 12.1-b20220403)

2022-04-26 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-12.1-b20220403.sv.po'

[PATCH] lto: use diagnostics_context in print_lto_docs_link

2022-04-26 Thread Martin Liška
Properly parse OPT_fdiagnostics_urls_ and then initialize both urls and colors for global_dc. Doing that we would follow the configure option --with-documentation-root-url, -fdiagnostics-urls is respected. Plus we'll print colored warning and note messages. Patch can bootstrap on x86_64-linux-gnu

[PATCH] libstdc++: Gate constexpr string and vector on constexpr destructor support

2022-04-26 Thread Jonathan Wakely via Gcc-patches
I was going to push this patch to "fix" our C++20 constexpr string and vector so they depend on __cpp_constexpr_dynamic_alloc. But then I realised that Clang supports that since 10.0.0 and I don't think we need to bother supporting anything older than that for C++20 mode (Clang 9 users can still us

GCN: Make "gang-private data-share memory exhausted" error more verbose (was: [PATCH] [og10] OpenACC: Shared memory layout optimisation)

2022-04-26 Thread Thomas Schwinge
Hi! On 2020-06-29T13:16:52-0700, Julian Brown wrote: > This patch implements an algorithm to lay out local data-share (LDS) space. > It currently works for AMD GCN. At the moment, LDS is used for three things: > > 1. Gang-private variables > 2. Reduction temporaries (accumulators) > 3. B

Re: [PATCH] lto: use diagnostics_context in print_lto_docs_link

2022-04-26 Thread Richard Biener via Gcc-patches
On Tue, Apr 26, 2022 at 12:41 PM Martin Liška wrote: > > Properly parse OPT_fdiagnostics_urls_ and then initialize both urls > and colors for global_dc. Doing that we would follow the configure > option --with-documentation-root-url, -fdiagnostics-urls is respected. > Plus we'll print colored warn

Re: GCN: Make "gang-private data-share memory exhausted" error more verbose (was: [PATCH] [og10] OpenACC: Shared memory layout optimisation)

2022-04-26 Thread Julian Brown
On Tue, 26 Apr 2022 13:12:23 +0200 Thomas Schwinge wrote: > > @@ -5240,14 +5286,14 @@ gcn_print_lds_decl (FILE *f, tree var) > >if (size > align && size > 4 && align < 8) > > align = 8; > > > > - machfun->lds_allocated = ((machfun->lds_allocated + align - > > 1) > > -

[PATCH] rs6000: Make the has_arch target selectors actually work

2022-04-26 Thread Segher Boessenkool
Tested on powerpc64-linux {-m32,-m64}. Also manually checked the gcc.log; it did the wrong thing before, it does the right thing now. Committing. Segher 2022-04-26 Segher Boessenkoool gcc/testsuite/ PR target/105349 * lib/target-supports.exp (check_effective_target_has_arch

[committed] libstdc++: Define std::hash (LWG 3657)

2022-04-26 Thread Jonathan Wakely via Gcc-patches
Tested powerpc64le-linux, pushed to trunk. -- >8 -- This DR was approved at the February 2022 plenary. libstdc++-v3/ChangeLog: * include/bits/fs_path.h (hash): Define. * testsuite/27_io/filesystem/path/nonmember/hash_value.cc: Check std::hash specialization. --- libstdc

[committed] libstdc++: Add std::atomic(nullptr_t) constructor (LWG 3661)

2022-04-26 Thread Jonathan Wakely via Gcc-patches
Tested powerpc64le-linux, pushed to trunk. -- >8 -- This DR was approved at the February 2022 plenary. libstdc++-v3/ChangeLog: * include/bits/shared_ptr_atomic.h (atomic): Add constructor for constant initialization from nullptr_t. * testsuite/20_util/shared_ptr/atomic/a

[PATCH] fortran: Avoid infinite self-recursion [PR105381]

2022-04-26 Thread Mikael Morin
Hello, this is a fix for the regression I recently introduced with the PR102043 patch. It is an infinite recursion problem. I can’t see the memory consumption that Harald reported; maybe he doesn’t use the default optimization level to build the compiler. Regression tested on x86_64-pc-lin

Re: [PATCH] ppc: testsuite: float128-hw{, 4}.c need -mlong-double-128 (was: [PATCH] ppc: testsuite: pr79004 needs -mlong-double-128)

2022-04-26 Thread Segher Boessenkool
Hi! Please don't send patches as replies. On Sat, Apr 23, 2022 at 10:33:35AM -0300, Alexandre Oliva wrote: > On Apr 14, 2022, Alexandre Oliva wrote: > > > * gcc.target/powerpr/pr79004.c: Add -mlong-double-128. > > Just like pr79004, float128-hw.c requires -mlong-double-128 for some > the e

Re: [PATCH] fortran: Avoid infinite self-recursion [PR105381]

2022-04-26 Thread Tobias Burnus
LGTM - however: On 26.04.22 14:38, Mikael Morin wrote: --- a/gcc/fortran/trans-array.cc +++ b/gcc/fortran/trans-array.cc @@ -3698,7 +3698,8 @@ non_negative_strides_array_p (tree expr) if (DECL_P (expr) && DECL_LANG_SPECIFIC (expr)) if (tree orig_decl = GFC_DECL_SAVED_DESCRIPTOR

Re: [PATCH] fortran: Avoid infinite self-recursion [PR105381]

2022-04-26 Thread Jakub Jelinek via Gcc-patches
On Tue, Apr 26, 2022 at 03:22:08PM +0200, Tobias Burnus wrote: > LGTM - however: > > On 26.04.22 14:38, Mikael Morin wrote: > > --- a/gcc/fortran/trans-array.cc > > +++ b/gcc/fortran/trans-array.cc > > @@ -3698,7 +3698,8 @@ non_negative_strides_array_p (tree expr) > > if (DECL_P (expr) > >

[PATCH] c++: decltype of non-dependent call of class type [PR105386]

2022-04-26 Thread Patrick Palka via Gcc-patches
We need to pass tf_decltype when instantiating a non-dependent decltype operand, like tsubst does in the dependent case, so that we avoid materializing a temporary for a prvalue operand. Bootstrapped and regtested on x86_64-pc-linux-gnu, does this look OK for trunk/11? PR c++/105386 gcc/

[committed] libphobos: Don't call free on the TLS array in the emutls destroy function.

2022-04-26 Thread Iain Buclaw via Gcc-patches
Fixes a segfault seen on Darwin when a GC scan is ran after a thread has been destroyed. As the global emutlsArrays hash still has a reference to the array itself, and tries to iterate all elements. Setting the length to zero frees all allocated elements in the array, and ensures that it is skipp

Re: [PATCH] v2 PR102024 - IBM Z: Add psabi diagnostics

2022-04-26 Thread Ulrich Weigand via Gcc-patches
Andreas Krebbel wrote: >gcc/ChangeLog: >PR target/102024 >* config/s390/s390-protos.h (s390_function_arg_vector): Remove >prototype. >* config/s390/s390.cc (s390_single_field_struct_p): New function. >(s390_function_arg_vector): Invoke s390_single_field_str

Re: [gcov v2 14/14] gcov: Add section for freestanding environments

2022-04-26 Thread Martin Liška
Hi. This if fine, except 2 places where you have trailing whitespace at the end of a line. Martin

Re: [gcov v2 00/14] Add merge-stream subcommand to gcov-tool

2022-04-26 Thread Martin Liška
On 4/25/22 09:09, Sebastian Huber wrote: > This patch set is for GCC 13. > > The aim is to better support gcov in free-standing environments. For example, > you can run a test executable which dumps all gcov info objects in a serial > data stream using __gcov_info_to_gcda() and the new __gcov_file

Re: [PATCH] c++: decltype of non-dependent call of class type [PR105386]

2022-04-26 Thread Jason Merrill via Gcc-patches
On 4/26/22 09:45, Patrick Palka wrote: We need to pass tf_decltype when instantiating a non-dependent decltype operand, like tsubst does in the dependent case, so that we avoid materializing a temporary for a prvalue operand. Bootstrapped and regtested on x86_64-pc-linux-gnu, does this look OK f

[PATCH] vect, tree-optimization/105219: Disable epilogue vectorization when peeling for alignment

2022-04-26 Thread Andre Vieira (lists) via Gcc-patches
Hi, This patch disables epilogue vectorization when we are peeling for alignment in the prologue and we can't guarantee the main vectorized loop is entered.  This is to prevent executing vectorized code with an unaligned access if the target has indicated it wants to peel for alignment. We ta

Re: *PING* [PATCH 0/4] Use pointer arithmetic for array references [PR102043]

2022-04-26 Thread Hans-Peter Nilsson via Gcc-patches
> From: Thomas Koenig via Gcc-patches > Date: Fri, 22 Apr 2022 15:59:45 +0200 > Hi Mikael, > > > Ping for the four patches starting at > > https://gcc.gnu.org/pipermail/fortran/2022-April/057759.html : > > https://gcc.gnu.org/pipermail/fortran/2022-April/057757.html > > https://gcc.gnu.org/pipe

Re: [PATCH] vect, tree-optimization/105219: Disable epilogue vectorization when peeling for alignment

2022-04-26 Thread Richard Sandiford via Gcc-patches
"Andre Vieira (lists)" writes: > Hi, > > This patch disables epilogue vectorization when we are peeling for > alignment in the prologue and we can't guarantee the main vectorized > loop is entered.  This is to prevent executing vectorized code with an > unaligned access if the target has indica

[PATCH] avr: add support for tinyAVR 2 family

2022-04-26 Thread Torsten Duwe via Gcc-patches
Signed-off-by: Torsten Duwe --- gcc/ChangeLog: 2022-04-26 Torsten Duwe * config/avr/avr-mcus.def (AVR_MCU): add definitions for attiny{4,8,16,32}2{4,6,7}; 4k and 8k flash types use RCALL. --- a/gcc/config/avr/avr-mcus.def +++ b/gcc/config/avr/avr-mcus.def @@ -333,6 +333,20

[GCC 11 backport][committed] libphobos: Give _Unwind_Exception an alignment that best resembles __attribute__((aligned))

2022-04-26 Thread Iain Buclaw via Gcc-patches
This patch backports r12-3986 to the GCC 11 branch. For interoperability with C++ EH, the alignment should match, otherwise D may not be able to intercept exceptions thrown from C++. Bootstrapped and regression tested on x86_64-apple-darwin20. Regards, Iain. --- libphobos/ChangeLog: *

Re: [PATCH] vect, tree-optimization/105219: Disable epilogue vectorization when peeling for alignment

2022-04-26 Thread Jakub Jelinek via Gcc-patches
On Tue, Apr 26, 2022 at 03:43:13PM +0100, Richard Sandiford via Gcc-patches wrote: > > --- /dev/null > > +++ b/gcc/testsuite/gcc.target/aarch64/pr105219-2.c > > @@ -0,0 +1,29 @@ > > +/* { dg-do run } */ > > +/* { dg-options "-O3 -march=armv8.2-a -mtune=thunderx > > -fno-vect-cost-model" } */ > >

Re: [PATCH] rs6000: Move V2DI vec_neg under power8-vector [PR105271]

2022-04-26 Thread Jakub Jelinek via Gcc-patches
Hi! On Fri, Apr 15, 2022 at 04:08:15PM +0800, Kewen.Lin via Gcc-patches wrote: > As PR105271 shows, __builtin_altivec_neg_v2di requires option > -mpower8-vector as its pattern expansion relies on subv2di which > has guard VECTOR_UNIT_P8_VECTOR_P (V2DImode). This fix is to move > the related lines

[GCC 10 backport][committed] libphobos: Give _Unwind_Exception an alignment that best resembles __attribute__((aligned))

2022-04-26 Thread Iain Buclaw via Gcc-patches
This patch backports r12-3986 to the GCC 10 branch. For interoperability with C++ EH, the alignment should match, otherwise D may not be able to intercept exceptions thrown from C++. Bootstrapped and regression tested on x86_64-linux-gnu. Regards, Iain. --- libphobos/ChangeLog: * libd

Re: [PATCH] rs6000: Move V2DI vec_neg under power8-vector [PR105271]

2022-04-26 Thread Segher Boessenkool
On Tue, Apr 26, 2022 at 05:16:18PM +0200, Jakub Jelinek wrote: > Hi! > > On Fri, Apr 15, 2022 at 04:08:15PM +0800, Kewen.Lin via Gcc-patches wrote: > > As PR105271 shows, __builtin_altivec_neg_v2di requires option > > -mpower8-vector as its pattern expansion relies on subv2di which > > has guard V

Re: [PATCH] vect, tree-optimization/105219: Disable epilogue vectorization when peeling for alignment

2022-04-26 Thread Andre Vieira (lists) via Gcc-patches
On 26/04/2022 15:43, Richard Sandiford wrote: "Andre Vieira (lists)" writes: Hi, This patch disables epilogue vectorization when we are peeling for alignment in the prologue and we can't guarantee the main vectorized loop is entered.  This is to prevent executing vectorized code with an unal

[GCC 9 backport][committed] libphobos: Give _Unwind_Exception an alignment that best resembles __attribute__((aligned))

2022-04-26 Thread Iain Buclaw via Gcc-patches
Hi, This patch backports r12-3986 to the GCC 9 branch. For interoperability with C++ EH, the alignment should match, otherwise D may not be able to intercept exceptions thrown from C++. Bootstrapped and regression tested on x86_64-linux-gnu. Regards, Iain. --- libphobos/ChangeLog: * l

Re: [PATCH] vect, tree-optimization/105219: Disable epilogue vectorization when peeling for alignment

2022-04-26 Thread Andre Vieira (lists) via Gcc-patches
On 26/04/2022 16:12, Jakub Jelinek wrote: On Tue, Apr 26, 2022 at 03:43:13PM +0100, Richard Sandiford via Gcc-patches wrote: --- /dev/null +++ b/gcc/testsuite/gcc.target/aarch64/pr105219-2.c @@ -0,0 +1,29 @@ +/* { dg-do run } */ +/* { dg-options "-O3 -march=armv8.2-a -mtune=thunderx -fno-vect-c

Re: [PATCH] vect, tree-optimization/105219: Disable epilogue vectorization when peeling for alignment

2022-04-26 Thread Jakub Jelinek via Gcc-patches
On Tue, Apr 26, 2022 at 04:45:14PM +0100, Andre Vieira (lists) wrote: > For some reason I thought richi wasn't able to reproduce this on other > targets, but from my last read of the PR I think he was... Regardless Note, it isn't strictly needed that a test added as generic test fails before fixes

Ping: [PATCH, V4] Eliminate power8 fusion options, use power8 tuning, PR target/102059

2022-04-26 Thread Michael Meissner via Gcc-patches
Ping patch. The customer really needs this patch. We need to apply it to the trunk, and then I will have to refactor it for GCC 10 that the customer is using. | Date: Tue, 12 Apr 2022 21:14:55 -0400 | From: Michael Meissner | Subject: [PATCH, V4] Eliminate power8 fusion options, use power8 tuni

RE: [PATCH] avr: add support for tinyAVR 2 family

2022-04-26 Thread Joel Holdsworth via Gcc-patches
> From: Gcc-patches bounces+jholdsworth=nvidia@gcc.gnu.org> On Behalf Of Torsten Duwe > via Gcc-patches > Sent: Tuesday, April 26, 2022 4:00 PM > To: gcc-patches@gcc.gnu.org > Subject: [PATCH] avr: add support for tinyAVR 2 family Note, I also submitted a patch to add support for the AVR-DA a

Re: [PATCH] ppc: testsuite: float128-hw{,4}.c need -mlong-double-128

2022-04-26 Thread Alexandre Oliva via Gcc-patches
On Apr 26, 2022, Segher Boessenkool wrote: > The testcase uses _Float128, what code that > generates should not depend on your long double setting. Good, that means my hunch that it shouldn't is on the right track. > Please file a PR instead? I filed https://gcc.gnu.org/bugzilla/show_bug.cgi?i

Re: [PATCH] fortran: Avoid infinite self-recursion [PR105381]

2022-04-26 Thread Mikael Morin
Le 26/04/2022 à 15:32, Jakub Jelinek a écrit : On Tue, Apr 26, 2022 at 03:22:08PM +0200, Tobias Burnus wrote: LGTM - however: On 26.04.22 14:38, Mikael Morin wrote: --- a/gcc/fortran/trans-array.cc +++ b/gcc/fortran/trans-array.cc @@ -3698,7 +3698,8 @@ non_negative_strides_array_p (tree expr)

Fix up 'libgomp.oacc-fortran/print-1.f90' GCN offloading compilation [PR104717] (was: [PATCH] fortran: Fix up gfc_trans_oacc_construct [PR104717])

2022-04-26 Thread Thomas Schwinge
Hi! On 2022-04-25T23:19:26+0200, I wrote: > On 2022-04-20T19:06:17+0200, Jakub Jelinek wrote: >> So that move_sese_region_to_fn works properly, OpenMP/OpenACC constructs >> for which that function is invoked need an extra artificial BIND_EXPR >> around their body so that we move all variables of

Re: [PATCH] fortran: Avoid infinite self-recursion [PR105381]

2022-04-26 Thread Jakub Jelinek via Gcc-patches
On Tue, Apr 26, 2022 at 07:12:13PM +0200, Mikael Morin wrote: > > I think we can't in C++11/C++14. The options can be if orig_decl would be > > declared > > earlier, then it can be > > tree orig_decl; > > if (DECL_P (expr) > > && DECL_LANG_SPECIFIC (expr) > > && (orig_decl = GFC

Re: [x86 PATCH] PR target/92578: Peephole2s to tweak cmove register allocation.

2022-04-26 Thread Uros Bizjak via Gcc-patches
On Mon, Apr 25, 2022 at 1:16 PM Roger Sayle wrote: > > > This patch addresses a (minor) missed-optimization regression revealed > by Richard Biener's example/variant in comment #1 of PR target/92578. > > int foo(int moves, int movecnt, int komove) { > int newcnt = movecnt; > if (moves == k

Re: [gcov v2 14/14] gcov: Add section for freestanding environments

2022-04-26 Thread Sebastian Huber
On 26.04.22 15:53, Martin Liška wrote: This if fine, except 2 places where you have trailing whitespace at the end of a line. Thanks for the review. Should I use "-ftest-coverage -fprofile-arcs" or "--coverage" in the tutorial? -- embedded brains GmbH Herr Sebastian HUBER Dornierstr. 4 8217

Re: Fix up 'libgomp.oacc-fortran/print-1.f90' GCN offloading compilation [PR104717] (was: [PATCH] fortran: Fix up gfc_trans_oacc_construct [PR104717])

2022-04-26 Thread Thomas Schwinge
Hi! On 2022-04-26T19:25:31+0200, I wrote: > On 2022-04-25T23:19:26+0200, I wrote: >> On 2022-04-20T19:06:17+0200, Jakub Jelinek wrote: >>> So that move_sese_region_to_fn works properly, OpenMP/OpenACC constructs >>> for which that function is invoked need an extra artificial BIND_EXPR >>> around

[PATCH] MAINTAINERS: Update email address

2022-04-26 Thread Joel Sherrill
--- MAINTAINERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MAINTAINERS b/MAINTAINERS index 15973503722..847df62a934 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -145,7 +145,7 @@ solaris Rainer Orth netbsd Jason Thorpe

[PATCH] fortran: Compare non-constant bound expressions. [PR105379]

2022-04-26 Thread Mikael Morin
Hello, this fixes a regression caused by my recent PR103662 patch. Regression tested on x86_64-pc-linux-gnu. OK for master?From d7309a471c42e51e84c37d5d4a3fd5bb0ed67405 Mon Sep 17 00:00:00 2001 From: Mikael Morin Date: Mon, 25 Apr 2022 19:47:04 +0200 Subject: [PATCH] fortran: Compare non-consta

Re: [PATCH] fortran: Compare non-constant bound expressions. [PR105379]

2022-04-26 Thread Thomas Koenig via Gcc-patches
Hi Mikael, this fixes a regression caused by my recent PR103662 patch. Regression tested on x86_64-pc-linux-gnu. OK for master? OK. Good to see that a bit of optimization can also sneak in with a bug fix :-) Best regards Thomas

[PATCH v2] fortran: Avoid infinite self-recursion [PR105381]

2022-04-26 Thread Mikael Morin
Le 26/04/2022 à 19:12, Mikael Morin a écrit : Le 26/04/2022 à 15:32, Jakub Jelinek a écrit : or one can repeat it like: if (DECL_P (expr) && DECL_LANG_SPECIFIC (expr) && GFC_DECL_SAVED_DESCRIPTOR (expr) && GFC_DECL_SAVED_DESCRIPTOR (expr) != expr)    return non_negative_stri

Re: [PATCH v2] fortran: Avoid infinite self-recursion [PR105381]

2022-04-26 Thread Harald Anlauf via Gcc-patches
Hi Mikael, Am 26.04.22 um 21:10 schrieb Mikael Morin: Le 26/04/2022 à 19:12, Mikael Morin a écrit : Le 26/04/2022 à 15:32, Jakub Jelinek a écrit : or one can repeat it like: if (DECL_P (expr) && DECL_LANG_SPECIFIC (expr) && GFC_DECL_SAVED_DESCRIPTOR (expr) && GFC_DECL_SAVED_DE

[PATCH, rs6000] Fix passing of Coomplex IEEE 128-bit [PR99685]

2022-04-26 Thread Pat Haugen via Gcc-patches
Fix register count when not splitting Complex IEEE 128-bit args. For ABI_V4, we do not split complex args. This created a problem because even though an arg would be passed in two VSX regs, we were only advancing the function arg counter by one VSX register. Fixed with this patch. Bootstrapped

[pushed] c++: pack init-capture of unresolved overload [PR102629]

2022-04-26 Thread Jason Merrill via Gcc-patches
Here we were failing to diagnose that the initializer for the capture pack is an unresolved overload. It turns out that the reason we didn't recognize the deduction failure in do_auto_deduction was that the individual 'auto' in the expansion of the capture pack was still marked as a parameter pack

[r12-8175 Regression] FAIL: g++.dg/modules/xtreme-header_a.H -std=c++2b (test for excess errors) on Linux/x86_64

2022-04-26 Thread sunil.k.pandey via Gcc-patches
On Linux/x86_64, a54137c88061c7495728fc6b8dfd0474e812b2cb is the first bad commit commit a54137c88061c7495728fc6b8dfd0474e812b2cb Author: Patrick Palka Date: Fri Apr 15 09:34:09 2022 -0400 libstdc++: Optimize integer std::from_chars caused FAIL: g++.dg/modules/xtreme-header-4_a.H module-

[PATCH] asan: Fix up asan_redzone_buffer::emit_redzone_byte [PR105396]

2022-04-26 Thread Jakub Jelinek via Gcc-patches
Hi! On the following testcase, we have in main's frame 3 variables, some red zone padding, 4 byte d, followed by 12 bytes of red zone padding, then 8 byte b followed by 24 bytes of red zone padding, then 40 bytes c followed by some red zone padding. The intended content of shadow memory for that i

Re: [PATCH, rs6000] Fix passing of Coomplex IEEE 128-bit [PR99685]

2022-04-26 Thread Segher Boessenkool
Hi! On Tue, Apr 26, 2022 at 03:06:51PM -0500, Pat Haugen wrote: > Fix register count when not splitting Complex IEEE 128-bit args. > > For ABI_V4, we do not split complex args. Because that is what the ABI requires, yes :-) > This created a problem because > even though an arg would be passed i

[PATCH] c++: ICE with temporary of class type in DMI [PR100252]

2022-04-26 Thread Marek Polacek via Gcc-patches
Consider struct A { int x; int y = x; }; struct B { int x = 0; int y = A{x}.y; // #1 }; where for #1 we end up with {.x=(&)->x, .y=(&)->x} that is, two PLACEHOLDER_EXPRs for different types on the same level in a {}. This crashes because our CONSTRUCTOR_PLACEHOLDER_B

[PATCH] c++: enum in generic lambda at global scope [PR105398]

2022-04-26 Thread Marek Polacek via Gcc-patches
We crash compiling this test since r11-7993 which changed lookup_template_class_1 so that we only call tsubst_enum when !uses_template_parms (current_nonlambda_scope ()) But here current_nonlambda_scope () is the global NAMESPACE_DECL ::, which doesn't have a type, therefore is considered type-

Re: [PATCH] rs6000: Move V2DI vec_neg under power8-vector [PR105271]

2022-04-26 Thread Kewen.Lin via Gcc-patches
on 2022/4/26 11:25 PM, Segher Boessenkool wrote: > On Tue, Apr 26, 2022 at 05:16:18PM +0200, Jakub Jelinek wrote: >> Hi! >> >> On Fri, Apr 15, 2022 at 04:08:15PM +0800, Kewen.Lin via Gcc-patches wrote: >>> As PR105271 shows, __builtin_altivec_neg_v2di requires option >>> -mpower8-vector as its patt

Re: *PING* [PATCH 0/4] Use pointer arithmetic for array references [PR102043]

2022-04-26 Thread Thomas Koenig via Gcc-patches
On 26.04.22 16:40, Hans-Peter Nilsson wrote: These, or specifically r12-8227-g89ca0fffa48b79, "fortran: Pre-evaluate string pointers. [PR102043]" have further exposed (the issue existed before but now fails for more platforms) PR78054 "gfortran.dg/pr70673.f90 FAILs at -O0", at least for cris-e

Re: [PATCH] asan: Fix up asan_redzone_buffer::emit_redzone_byte [PR105396]

2022-04-26 Thread Richard Biener via Gcc-patches
On Tue, 26 Apr 2022, Jakub Jelinek wrote: > Hi! > > On the following testcase, we have in main's frame 3 variables, > some red zone padding, 4 byte d, followed by 12 bytes of red zone padding, > then > 8 byte b followed by 24 bytes of red zone padding, then 40 bytes c followed > by some red zone

Re: [PATCH] vect, tree-optimization/105219: Disable epilogue vectorization when peeling for alignment

2022-04-26 Thread Richard Biener via Gcc-patches
On Tue, 26 Apr 2022, Richard Sandiford wrote: > "Andre Vieira (lists)" writes: > > Hi, > > > > This patch disables epilogue vectorization when we are peeling for > > alignment in the prologue and we can't guarantee the main vectorized > > loop is entered.  This is to prevent executing vectorize

Re: [PATCH] middle-end/104492 - avoid all equality compare dangling pointer diags

2022-04-26 Thread Jakub Jelinek via Gcc-patches
On Mon, Apr 25, 2022 at 11:54:34AM +0200, Richard Biener wrote: > The following extends the equality compare dangling pointer diagnostics > suppression for uses following free or realloc to also cover those > following invalidation of auto variables via CLOBBERs. That avoids > diagnosing idioms li

Re: [PATCH] loongarch: ignore zero-size fields in calling convention

2022-04-26 Thread Lulu Cheng
gcc/  * config/loongarch/loongarch.cc  (loongarch_flatten_aggregate_field): Ignore empty fields for  RECORD_TYPE. gcc/testsuite/  * gcc.target/loongarch/zero-size-field-pass.c: New test.  * gcc.target/loongarch/zero-size-field-ret.c: New test. ---   g