[committed] openmp: Add taskwait nowait depend support [PR105378]

2022-05-24 Thread Jakub Jelinek via Gcc-patches
Hi! This patch adds support for (so far C/C++) #pragma omp taskwait nowait depend(...) directive, which is like #pragma omp task depend(...) ; but slightly optimized on the library side, so that it creates the task only for the purpose of dependency tracking and doesn't actually schedule it

[PATCH] c: Improve build_component_ref diagnostics [PR91134]

2022-05-24 Thread Jakub Jelinek via Gcc-patches
Hi! On the following testcase (the first dg-error line) we emit a weird diagnostics and even fixit on pointerpointer->member where pointerpointer is pointer to pointer to struct and we say 'pointerpointer' is a pointer; did you mean to use '->'? The first part is indeed true, but suggesting -> whe

Re: [PATCH 06/10] ipa: add 'final' and 'override' to call_summary_base vfunc impls

2022-05-24 Thread Martin Liška
On 5/23/22 21:28, David Malcolm via Gcc-patches wrote: > gcc/ChangeLog: > * ipa-cp.cc: Add "final" and "override" to call_summary_base vfunc > implementations, removing redundant "virtual" as appropriate. > * ipa-fnsummary.h: Likewise. > * ipa-modref.cc: Likewise. > *

Re: [PATCH] libiberty: remove FINAL and OVERRIDE from ansidecl.h

2022-05-24 Thread Alan Modra via Gcc-patches
On Mon, May 23, 2022 at 07:42:29PM -0400, David Malcolm via Binutils wrote: > Any objections, or is there a reason to keep these macros that I'm > not aware of? (and did I send this to all the pertinent lists?) No objection from me. These macros are not used anywhere in binutils-gdb. -- Alan M

Re: [PATCH] tree-optimization/100221 - improve DSE a bit

2022-05-24 Thread Prathamesh Kulkarni via Gcc-patches
On Tue, 24 May 2022 at 11:50, Richard Biener via Gcc-patches wrote: > > When facing multiple PHI defs and one feeding the other we can > postpone processing uses of one and thus can proceed. > > Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed. > > 2022-05-20 Richard Biener > >

Re: [PATCH] [PR/target 105666] RISC-V: Inhibit FP <--> int register moves via tune param

2022-05-24 Thread Kito Cheng via Gcc-patches
Committed, thanks! On Tue, May 24, 2022 at 3:40 AM Philipp Tomsich wrote: > > Good catch! > > On Mon, 23 May 2022 at 20:12, Vineet Gupta wrote: > > > Under extreme register pressure, compiler can use FP <--> int > > moves as a cheap alternate to spilling to memory. > > This was seen with SPEC201

Re: [PATCH] tree-optimization/100221 - improve DSE a bit

2022-05-24 Thread Richard Biener via Gcc-patches
On Tue, 24 May 2022, Prathamesh Kulkarni wrote: > On Tue, 24 May 2022 at 11:50, Richard Biener via Gcc-patches > wrote: > > > > When facing multiple PHI defs and one feeding the other we can > > postpone processing uses of one and thus can proceed. > > > > Bootstrapped and tested on x86_64-unknow

[Patch] OpenMP: Support nowait with Fortran [PR105378]

2022-05-24 Thread Tobias Burnus
Adds the Fortran bits to the just committed C/C+++ patch. The testcases are the C/C++ ones, converted to Fortran and based on those in the patch attached to the PR. OK? Tobias OpenMP: Support nowait with Fortran [PRPR105378] Fortran part to C/C++/libgomp commit r13-724-gb43836914bdc2a37563cf313

Re: [Patch] OpenMP: Support nowait with Fortran [PR105378]

2022-05-24 Thread Jakub Jelinek via Gcc-patches
On Tue, May 24, 2022 at 10:34:25AM +0200, Tobias Burnus wrote: > Adds the Fortran bits to the just committed C/C+++ patch. > The testcases are the C/C++ ones, converted to Fortran and based on > those in the patch attached to the PR. > > OK? > > Tobias > OpenMP: Support nowait with Fortran [PRPR

Re: [PATCH] opts: improve option suggestion

2022-05-24 Thread Martin Liška
PING^1 On 5/12/22 09:10, Martin Liška wrote: > On 5/11/22 20:49, David Malcolm wrote: >> On Wed, 2022-05-11 at 16:49 +0200, Martin Liška wrote: >>> In case where we have 2 equally good candidates like >>> -ftrivial-auto-var-init= >>> -Wtrivial-auto-var-init >>> >>> for -ftrivial-auto-var-init, we

Re: [PATCH] gengtype: do not skip char after escape sequnce

2022-05-24 Thread Martin Liška
PING^1 On 5/5/22 09:55, Martin Liška wrote: > On 5/4/22 21:38, Iain Sandoe wrote: >> >> >>> On 4 May 2022, at 20:14, Martin Liška wrote: >>> >>> Right now, when a \$x escape sequence occures, the >>> next character after $x is skipped, which is bogus. >>> >>> The code has very low coverage right

[PATCH v4, rs6000] Add V1TI into vector comparison expand [PR103316]

2022-05-24 Thread HAO CHEN GUI via Gcc-patches
Hi, This patch adds V1TI mode into a new mode iterator used in vector comparison and rotation expands. Without the patch, the comparisons between two vector __int128 are converted to scalar comparisons. The code is suboptimal. The patch fixes the issue. Now all comparisons between two vector __i

Re: [0/9] [middle-end] Add param to vec_perm_const hook to specify mode of input operand

2022-05-24 Thread Prathamesh Kulkarni via Gcc-patches
On Mon, 23 May 2022 at 18:14, Richard Sandiford wrote: > > Prathamesh Kulkarni writes: > > On Wed, 18 May 2022 at 17:27, Richard Sandiford > > wrote: > >> > >> Prathamesh Kulkarni writes: > >> > Hi, > >> > The attached patch adds another parameter machine_mode op_mode to > >> > vec_perm_const

Re: [0/9] [middle-end] Add param to vec_perm_const hook to specify mode of input operand

2022-05-24 Thread Richard Sandiford via Gcc-patches
Prathamesh Kulkarni writes: > diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi > index c5006afc00d..0a3c733ada9 100644 > --- a/gcc/doc/tm.texi > +++ b/gcc/doc/tm.texi > @@ -6088,14 +6088,18 @@ for the given scalar type @var{type}. > @var{is_packed} is false if the scalar > access using @var{type}

[PATCH] middle-end/105711 - properly handle CONST_INT when expanding bitfields

2022-05-24 Thread Richard Biener via Gcc-patches
This is another place where we fail to pass down the mode of a CONST_INT. Bootstrapped and tested on x86_64-unknown-linux-gnu, OK? Thanks, Richard. 2022-05-24 Richard Biener PR middle-end/105711 * expmed.cc (extract_bit_field_as_subreg): Add op0_mode parameter and use

Re: [PATCH] middle-end/105711 - properly handle CONST_INT when expanding bitfields

2022-05-24 Thread Richard Sandiford via Gcc-patches
Richard Biener writes: > This is another place where we fail to pass down the mode of a > CONST_INT. > > Bootstrapped and tested on x86_64-unknown-linux-gnu, OK? > > Thanks, > Richard. > > 2022-05-24 Richard Biener > > PR middle-end/105711 > * expmed.cc (extract_bit_field_as_subreg)

Re: [PATCH/RFC] PR tree-optimization/96912: Recognize VEC_COND_EXPR in match.pd

2022-05-24 Thread Richard Biener via Gcc-patches
On Mon, May 23, 2022 at 4:27 PM Roger Sayle wrote: > > > Hi Richard, > > Currently for pr96912, we end up with: > > W foo (W x, W y, V m) > { > W t; > vector(16) _1; > vector(16) signed char _2; > W _7; > vector(2) long long int _9; > vector(2) long long int _10; > >[local count:

Re: [PATCH] middle-end/105711 - properly handle CONST_INT when expanding bitfields

2022-05-24 Thread Richard Biener via Gcc-patches
On Tue, 24 May 2022, Richard Sandiford wrote: > Richard Biener writes: > > This is another place where we fail to pass down the mode of a > > CONST_INT. > > > > Bootstrapped and tested on x86_64-unknown-linux-gnu, OK? > > > > Thanks, > > Richard. > > > > 2022-05-24 Richard Biener > > > > P

Re: [PATCH][_Hashtable] Fix insertion of range of type convertible to value_type PR 56112

2022-05-24 Thread Jonathan Wakely via Gcc-patches
On Thu, 5 May 2022 at 18:38, François Dumont via Libstdc++ wrote: > > Hi > > Renewing my patch to fix PR 56112 but for the insert methods, I totally > change it, now works also with move-only key types. > > I let you Jonathan find a better name than _ValueTypeEnforcer as usual :-) > > libstdc++: [

Re: [PATCH][_Hashtable] Fix insertion of range of type convertible to value_type PR 56112

2022-05-24 Thread Jonathan Wakely via Gcc-patches
On Tue, 24 May 2022 at 11:18, Jonathan Wakely wrote: > > On Thu, 5 May 2022 at 18:38, François Dumont via Libstdc++ > wrote: > > > > Hi > > > > Renewing my patch to fix PR 56112 but for the insert methods, I totally > > change it, now works also with move-only key types. > > > > I let you Jonathan

Re: [PATCH] Modula-2: merge proposal/review: 1/9 01.patch-set-01

2022-05-24 Thread Richard Biener via Gcc-patches
On Sat, May 21, 2022 at 3:11 AM Gaius Mulley wrote: > > > Hi, > > Gaius wrote: > > > the changes do raise questions. The reason for the changes here are to > > allow easy linking for modula-2 users. > > > $ gm2 hello.mod > > > for example will compile and link with all dependent modules (dependa

Re: [PATCH][_Hashtable] Fix insertion of range of type convertible to value_type PR 56112

2022-05-24 Thread Jonathan Wakely via Gcc-patches
On Tue, 24 May 2022 at 11:22, Jonathan Wakely wrote: > > On Tue, 24 May 2022 at 11:18, Jonathan Wakely wrote: > > > > On Thu, 5 May 2022 at 18:38, François Dumont via Libstdc++ > > wrote: > > > > > > Hi > > > > > > Renewing my patch to fix PR 56112 but for the insert methods, I totally > > > chang

[PATCH] Introduce -finstrument-functions-once

2022-05-24 Thread Eric Botcazou via Gcc-patches
Hi, some time ago we were requested to implement a -finstrument-functions-once switch in the compiler, with the semantics that the profiling functions be called only once per instrumented function. The goal was to make it possible to use it in (large) production binaries to do function-level cove

Re: [ping2][PATCH 0/8][RFC] Support BTF decl_tag and type_tag annotations

2022-05-24 Thread Jose E. Marchesi via Gcc-patches
> On 5/11/22 11:44 AM, David Faust wrote: >> >> On 5/10/22 22:05, Yonghong Song wrote: >>> >>> >>> On 5/10/22 8:43 PM, Yonghong Song wrote: On 5/6/22 2:18 PM, David Faust wrote: > > > On 5/5/22 16:00, Yonghong Song wrote: >> >> >> On 5/4/22 10:03 AM, David

Re: [PATCH] Extend --with-zstd documentation

2022-05-24 Thread Martin Liška
On 5/16/22 11:27, Martin Liška wrote: > On 5/12/22 09:00, Richard Biener via Gcc-patches wrote: >> On Wed, May 11, 2022 at 5:10 PM Bruno Haible wrote: >>> >>> The patch that was so far added for documenting --with-zstd is pretty >>> minimal: >>> - it refers to undocumented options --with-zstd-in

Re: [PATCH] Add operators / and * for profile_{count,probability}.

2022-05-24 Thread Martin Liška
PING^1 On 5/5/22 20:15, Martin Liška wrote: > On 5/5/22 15:49, Jan Hubicka wrote: >> Hi, >>> The patch simplifies usage of the profile_{count,probability} types. >>> >>> Patch can bootstrap on x86_64-linux-gnu and survives regression tests. >>> >>> Ready to be installed? >> >> The reason I intenti

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

2022-05-24 Thread Marek Polacek via Gcc-patches
Ping. On Mon, May 16, 2022 at 11:36:27AM -0400, Marek Polacek wrote: > On Sat, May 14, 2022 at 11:13:28PM -0400, Jason Merrill wrote: > > On 5/13/22 19:41, Marek Polacek wrote: > > > --- a/gcc/cp/typeck2.cc > > > +++ b/gcc/cp/typeck2.cc > > > @@ -1371,6 +1371,70 @@ digest_init_flags (tree type, tr

Re: [PATCH] c++: fix ICE on invalid attributes [PR96637]

2022-05-24 Thread Marek Polacek via Gcc-patches
Ping. On Fri, Apr 29, 2022 at 10:12:33AM -0400, Marek Polacek via Gcc-patches wrote: > This patch fixes crashes with invalid attributes. Arguably it could > make sense to assert seen_error() too. > > Bootstrapped/regtested on x86_64-pc-linux-gnu, ok for trunk = GCC 13? > > PR c++/96637 >

Re: [PATCH] c++: fix ICE on invalid attributes [PR96637]

2022-05-24 Thread Prathamesh Kulkarni via Gcc-patches
On Fri, 29 Apr 2022 at 19:44, Marek Polacek via Gcc-patches wrote: > > This patch fixes crashes with invalid attributes. Arguably it could > make sense to assert seen_error() too. > > Bootstrapped/regtested on x86_64-pc-linux-gnu, ok for trunk = GCC 13? > > PR c++/96637 > > gcc/ChangeLog:

[DOCS][PATCH][PUSHED] GCC 13: come up with Porting to.

2022-05-24 Thread Martin Liška
And link it from changes.html. --- htdocs/gcc-13/changes.html| 2 -- htdocs/gcc-13/porting_to.html | 28 2 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 htdocs/gcc-13/porting_to.html diff --git a/htdocs/gcc-13/changes.html b/htdocs/gcc-13/ch

[PATCH v2] Support --disable-fixincludes.

2022-05-24 Thread Martin Liška
On 5/20/22 14:42, Alexandre Oliva wrote: > On May 11, 2022, Martin Liška wrote: > >> Ready to be installed? > > Hmm... I don't like that --disable-fixincludes would still configure, > build and even install fixincludes. This would be surprising, given > that the semantics of disabling a compon

Re: [PATCH] limits.h, syslimits.h: do not install to include-fixed

2022-05-24 Thread Martin Liška
On 5/9/22 11:02, Martin Liška wrote: > |Ready to be installed?| This patch should be replaced with: https://gcc.gnu.org/pipermail/gcc-patches/2022-May/595495.html Martin

[wwwdocs] Document changes in libstdc++

2022-05-24 Thread Jonathan Wakely via Gcc-patches
Pushed to wwwdocs. commit f55f35c86c68143a2b148c66e4b0b560c852ce6f Author: Jonathan Wakely Date: Tue May 24 13:06:11 2022 +0100 Document changes in libstdc++ diff --git a/htdocs/gcc-13/porting_to.html b/htdocs/gcc-13/porting_to.html index b3e0895a..84a00f21 100644 --- a/htdocs/gcc-13/port

Re: [PATCH] c++: set TYPE_CANONICAL for most templated types

2022-05-24 Thread Jason Merrill via Gcc-patches
On 5/23/22 16:25, Patrick Palka wrote: On 5/18/22, Jason Merrill wrote: On 5/16/22 15:58, Patrick Palka wrote: When processing a class template specialization, lookup_template_class uses structural equality for the specialized type whenever one of its template arguments uses structural equality

Re: [PATCH] c++: fix ICE on invalid attributes [PR96637]

2022-05-24 Thread Jason Merrill via Gcc-patches
On 4/29/22 10:12, Marek Polacek wrote: This patch fixes crashes with invalid attributes. Arguably it could make sense to assert seen_error() too. So in this testcase we have TREE_CHAIN of a TREE_LIST pointing to error_mark_node? Can we avoid that? Bootstrapped/regtested on x86_64-pc-linux

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

2022-05-24 Thread Jason Merrill via Gcc-patches
On 5/16/22 11:36, Marek Polacek wrote: On Sat, May 14, 2022 at 11:13:28PM -0400, Jason Merrill wrote: On 5/13/22 19:41, Marek Polacek wrote: --- a/gcc/cp/typeck2.cc +++ b/gcc/cp/typeck2.cc @@ -1371,6 +1371,70 @@ digest_init_flags (tree type, tree init, int flags, tsubst_flags_t complain)

[PATCH][wwwdocs] Document ASAN changes for GCC 13.

2022-05-24 Thread Martin Liška
Ready to be installed? Thanks, Martin --- htdocs/gcc-13/changes.html | 3 +++ 1 file changed, 3 insertions(+) diff --git a/htdocs/gcc-13/changes.html b/htdocs/gcc-13/changes.html index 6c5b2a37..f7f6866d 100644 --- a/htdocs/gcc-13/changes.html +++ b/htdocs/gcc-13/changes.html @@ -47,6 +47,9 @@

Re: [PATCH] c++: fix ICE on invalid attributes [PR96637]

2022-05-24 Thread Marek Polacek via Gcc-patches
On Tue, May 24, 2022 at 05:29:56PM +0530, Prathamesh Kulkarni wrote: > On Fri, 29 Apr 2022 at 19:44, Marek Polacek via Gcc-patches > wrote: > > > > This patch fixes crashes with invalid attributes. Arguably it could > > make sense to assert seen_error() too. > > > > Bootstrapped/regtested on x86_

Re: [PATCH 05/10] d: add 'final' and 'override' to gcc/d/*.cc 'visit' impls

2022-05-24 Thread Iain Buclaw via Gcc-patches
Excerpts from David Malcolm via Gcc-patches's message of Mai 23, 2022 9:28 pm: > gcc/d/ChangeLog: > * decl.cc: Add "final" and "override" to all "visit" vfunc decls > as appropriate. > * expr.cc: Likewise. > * toir.cc: Likewise. > * typeinfo.cc: Likewise. > * typ

Re: [PATCH V4 0/3] RISC-V:Add mininal support for Zicbo[mzp]

2022-05-24 Thread Kito Cheng via Gcc-patches
Committed with a few minor style fixes, thanks! On Tue, May 10, 2022 at 11:26 AM wrote: > > From: yulong > > This patchset adds support for three recently ratified RISC-V extensions: > > - Zicbom (Cache-Block Management Instructions) > - Zicbop (Cache-Block Prefetch hint instructions) > -

Re: [PATCH v2 01/11] OpenMP 5.0: Clause ordering for OpenMP 5.0 (topological sorting by base pointer)

2022-05-24 Thread Jakub Jelinek via Gcc-patches
On Fri, Mar 18, 2022 at 09:24:51AM -0700, Julian Brown wrote: > 2021-11-23 Julian Brown > > gcc/ > * gimplify.c (is_or_contains_p, omp_target_reorder_clauses): Delete > functions. > (omp_tsort_mark): Add enum. > (omp_mapping_group): Add struct. > (debug_mapping_gro

Re: [PATCH v2 02/11] Remove omp_target_reorder_clauses

2022-05-24 Thread Jakub Jelinek via Gcc-patches
On Fri, Mar 18, 2022 at 09:24:52AM -0700, Julian Brown wrote: > This patch has been split out from the previous one to avoid a > confusingly-interleaved diff. The two patches should probably be > committed squashed together. Agreed, LGTM. > > 2021-10-01 Julian Brown > > gcc/ > * gimpli

Re: [PATCH 05/10] d: add 'final' and 'override' to gcc/d/*.cc 'visit' impls

2022-05-24 Thread David Malcolm via Gcc-patches
On Tue, 2022-05-24 at 14:56 +0200, Iain Buclaw wrote: > Excerpts from David Malcolm via Gcc-patches's message of Mai 23, 2022 > 9:28 pm: > > gcc/d/ChangeLog: > > * decl.cc: Add "final" and "override" to all "visit" vfunc > > decls > > as appropriate. > > * expr.cc: Likewise.

Re: [PATCH v2 03/11] OpenMP/OpenACC struct sibling list gimplification extension and rework

2022-05-24 Thread Jakub Jelinek via Gcc-patches
On Fri, Mar 18, 2022 at 09:24:53AM -0700, Julian Brown wrote: > 2022-03-17 Julian Brown > > gcc/fortran/ > * trans-openmp.cc (gfc_trans_omp_clauses): Don't create > GOMP_MAP_TO_PSET mappings for class metadata, nor GOMP_MAP_POINTER > mappings for POINTER_TYPE_P decls. >

Re: [PATCH v2 04/11] OpenMP/OpenACC: Add inspector class to unify mapped address analysis

2022-05-24 Thread Jakub Jelinek via Gcc-patches
On Fri, Mar 18, 2022 at 09:24:54AM -0700, Julian Brown wrote: > 2022-03-17 Julian Brown > > gcc/c-family/ > * c-common.h (c_omp_address_inspector): New class. > * c-omp.c (c_omp_address_inspector::get_deref_origin, > c_omp_address_inspector::component_access_p, >

Re: [PATCH v2 05/11] OpenMP: Handle reference-typed struct members

2022-05-24 Thread Jakub Jelinek via Gcc-patches
On Fri, Mar 18, 2022 at 09:26:46AM -0700, Julian Brown wrote: > This patch relates to OpenMP mapping clauses containing struct members of > reference type, e.g. "mystruct.myref.myptr[:N]". To be able to access > the array slice through the reference in the middle, we need to perform > an attach ac

Re: [PATCH] c: Improve build_component_ref diagnostics [PR91134]

2022-05-24 Thread Marek Polacek via Gcc-patches
On Tue, May 24, 2022 at 09:25:57AM +0200, Jakub Jelinek wrote: > Hi! > > On the following testcase (the first dg-error line) we emit a weird > diagnostics and even fixit on pointerpointer->member > where pointerpointer is pointer to pointer to struct and we say > 'pointerpointer' is a pointer; did

[PATCH] Canonicalize X&-Y as X*Y in match.pd when Y is [0,1].

2022-05-24 Thread Roger Sayle
"For every pessimization, there's an equal and opposite optimization". In the review of my original patch for PR middle-end/98865, Richard Biener pointed out that match.pd shouldn't be transforming X*Y into X&-Y as the former is considered cheaper by tree-ssa's cost model (operator count). A cor

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

2022-05-24 Thread Marek Polacek via Gcc-patches
On Tue, May 24, 2022 at 08:36:39AM -0400, Jason Merrill wrote: > On 5/16/22 11:36, Marek Polacek wrote: > > +static tree > > +replace_placeholders_for_class_temp_r (tree *tp, int *, void *data) > > +{ > > + tree t = *tp; > > + tree full_expr = *static_cast(data); > > + > > + /* We're looking for

Re: [PATCH] c: Improve build_component_ref diagnostics [PR91134]

2022-05-24 Thread David Malcolm via Gcc-patches
On Tue, 2022-05-24 at 09:25 +0200, Jakub Jelinek via Gcc-patches wrote: > Hi! > > On the following testcase (the first dg-error line) we emit a weird > diagnostics and even fixit on pointerpointer->member > where pointerpointer is pointer to pointer to struct and we say > 'pointerpointer' is a poi

Re: [PATCH] c: Improve build_component_ref diagnostics [PR91134]

2022-05-24 Thread David Malcolm via Gcc-patches
On Tue, 2022-05-24 at 09:57 -0400, David Malcolm wrote: > On Tue, 2022-05-24 at 09:25 +0200, Jakub Jelinek via Gcc-patches > wrote: > > Hi! > > > > On the following testcase (the first dg-error line) we emit a weird > > diagnostics and even fixit on pointerpointer->member > > where pointerpointer

Re: [PATCH] libiberty: remove FINAL and OVERRIDE from ansidecl.h

2022-05-24 Thread David Malcolm via Gcc-patches
On Tue, 2022-05-24 at 17:09 +0930, Alan Modra wrote: > On Mon, May 23, 2022 at 07:42:29PM -0400, David Malcolm via Binutils > wrote: > > Any objections, or is there a reason to keep these macros that I'm > > not aware of?  (and did I send this to all the pertinent lists?) > > No objection from me.

Re: [PATCH] libiberty: remove FINAL and OVERRIDE from ansidecl.h

2022-05-24 Thread Richard Biener via Gcc-patches
On Tue, May 24, 2022 at 4:10 PM David Malcolm wrote: > > On Tue, 2022-05-24 at 17:09 +0930, Alan Modra wrote: > > On Mon, May 23, 2022 at 07:42:29PM -0400, David Malcolm via Binutils > > wrote: > > > Any objections, or is there a reason to keep these macros that I'm > > > not aware of? (and did I

Re: [PATCH v2 06/11] OpenMP: lvalue parsing for map clauses (C++)

2022-05-24 Thread Jakub Jelinek via Gcc-patches
On Fri, Mar 18, 2022 at 09:26:47AM -0700, Julian Brown wrote: > --- a/gcc/cp/parser.cc > +++ b/gcc/cp/parser.cc > @@ -4266,6 +4266,9 @@ cp_parser_new (cp_lexer *lexer) >parser->omp_declare_simd = NULL; >parser->oacc_routine = NULL; > > + /* Allow array slice in expression. */ Better /*

Re: [PATCH][wwwdocs] Document ASAN changes for GCC 13.

2022-05-24 Thread Eric Gallager via Gcc-patches
On Tue, May 24, 2022 at 8:42 AM Martin Liška wrote: > > Ready to be installed? > > Thanks, > Martin > > --- > htdocs/gcc-13/changes.html | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/htdocs/gcc-13/changes.html b/htdocs/gcc-13/changes.html > index 6c5b2a37..f7f6866d 100644 > --- a/ht

Re: [PATCH v2 08/11] Use OMP_ARRAY_SECTION instead of TREE_LIST in C++ FE

2022-05-24 Thread Jakub Jelinek via Gcc-patches
On Fri, Mar 18, 2022 at 09:26:49AM -0700, Julian Brown wrote: > This patch changes the representation of OMP array sections in the > C++ front end to use the new OMP_ARRAY_SECTION tree code instead of a > TREE_LIST. This is important for "declare mapper" support, because the > array section repres

Re: [PATCH][wwwdocs] Document ASAN changes for GCC 13.

2022-05-24 Thread Gerald Pfeifer
Hi Martin, On Tue, 24 May 2022, Martin Liška wrote: > +AddressSanitizer defaults to > detect_stack_use_after_return=1 on Linux target. did you mean targets, or really just target? (And Linux or GNU/Linux, though that one is more disputed, I know. Just following our own coding conventions...

Re: [PATCH] gcc: add --enable-systemtap switch [PR61257]

2022-05-24 Thread Eric Gallager via Gcc-patches
On Mon, Mar 14, 2022 at 10:13 AM Jakub Jelinek via Gcc-patches wrote: > > On Mon, Mar 14, 2022 at 09:26:57AM -0400, Marek Polacek via Gcc-patches wrote: > > Thanks for the patch. > > > > The new configure option needs documenting in doc/install.texi, and > > configure > > needs to be regenerated.

Re: [PATCH v2 09/11] OpenMP 5.0 "declare mapper" support for C++

2022-05-24 Thread Jakub Jelinek via Gcc-patches
On Fri, Mar 18, 2022 at 09:26:50AM -0700, Julian Brown wrote: > This patch implements OpenMP 5.0 "declare mapper" support for C++ -- > except for arrays of structs with mappers, which are TBD. I've taken cues > from the existing "declare reduction" support where appropriate, though > obviously the

Re: [PATCH] configure: cache result of "sys/sdt.h" header check

2022-05-24 Thread Eric Gallager via Gcc-patches
On Thu, Mar 24, 2022 at 9:27 AM David Seifert via Gcc-patches wrote: > > On Mon, 2022-03-14 at 18:38 +0100, David Seifert wrote: > > Use AC_CACHE_CHECK to store the result of the header check for > > systemtap's "sys/sdt.h", which is similar in spirit to libstdc++'s > > AC_CACHE_CHECK(..., glibcxx

Re: [PATCH 05/10] d: add 'final' and 'override' to gcc/d/*.cc 'visit' impls

2022-05-24 Thread Iain Buclaw via Gcc-patches
Excerpts from David Malcolm's message of Mai 24, 2022 3:15 pm: > On Tue, 2022-05-24 at 14:56 +0200, Iain Buclaw wrote: >> Excerpts from David Malcolm via Gcc-patches's message of Mai 23, 2022 >> 9:28 pm: >> > gcc/d/ChangeLog: >> > * decl.cc: Add "final" and "override" to all "visit" vfunc >

[committed] amdgcn: Remove LLVM 9 assembler/linker support

2022-05-24 Thread Andrew Stubbs
I've committed this patch to set the minimum required LLVM version, for the assembler and linker, to 13.0.1. An upgrade from LLVM 9 is a prerequisite for the gfx90a support, and 13.0.1 is now the oldest version not known to have compatibility issues. The patch removes all the obsolete feature

[committed] amdgcn: Add gfx90a support

2022-05-24 Thread Andrew Stubbs
I've committed this patch to add support for gfx90a AMD GPU devices. The patch updates all the places that have architecture/ISA specific code, tidies up the ISA naming and handling in the backend, and adds a new multilib. This is just lightly tested at this point, but there are no known issu

Re: [PATCH] Modula-2: merge proposal/review: 1/9 01.patch-set-01

2022-05-24 Thread Gaius Mulley via Gcc-patches
Richard Biener writes: > On Sat, May 21, 2022 at 3:11 AM Gaius Mulley wrote: >> >> >> Hi, >> >> Gaius wrote: >> >> > the changes do raise questions. The reason for the changes here are to >> > allow easy linking for modula-2 users. >> >> > $ gm2 hello.mod >> >> > for example will compile and l

Re: [ping2][PATCH 0/8][RFC] Support BTF decl_tag and type_tag annotations

2022-05-24 Thread Yonghong Song via Gcc-patches
On 5/24/22 4:07 AM, Jose E. Marchesi wrote: On 5/11/22 11:44 AM, David Faust wrote: On 5/10/22 22:05, Yonghong Song wrote: On 5/10/22 8:43 PM, Yonghong Song wrote: On 5/6/22 2:18 PM, David Faust wrote: On 5/5/22 16:00, Yonghong Song wrote: On 5/4/22 10:03 AM, David Faust wrote:

Re: [ping2][PATCH 0/8][RFC] Support BTF decl_tag and type_tag annotations

2022-05-24 Thread David Faust via Gcc-patches
On 5/24/22 04:07, Jose E. Marchesi wrote: > >> On 5/11/22 11:44 AM, David Faust wrote: >>> >>> On 5/10/22 22:05, Yonghong Song wrote: On 5/10/22 8:43 PM, Yonghong Song wrote: > > > On 5/6/22 2:18 PM, David Faust wrote: >> >> >> On 5/5/22 16:00, Yonghong So

Re: Back porting to GCC11/GCC12: Re: [patch][gcc13][i386][pr101891]Adjust -fzero-call-used-regs to always use XOR

2022-05-24 Thread Qing Zhao via Gcc-patches
Pushed to both gcc11 and gcc12. thanks. Qing > On May 24, 2022, at 1:19 AM, Richard Biener wrote: > > On Mon, 23 May 2022, Qing Zhao wrote: > >> Hi, >> >> I have added the patch to GCC11 and GCC12 in my local area and bootstrapped >> and regress tested on both x86 and aarch64, no any issues

Re: [ping2][PATCH 0/8][RFC] Support BTF decl_tag and type_tag annotations

2022-05-24 Thread Yonghong Song via Gcc-patches
On 5/24/22 8:53 AM, David Faust wrote: On 5/24/22 04:07, Jose E. Marchesi wrote: On 5/11/22 11:44 AM, David Faust wrote: On 5/10/22 22:05, Yonghong Song wrote: On 5/10/22 8:43 PM, Yonghong Song wrote: On 5/6/22 2:18 PM, David Faust wrote: On 5/5/22 16:00, Yonghong Song wrote:

Re: [PATCH] aarch64: Fix pac-ret with unusual dwarf in libgcc unwinder [PR104689]

2022-05-24 Thread Szabolcs Nagy via Gcc-patches
The 05/13/2022 16:35, Richard Sandiford wrote: > Szabolcs Nagy via Gcc-patches writes: > > The RA_SIGN_STATE dwarf pseudo-register is normally only set using the > > DW_CFA_AARCH64_negate_ra_state (== DW_CFA_window_save) operation which > > toggles the return address signedness state (the default

[patch] [wwwdocs]+[invoke.texi] Update GCN for gfx90a (was: Re: [committed] amdgcn: Add gfx90a support)

2022-05-24 Thread Tobias Burnus
On 24.05.22 17:31, Andrew Stubbs wrote: amdgcn: Add gfx90a support Attached is an attempt to update invoke.texi And to update the gcc-13/changes.html. Regarding the latter, I have to versions – the first is more readable, the latter makes more clear where to use it, but reads much worse. – Pic

[PATCH] AArch64: Prioritise init_have_lse_atomics constructor [PR 105708]

2022-05-24 Thread Wilco Dijkstra via Gcc-patches
Increase the priority of the init_have_lse_atomics constructor so it runs before other constructors. This improves chances that rr works when LSE atomics are supported. Regress and bootstrap pass, OK for commit? 2022-05-24 Wilco Dijkstra libgcc/ PR libgcc/105708 * config/aarc

Re: [ping2][PATCH 0/8][RFC] Support BTF decl_tag and type_tag annotations

2022-05-24 Thread David Faust via Gcc-patches
On 5/24/22 09:03, Yonghong Song wrote: > > > On 5/24/22 8:53 AM, David Faust wrote: >> >> >> On 5/24/22 04:07, Jose E. Marchesi wrote: >>> On 5/11/22 11:44 AM, David Faust wrote: > > On 5/10/22 22:05, Yonghong Song wrote: >> >> >> On 5/10/22 8:43 PM, Yonghong Song wrot

Re: [patch] [wwwdocs]+[invoke.texi] Update GCN for gfx90a (was: Re: [committed] amdgcn: Add gfx90a support)

2022-05-24 Thread Tobias Burnus
On 24.05.22 18:44, Tobias Burnus wrote: On 24.05.22 17:31, Andrew Stubbs wrote: amdgcn: Add gfx90a support Attached is an attempt to update invoke.texi And to update the gcc-13/changes.html. Regarding the latter, I have to versions – the first is more readable, the latter makes more clear wher

[PATCH] sourcebuild.texi: Document new toplevel directories [PR82383]

2022-05-24 Thread Eric Gallager via Gcc-patches
This patch adds entries for the c++tools, gotools, libbacktrace, libcc1, libcody, liboffloadmic, and libsanitizer directories into the list of toplevel source directories in sourcebuild.texi. I also removed the entry for boehm-gc (which is no longer in-tree), and fixed the alphabetization for libqu

[wwwdocs] Add C status page

2022-05-24 Thread Marek Polacek via Gcc-patches
I thought it'd be nice to have a table that documents our C support status, like we have https://gcc.gnu.org/projects/cxx-status.html for C++. We have https://gcc.gnu.org/c99status.html, but that's C99 only. So here's a patch to add just that. For C99, I used c99status.html but added paper number

Re: [wwwdocs] Add C status page

2022-05-24 Thread Joseph Myers
On Tue, 24 May 2022, Marek Polacek via Gcc-patches wrote: > I thought it'd be nice to have a table that documents our C support > status, like we have https://gcc.gnu.org/projects/cxx-status.html for C++. > We have https://gcc.gnu.org/c99status.html, but that's C99 only. > > So here's a patch to

Re: [PATCH][wwwdocs] Document ASAN changes for GCC 13.

2022-05-24 Thread Martin Liška
On 5/24/22 16:33, Gerald Pfeifer wrote: > Hi Martin, > > On Tue, 24 May 2022, Martin Liška wrote: >> +AddressSanitizer defaults to >> detect_stack_use_after_return=1 on Linux target. > > did you mean targets, or really just target? > > (And Linux or GNU/Linux, though that one is more disput

Re: [0/9] [middle-end] Add param to vec_perm_const hook to specify mode of input operand

2022-05-24 Thread Prathamesh Kulkarni via Gcc-patches
On Tue, 24 May 2022 at 14:50, Richard Sandiford wrote: > > Prathamesh Kulkarni writes: > > diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi > > index c5006afc00d..0a3c733ada9 100644 > > --- a/gcc/doc/tm.texi > > +++ b/gcc/doc/tm.texi > > @@ -6088,14 +6088,18 @@ for the given scalar type @var{type}.

Re: [PATCH] [PR/target 105666] RISC-V: Inhibit FP <--> int register moves via tune param

2022-05-24 Thread Vineet Gupta
On 5/24/22 00:59, Kito Cheng wrote: Committed, thanks! Thx for the quick action Kito, Can this be backported to gcc 12 as well ? Thx, -Vineet On Tue, May 24, 2022 at 3:40 AM Philipp Tomsich wrote: Good catch! On Mon, 23 May 2022 at 20:12, Vineet Gupta wrote: Under extreme register

[pushed] c++: constexpr empty base redux [PR105622]

2022-05-24 Thread Jason Merrill via Gcc-patches
Here calling the constructor for s.__size_ had ctx->ctor for s itself because cxx_eval_store_expression doesn't create a ctor for the empty field. Then cxx_eval_call_expression returned the s initializer, and my empty base overhaul in r13-160 got confused because the type of init is not an empty cl

Re: [wwwdocs] Add C status page

2022-05-24 Thread Joseph Myers
On Tue, 24 May 2022, Marek Polacek via Gcc-patches wrote: > + This actually looks like a mix of papers approved at the Oct 2020 meeting and those approved at the Nov/Dec 2020 meeting, though I haven't checked the lists in detail against those the minutes show as being approved as-is or wit

[pushed] c++: discarded-value and constexpr

2022-05-24 Thread Jason Merrill via Gcc-patches
I've been thinking for a while that the 'lval' parameter needed a third value for discarded-value expressions; most importantly, cxx_eval_store_expression does extra work for an lvalue result, and we also don't want to do the l->r conversion. Mostly this is pretty mechanical. Apart from the _stor

[pushed] c++: *this folding in constexpr call

2022-05-24 Thread Jason Merrill via Gcc-patches
The code in cxx_eval_call_expression to fold *this was doing the wrong thing for array decay; we can use cxx_fold_indirect_ref instead. This didn't end up being necessary to fix anything, but still seems like an improvement. Tested x86_64-pc-linux-gnu, applying to trunk. gcc/cp/ChangeLog:

Re: [ping] Re: [RFA] gcc.misc-tests/outputs.exp: Use link test to check for -gsplit-dwarf support

2022-05-24 Thread Joel Brobecker via Gcc-patches
> >> gcc/testsuite/ChangeLog: > >> > >> * gcc.misc-tests/outputs.exp: Make the -gsplit-dwarf test > >> a compile-and-link test rather than a compile-only test. > > OK, thanks. Thank you Richard. Pushed to master. -- Joel

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

2022-05-24 Thread Jason Merrill via Gcc-patches
On 5/24/22 09:55, Marek Polacek wrote: On Tue, May 24, 2022 at 08:36:39AM -0400, Jason Merrill wrote: On 5/16/22 11:36, Marek Polacek wrote: +static tree +replace_placeholders_for_class_temp_r (tree *tp, int *, void *data) +{ + tree t = *tp; + tree full_expr = *static_cast(data); + + /* We'r

[pushed] c++: strict constexpr and local vars

2022-05-24 Thread Jason Merrill via Gcc-patches
A change I was working on made constexpr_searcher.cc start to fail, and when I looked at it I wondered why it had been accepted before. This turned out to be because we try to be more flexible about constant-evaluation of static initializers, as allowed, but we were wrongly doing the same for non-

[pushed] c++: constexpr returning deallocated ptr

2022-05-24 Thread Jason Merrill via Gcc-patches
In constexpr-new3.C, the f7 function returns a deleted pointer, which we were happily caching because the new and delete are balanced. Don't. Tested x86_64-pc-linux-gnu, applying to trunk. gcc/cp/ChangeLog: * constexpr.cc (cxx_eval_call_expression): Check for heap vars in the re

Re: [PATCH v2] DSE: Use the constant store source if possible

2022-05-24 Thread H.J. Lu via Gcc-patches
On Mon, May 23, 2022 at 11:42 PM Richard Biener wrote: > > On Mon, May 23, 2022 at 8:34 PM H.J. Lu wrote: > > > > On Mon, May 23, 2022 at 12:38:06PM +0200, Richard Biener wrote: > > > On Sat, May 21, 2022 at 5:02 AM H.J. Lu via Gcc-patches > > > wrote: > > > > > > > > When recording store for RT

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

2022-05-24 Thread Marek Polacek via Gcc-patches
On Tue, May 24, 2022 at 04:01:37PM -0400, Jason Merrill wrote: > On 5/24/22 09:55, Marek Polacek wrote: > > On Tue, May 24, 2022 at 08:36:39AM -0400, Jason Merrill wrote: > > > On 5/16/22 11:36, Marek Polacek wrote: > > > > +static tree > > > > +replace_placeholders_for_class_temp_r (tree *tp, int

Re: [PATCH][_Hashtable] Fix insertion of range of type convertible to value_type PR 56112

2022-05-24 Thread François Dumont via Gcc-patches
On 24/05/22 12:18, Jonathan Wakely wrote: On Thu, 5 May 2022 at 18:38, François Dumont via Libstdc++ wrote: Hi Renewing my patch to fix PR 56112 but for the insert methods, I totally change it, now works also with move-only key types. I let you Jonathan find a better name than _ValueTypeEnfor

[r13-726 Regression] FAIL: libgomp.fortran/taskwait-depend-nowait-1.f90 -O execution test on Linux/x86_64

2022-05-24 Thread skpandey--- via Gcc-patches
On Linux/x86_64, 4fb2b4f7ea6b80ae75d3efb6f86e7c6179080535 is the first bad commit commit 4fb2b4f7ea6b80ae75d3efb6f86e7c6179080535 Author: Tobias Burnus Date: Tue May 24 10:41:43 2022 +0200 OpenMP: Support nowait with Fortran [PR105378] caused FAIL: libgomp.fortran/taskwait-depend-nowait-

Ping: [PATCH v2] diagnostics: Honor #pragma GCC diagnostic in the preprocessor [PR53431]

2022-05-24 Thread Lewis Hyatt via Gcc-patches
Hello- Now that we're back in stage 1, I thought it might be a better time to ask for feedback on this pair of patches that tries to resolve PR53431 please? https://gcc.gnu.org/pipermail/gcc-patches/2021-December/587357.html https://gcc.gnu.org/pipermail/gcc-patches/2021-December/587358.html Par

[PATCH v1 0/3] RISC-V: Improve sequences with shifted zero-extended operands

2022-05-24 Thread Philipp Tomsich
Code-generation currently misses some opportunities for optimized sequences when zero-extension is combined with shifts. Philipp Tomsich (3): RISC-V: add consecutive_bits_operand predicate RISC-V: Split slli+sh[123]add.uw opportunities to avoid zext.w RISC-V: Replace zero_extendsidi2_shif

[PATCH v1 1/3] RISC-V: add consecutive_bits_operand predicate

2022-05-24 Thread Philipp Tomsich
Provide an easy way to constrain for constants that are a a single, consecutive run of ones. gcc/ChangeLog: * config/riscv/predicates.md (consecutive_bits_operand): Implement new predicate. Signed-off-by: Philipp Tomsich --- gcc/config/riscv/predicates.md | 11 +++ 1

[PATCH v1 2/3] RISC-V: Split slli+sh[123]add.uw opportunities to avoid zext.w

2022-05-24 Thread Philipp Tomsich
When encountering a prescaled (biased) value as a candidate for sh[123]add.uw, the combine pass will present this as shifted by the aggregate amount (prescale + shift-amount) with an appropriately adjusted mask constant that has fewer than 32 bits set. E.g., here's the failing expression seen in c

[PATCH v1 3/3] RISC-V: Replace zero_extendsidi2_shifted with generalized split

2022-05-24 Thread Philipp Tomsich
The current method of treating shifts of extended values on RISC-V frequently causes sequences of 3 shifts, despite the presence of the 'zero_extendsidi2_shifted' pattern. Consider: unsigned long f(unsigned int a, unsigned long b) { a = a << 1; unsigned long c = (un

Re: [wwwdocs] Add C status page

2022-05-24 Thread Marek Polacek via Gcc-patches
On Tue, May 24, 2022 at 06:11:09PM +, Joseph Myers wrote: > On Tue, 24 May 2022, Marek Polacek via Gcc-patches wrote: > > > I thought it'd be nice to have a table that documents our C support > > status, like we have https://gcc.gnu.org/projects/cxx-status.html for C++. > > We have https://gcc

[PATCH v1 1/3] RISC-V: Split "(a & (1 << BIT_NO)) ? 0 : -1" to bexti + addi

2022-05-24 Thread Philipp Tomsich
Consider creating a polarity-reversed mask from a set-bit (i.e., if the bit is set, produce all-ones; otherwise: all-zeros). Using Zbb, this can be expressed as bexti, followed by an addi of minus-one. To enable the combiner to discover this opportunity, we need to split the canonical expression

[PATCH v1 2/3] RISC-V: Split "(a & (1UL << bitno)) ? 0 : -1" to bext + addi

2022-05-24 Thread Philipp Tomsich
For a straightforward application of bext for the following function long bext64(long a, char bitno) { return (a & (1UL << bitno)) ? 0 : -1; } we generate srl a0,a0,a1# 7 [c=4 l=4] lshrdi3 andia0,a0,1 # 8 [c=4 l=4] anddi3/1

[PATCH v1 3/3] RISC-V: Split "(a & (1UL << bitno)) ? 0 : 1" to bext + xori

2022-05-24 Thread Philipp Tomsich
We avoid reassociating "(~(a >> BIT_NO)) & 1" into "((~a) >> BIT_NO) & 1" by splitting it into a zero-extraction (bext) and an xori. This both avoids burning a register on a temporary and generates a sequence that clearly captures 'extract bit, then invert bit'. This change improves the previousl

  1   2   >