Re: [PATCH 4/4]: C++ P1423R3 char8_t remediation: New tests

2019-12-03 Thread Christophe Lyon
On Mon, 16 Sep 2019 at 04:34, Tom Honermann wrote: > > A revised patch is attached that modifies the tests for deleted ostream > inserters to require C++2a. This is required by the revision of patch > 2/4 that adds proper preprocessor conditionals to the definitions. > > Tom. > > On 9/15/19 3:40

[C++ PATCH] Fix up constexpr TARGET_EXPR evaluation if there are cleanups (PR c++/91369)

2019-12-03 Thread Jakub Jelinek
Hi! The following testcase shows that during constexpr evaluation we didn't handle TARGET_EXPR_CLEANUP at all (which was probably fine when there weren't constexpr dtors). My understanding is that TARGET_EXPR cleanups should be queued and evaluated only at the end of CLEANUP_POINT_EXPR, so that i

[PATCH] Improve (CST1 - A) +- CST2 -> CST3 - A and CST1 - (CST2 - A) -> CST3 + A match.pd opt (PR tree-optimization/92734)

2019-12-03 Thread Jakub Jelinek
Hi! The following patch extends the improvements Marc did to the (A +- CST1) +- CST2 -> A +- CST3 match.pd simplification some time ago to the other two patterns, in particular handle the case when the inner subtraction is done in a different, but nop_convert compatible, type from the outer +/-.

Re: [wwwdocs][Fortran] gcc-10/porting_to.html – Fortran's argument-checking

2019-12-03 Thread Tobias Burnus
I have now installed https://gcc.gnu.org/gcc-10/porting_to.html – which is linked from https://gcc.gnu.org/gcc-10/changes.html (first paragraph is now uncommented). Comments? Omissions, additional suggestions for either page? Cheers, Tobias On 12/2/19 1:48 PM, Tobias Burnus wrote: Revised ve

Re: [PATCH] Improve (CST1 - A) +- CST2 -> CST3 - A and CST1 - (CST2 - A) -> CST3 + A match.pd opt (PR tree-optimization/92734)

2019-12-03 Thread Richard Biener
On Tue, 3 Dec 2019, Jakub Jelinek wrote: > Hi! > > The following patch extends the improvements Marc did to the > (A +- CST1) +- CST2 -> A +- CST3 > match.pd simplification some time ago to the other two patterns, > in particular handle the case when the inner subtraction is done in a > different

[PATCH] Deal with CLOBBERs better in VN (PR92751)

2019-12-03 Thread Richard Biener
The following fixes value-numbering being confused by the CLOBBERs that appear in Skia vector constructors like : v ={v} {CLOBBER}; MEM[(struct Vec *)&v] ={v} {CLOBBER}; MEM[(struct Vec *)&v] ={v} {CLOBBER}; MEM[(struct Vec *)&v].val = 1; MEM[(struct Vec *)&v + 4B] ={v} {CLOBBER};

Re: [PATCH 4/4]: C++ P1423R3 char8_t remediation: New tests

2019-12-03 Thread Jonathan Wakely
On 03/12/19 09:11 +0100, Christophe Lyon wrote: On Mon, 16 Sep 2019 at 04:34, Tom Honermann wrote: A revised patch is attached that modifies the tests for deleted ostream inserters to require C++2a. This is required by the revision of patch 2/4 that adds proper preprocessor conditionals to th

Re: [Patch][Fortran] OpenACC – permit common blocks in some clauses

2019-12-03 Thread Thomas Schwinge
Hi Tobias! On 2019-11-29T18:47:12+0100, Tobias Burnus wrote: > On 11/28/19 6:02 PM, Thomas Schwinge wrote: > [Test case which uses common blocks in device_resident.] >> If you'd like to, please commit that, to document the status quo. (I >> have not reviewed.) > > Did so as r278845 with a slight

Which OpenACC 'acc_device_t' to use for AMD GPU offloading (was: [PATCH 4/7 libgomp,amdgcn] GCN libgomp port)

2019-12-03 Thread Thomas Schwinge
Hi! On 2019-12-02T14:50:42+, Julian Brown wrote: > On Mon, 2 Dec 2019 15:43:29 +0100 > Thomas Schwinge wrote: > >> > --- a/libgomp/openacc.h >> > +++ b/libgomp/openacc.h >> > @@ -55,6 +55,7 @@ typedef enum acc_device_t { >> >/* acc_device_host_nonshm = 3 removed. */ >> >acc_device_n

[PATCH, rs6000] Fix PR92760 by checking VECTOR_MEM_NONE_P instead

2019-12-03 Thread Kewen.Lin
Hi, PR92760 exposed one issue that VECTOR_UNIT_NONE_P (V2DImode) is true on Power7 then we won't return it as preferred_simd_mode but ISA 2.06 (Power7) does introduce partial support on vector doubleword (very limitted) and more basic support origins from ISA 2.07 (Power8) though. To make vector

Re: [PATCH] Improve A*B+-A -> A*(B+-1) and A+-A*B -> A*(1+-B) match.pd optimization

2019-12-03 Thread Richard Sandiford
Jakub Jelinek writes: > Hi! > > As discussed in the PR, we can't optimize e.g. > int a = t - 1; > int b = a * v; > return b + v; > into return t * v; for signed non-wrapv arithmetics. This can be done > by the match.pd (A * B) +- A -> (B +- 1) * A or > A +- (A * B) -> (1 +- B) * A canonical

Re: [PATCH v2 00/11] timed_mutex, shared_timed_mutex: Add full steady clock support

2019-12-03 Thread Jonathan Wakely
On 02/12/19 16:23 +, Jonathan Wakely wrote: On 15/10/19 18:57 +0100, Mike Crowe wrote: glibc v2.30 added the pthread_mutex_clocklock, pthread_rwlock_clockrdlock and pthread_rwlock_clockwrlock functions. These accept CLOCK_MONOTONIC, so they can be used to implement proper steady_clock suppor

Re: [PATCH] Improve A*B+-A -> A*(B+-1) and A+-A*B -> A*(1+-B) match.pd optimization

2019-12-03 Thread Richard Biener
On Tue, 3 Dec 2019, Richard Sandiford wrote: > Jakub Jelinek writes: > > Hi! > > > > As discussed in the PR, we can't optimize e.g. > > int a = t - 1; > > int b = a * v; > > return b + v; > > into return t * v; for signed non-wrapv arithmetics. This can be done > > by the match.pd (A * B)

[Ada] Adjust Copy-In/Copy-Out mechanism on 64-bit targets

2019-12-03 Thread Eric Botcazou
This adjusts the return part of the mechanism used to pass In Out or Out parameters on 64-bit targets to avoid generating problematic paradoxical subregs with floating-point mode. Tested on x86_64-suse-linux, applied on the mainline. 2019-12-03 Eric Botcazou * gcc-interface/decl.c

[Ada] Fix debug info for variant records on m68k

2019-12-03 Thread Eric Botcazou
This fixes a bug in the encoding used in the debug info generated for record types with variant part for targets where the alignment is capped to 16 bits like the m68k (unless -malign-int is specified). Tested on m68k-elf and x86_64-suse-linux, applied on the mainline. 2019-12-03 Eric Botcazo

Re: [patch] install the lto-dump man page

2019-12-03 Thread Martin Liška
On 12/2/19 7:15 PM, Matthias Klose wrote: GCC 10 comes with a new lto-dump texi file, but the man page isn't built and installed. Fix with the attached patch. Ok to install? Matthias Hello. Thank you for the patch. I would consider it as obvious. Martin

[Ada] Do not gratuitously use XVA encoding in debug info

2019-12-03 Thread Eric Botcazou
This streamlines the encoding used in the debug info for record types with components of variable size. Tested on x86_64-suse-linux, applied on the mainline. 2019-12-03 Eric Botcazou * gcc-interface/utils.c (potential_alignment_gap): Delete. (rest_of_record_type_compilation)

Re: [GCC][PATCH] Add ARM-specific Bfloat format support to middle-end

2019-12-03 Thread Stam Markianos-Wright
On 12/2/19 9:27 PM, Joseph Myers wrote: > On Mon, 2 Dec 2019, Jeff Law wrote: > >>> 2019-11-13 Stam Markianos-Wright >>> >>> * real.c (struct arm_bfloat_half_format, >>> encode_arm_bfloat_half, decode_arm_bfloat_half): New. >>> * real.h (arm_bfloat_half_format): New. >

Re: [PATCH] musl: Fix invalid tls model in libgomp and libitm PR91938

2019-12-03 Thread Szabolcs Nagy
On 20/11/2019 14:42, Szabolcs Nagy wrote: > On 15/11/2019 09:55, Szabolcs Nagy wrote: >> Musl does not support initial-exec tls in dynamically loaded shared >> libraries. > > ping. ping. >> >> libgomp/ChangeLog: >> >> 2019-11-15 Szabolcs Nagy >> >> * configure.tgt: Avoid IE tls on *-*-mu

Re: [PATCH] musl: Fix invalid tls model in libgomp and libitm PR91938

2019-12-03 Thread Jakub Jelinek
On Fri, Nov 15, 2019 at 09:55:37AM +, Szabolcs Nagy wrote: > Musl does not support initial-exec tls in dynamically loaded shared > libraries. > > libgomp/ChangeLog: > > 2019-11-15 Szabolcs Nagy > > * configure.tgt: Avoid IE tls on *-*-musl*. > > libitm/ChangeLog: > > 2019-11-15 S

[Patch] Rework OpenACC nested reduction clause consistency checking (was: Re: [PATCH][committed] Warn about inconsistent OpenACC nested reduction clauses)

2019-12-03 Thread Harwath, Frederik
Hi Jakub, On 08.11.19 07:41, Harwath, Frederik wrote: > On 06.11.19 14:00, Jakub Jelinek wrote: > [...] >> I'm not sure it is a good idea to use a TREE_LIST in this case, vec would be >> more natural, wouldn't it. > > Yes. > > [...] >> If gimplifier is not the right spot, then use a splay tree +

Re: [PATCH][2/2] More abstraction penalty removal for PR92645

2019-12-03 Thread Richard Biener
On Tue, 3 Dec 2019, Richard Biener wrote: > On Mon, 2 Dec 2019, Richard Biener wrote: > > > On December 2, 2019 4:27:47 PM GMT+01:00, Alexander Monakov > > wrote: > > >On Mon, 2 Dec 2019, Richard Biener wrote: > > > > > >> +typedef long long v4di __attribute__((vector_size(32))); > > >> +struct

Re: [PATCH 2/4] Validate acc_device_t uses

2019-12-03 Thread Thomas Schwinge
Hi Frederik! You once had this patch separate, but then merged into the upstream submission of 'acc_get_property'; let's please keep this separate. With changes as indicated below, please commit this to trunk (without the three hunks related to 'acc_get_property', of course; these will then go in

Re: Ping: [C++ PATCH] Opt out of GNU vector extensions for built-in SVE types

2019-12-03 Thread Richard Sandiford
Jason Merrill writes: > On 11/29/19 5:59 AM, Richard Sandiford wrote: >> Ping >> >> Richard Sandiford writes: >>> This is the C++ equivalent of r277950, which prevented the >>> use of the GNU vector extensions with SVE vector types for C. >>> [https://gcc.gnu.org/viewcvs/gcc?view=revision&revisi

Re: [patch, libgomp] Enable OpenACC GCN testing

2019-12-03 Thread Andrew Stubbs
On 02/12/2019 14:19, Thomas Schwinge wrote: Generally, I'm in favor if you'd consider such a thing (that in principle is just a copy/adapt of the existing cases) as obvious to commit (even more so with your "amdgcn port" maintainer hat on), especially so given that this has been/is blocking you,

Re: [PATCH 4/7 libgomp,amdgcn] GCN libgomp port

2019-12-03 Thread Andrew Stubbs
On 02/12/2019 14:43, Thomas Schwinge wrote: Hi! On 2019-11-12T13:29:13+, Andrew Stubbs wrote: --- a/include/gomp-constants.h +++ b/include/gomp-constants.h @@ -174,6 +174,7 @@ enum gomp_map_kind #define GOMP_DEVICE_NVIDIA_PTX5 #define GOMP_DEVICE_INTEL_MIC 6 #

Re: [PATCH][ARM] Improve max_cond_insns setting for Cortex cores

2019-12-03 Thread Wilco Dijkstra
Hi Kyrill, > Hmm, I'm not too confident on that. I'd support such a change for the > generic arm_cortex_tune, definitely, and the Armv8-a based ones, but I > don't think the argument is as strong for Cortex-A7, Cortex-A8, Cortex-A9. > > So let's make the change for the Armv8-A-based cores now. I

Re: [patch, libgomp] Enable OpenACC GCN testing

2019-12-03 Thread Thomas Schwinge
Hi! On 2019-12-03T12:56:49+, Andrew Stubbs wrote: > On 02/12/2019 14:19, Thomas Schwinge wrote: >> Generally, I'm in favor if you'd consider such a thing (that in principle >> is just a copy/adapt of the existing cases) as obvious to commit (even >> more so with your "amdgcn port" maintainer

Re: Add a new combine pass

2019-12-03 Thread Oleg Endo
On Mon, 2019-11-25 at 16:47 -0600, Segher Boessenkool wrote: > > > > - sh (that's sh4-linux): > > > > > > /home/segher/src/kernel/net/ipv4/af_inet.c: In function > > > 'snmp_get_cpu_field': > > > /home/segher/src/kernel/net/ipv4/af_inet.c:1638:1: error: unable to find > > > a register to spill

[PATCH v2 2/2][ARM] Improve max_cond_insns setting for Cortex cores

2019-12-03 Thread Wilco Dijkstra
Hi, Part 2, split off from https://gcc.gnu.org/ml/gcc-patches/2019-11/msg00399.html To enable cores to use the correct max_cond_insns setting, use the core-specific tuning when a CPU/tune is selected unless -mrestrict-it is explicitly set. On Cortex-A57 this gives 1.1% performance gain on SPECIN

"gcn" vs. "amdgcn" etc. (was: [PATCH 4/7 libgomp,amdgcn] GCN libgomp port)

2019-12-03 Thread Thomas Schwinge
Hi! On 2019-12-03T13:13:33+, Andrew Stubbs wrote: > On 02/12/2019 14:43, Thomas Schwinge wrote: >> On 2019-11-12T13:29:13+, Andrew Stubbs wrote: >>> --- a/include/gomp-constants.h >>> +++ b/include/gomp-constants.h >>> @@ -174,6 +174,7 @@ enum gomp_map_kind >>> #define GOMP_DEVICE_NVID

Do not update SSA in lto-stremaer-in

2019-12-03 Thread Jan Hubicka
Hi, input_functions ends with building virtual SSA which is unnecesary excercise when function is only loaded to be inlined, compared by ipa-icf or its profile merged. This patch moves the SSA update later before we start working on the function body. lto-bootstrapped/regtested x86_64-linux, OK?

Re: Which OpenACC 'acc_device_t' to use for AMD GPU offloading (was: [PATCH 4/7 libgomp,amdgcn] GCN libgomp port)

2019-12-03 Thread Julian Brown
On Tue, 3 Dec 2019 10:32:57 +0100 Thomas Schwinge wrote: > Hi! > > On 2019-12-02T14:50:42+, Julian Brown > wrote: > > On Mon, 2 Dec 2019 15:43:29 +0100 > > Thomas Schwinge wrote: > > > >> > --- a/libgomp/openacc.h > >> > +++ b/libgomp/openacc.h > >> > @@ -55,6 +55,7 @@ typedef enum acc_d

Re: C++ PATCH for c++/91363 - P0960R3: Parenthesized initialization of aggregates

2019-12-03 Thread Marek Polacek
On Tue, Dec 03, 2019 at 02:01:24AM -0500, Jason Merrill wrote: > On 12/2/19 7:31 PM, Marek Polacek wrote: > > @@ -1967,8 +1978,23 @@ expand_default_init (tree binfo, tree true_exp, tree > > exp, tree init, int flags, > > tree ctor_name = (true_exp == exp > > ? complete_

Re: Do not update SSA in lto-stremaer-in

2019-12-03 Thread Richard Biener
On Tue, 3 Dec 2019, Jan Hubicka wrote: > Hi, > input_functions ends with building virtual SSA which is unnecesary > excercise when function is only loaded to be inlined, compared by > ipa-icf or its profile merged. > > This patch moves the SSA update later before we start working on the > functio

Re: Which OpenACC 'acc_device_t' to use for AMD GPU offloading

2019-12-03 Thread Thomas Schwinge
Hi! On 2019-12-03T14:20:13+, Julian Brown wrote: > On Tue, 3 Dec 2019 10:32:57 +0100 > Thomas Schwinge wrote: >> On 2019-12-02T14:50:42+, Julian Brown >> wrote: >> > On Mon, 2 Dec 2019 15:43:29 +0100 >> > Thomas Schwinge wrote: >> > >> >> > --- a/libgomp/openacc.h >> >> > +++ b/libgo

[PATCH] Revert to uniform vector CTOR canonicalization

2019-12-03 Thread Richard Biener
The PR shows I added the bail-out prematurely. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2019-12-03 Richard Biener PR tree-optimization/92758 * tree-ssa-forwprop.c (simplify_vector_constructor): Restore operation on uniform vectors. Ind

Re: Mark constant-sized objects as addressable if they have poly-int accesses

2019-12-03 Thread Richard Biener
On Mon, Dec 2, 2019 at 5:30 PM Richard Sandiford wrote: > > [finally getting back to this] > > Richard Biener writes: > > On Fri, Nov 8, 2019 at 10:40 AM Richard Sandiford > > wrote: > >> > >> If SVE code is written for a specific vector length, it might load from > >> or store to fixed-sized ob

Re: Don't install unnecessary ARRAY_REF element sizes

2019-12-03 Thread Richard Biener
On Mon, Dec 2, 2019 at 5:33 PM Richard Sandiford wrote: > > Even EXACT_DIV_EXPR doesn't distribute across addition for wrapping > types, so in general we can't fold EXACT_DIV_EXPRs of POLY_INT_CSTs > at compile time. This was causing an ICE when trying to gimplify the > element size field in an A

Re: [PATCH 2/4] Validate acc_device_t uses

2019-12-03 Thread Harwath, Frederik
Hi Thomas, On 03.12.19 13:14, Thomas Schwinge wrote: > You once had this patch separate, but then merged into the upstream > submission of 'acc_get_property'; let's please keep this separate. > > With changes as indicated below, please commit this to trunk [...] Ok, I have committed the patch as

Re: Which OpenACC 'acc_device_t' to use for AMD GPU offloading

2019-12-03 Thread Tobias Burnus
Regarding the  acc_device_, I want to observe that there is no fundamental reason that one cannot have multiple names which resolve to the same constant. Thus, one could add acc_device_radeon while keeping acc_device_gcn. Whether this makes sense or causes even more confusion is another questi

Re: [PATCH][AArch64] Add support for fused compare and branch

2019-12-03 Thread Wilco Dijkstra
Hi Richard, > But what uses CMP_BRANCH after the patch?  It looked like you renamed > all existing uses and didn't add any new ones. My next patch will be adding uses of it now I've done some benchmarking to decide when to turn it on. >> +  && reg_referenced_p (SET_DEST (curr_set), PATTERN (

Re: [Patch] Add OpenACC 2.6's no_create

2019-12-03 Thread Thomas Schwinge
Hi! Jakub, please note question below. On 2019-11-15T20:11:29+0100, Tobias Burnus wrote: > updated version. Changes: > * Incorporate Thomas's changes > * Add no_create clause to newly added 'acc serial' > * Renamed (G)OMP_MAP_NO_ALLOC to (G)OMP_MAP_IF_PRESENT as proposed > * Make no_create.c eff

Patch ping (was Re: [C++ PATCH] __builtin_source_location ())

2019-12-03 Thread Jakub Jelinek
Hi! On Fri, Nov 15, 2019 at 01:28:17PM +0100, Jakub Jelinek wrote: > On Thu, Nov 14, 2019 at 08:34:26PM +0100, Jakub Jelinek wrote: > > The following WIP patch implements __builtin_source_location (), > > which returns const void pointer to a std::source_location::__impl > > struct that is require

Re: [Patch][Fortran] OpenACC – permit common blocks in some clauses

2019-12-03 Thread Tobias Burnus
Hi Thomas, Quick version: The attached patch seems to work, kind of,  but fails at run time with: libgomp: Trying to map into device [0x407218..0x40721c) object when [0x407210..0x40721c) is already mapped This marks the common-block decl but not the common-block vars as 'device resident' (alia

Re: "gcn" vs. "amdgcn" etc. (was: [PATCH 4/7 libgomp,amdgcn] GCN libgomp port)

2019-12-03 Thread Julian Brown
On Tue, 3 Dec 2019 15:06:48 +0100 Thomas Schwinge wrote: > We probably can't/shouldn't change 'amdgcn' in the target triplet now, > but as far as I'm concerned, it's not too late to change > 'gcc/config/gcn' etc., but I guess that won't happen: too much > effort. (And then, I don't feel too stro

Re: C++ PATCH for c++/91363 - P0960R3: Parenthesized initialization of aggregates

2019-12-03 Thread Jason Merrill
On 12/3/19 9:38 AM, Marek Polacek wrote: On Tue, Dec 03, 2019 at 02:01:24AM -0500, Jason Merrill wrote: On 12/2/19 7:31 PM, Marek Polacek wrote: @@ -1967,8 +1978,23 @@ expand_default_init (tree binfo, tree true_exp, tree exp, tree init, int flags, tree ctor_name = (true_exp == exp

[amdgcn] Add missing vcondu patterns

2019-12-03 Thread Andrew Stubbs
I've just committed the attached. The gcn vcondu patterns had accidentally omitted the proper variants for floating point modes. I believe this is intentional for the comparison mode, but not for the data mode. This omission caused testcase gcc.dg/vect/pr65947-10.c to ICE. That testcase no

[Patch, Fortran] PR92754 - fix an issue with resolving intrinsic functions

2019-12-03 Thread Tobias Burnus
The problem here is that one gets two symbols - one inside the block and one outside and they do not really agree whether one has a function or a variable – which later gives an ICE. As sym->module was "(intrinsic)" and FL_VARIABLE, one was running into an assert. The problem is that when reso

Re: [PATCH 00/49] RFC: Add a static analysis framework to GCC

2019-12-03 Thread David Malcolm
On Wed, 2019-11-20 at 11:18 +0100, Richard Biener wrote: > On Tue, Nov 19, 2019 at 11:02 PM David Malcolm > wrote: > > > > The checker is implemented as a GCC plugin. > > > > > > > > The patch kit adds support for "in-tree" plugins i.e. GCC > > > > plugins > > > > that > > > > would live in the G

Re: [PATCH 00/49] RFC: Add a static analysis framework to GCC

2019-12-03 Thread Jakub Jelinek
On Tue, Dec 03, 2019 at 11:52:13AM -0500, David Malcolm wrote: > > > Our plugin "interface" as such is very broad. > > > > Just to sneak in here I don't like exposing our current plugin "non- > > API" > > more. In fact I'd just build the analyzer into GCC with maybe an > > option to disable its b

Re: [Patch] Add OpenACC 2.6's no_create

2019-12-03 Thread Tobias Burnus
On 12/3/19 4:16 PM, Thomas Schwinge wrote: On 2019-11-15T20:11:29+0100, Tobias Burnus wrote: * Make no_create.c effective by adding 'has_firstprivate = true;' to target.c.* (* If one tries to access c or e in the no_create-3.{c,f90} run-time test case, plugin-nvidia rightly complains (illegal m

Re: [C++ PATCH] c++/91353 - P1331R2: Allow trivial default init in constexpr contexts.

2019-12-03 Thread Marek Polacek
On Tue, Dec 03, 2019 at 02:07:02AM -0500, Jason Merrill wrote: > On 12/2/19 5:09 PM, Marek Polacek wrote: > > On Mon, Dec 02, 2019 at 12:09:17PM -0500, Jason Merrill wrote: > > > On 12/1/19 8:09 PM, Marek Polacek wrote: > > > > +|| (skip_empty > > > > +&& is_really_empty

Re: [PATCH v2 2/2][ARM] Improve max_cond_insns setting for Cortex cores

2019-12-03 Thread Kyrill Tkachov
On 12/3/19 1:45 PM, Wilco Dijkstra wrote: Hi, Part 2, split off from https://gcc.gnu.org/ml/gcc-patches/2019-11/msg00399.html To enable cores to use the correct max_cond_insns setting, use the core-specific tuning when a CPU/tune is selected unless -mrestrict-it is explicitly set. On Cor

Re: [PATCH], V7, #2 of 7, Use PLI to load up 32-bit SImode constants

2019-12-03 Thread Michael Meissner
On Mon, Nov 25, 2019 at 06:49:49PM -0600, Segher Boessenkool wrote: > On Mon, Nov 25, 2019 at 05:17:08PM -0500, Michael Meissner wrote: > > On Fri, Nov 22, 2019 at 06:20:52PM -0600, Segher Boessenkool wrote: > > > > (define_split > > > >[(set (match_operand:SI 0 "gpc_reg_operand") > > > >

Re: [PATCH, rs6000] Fix PR92760 by checking VECTOR_MEM_NONE_P instead

2019-12-03 Thread Segher Boessenkool
Hi! On Tue, Dec 03, 2019 at 05:38:41PM +0800, Kewen.Lin wrote: > PR92760 exposed one issue that VECTOR_UNIT_NONE_P (V2DImode) is true on Power7 > then we won't return it as preferred_simd_mode but ISA 2.06 (Power7) does > introduce partial support on vector doubleword (very limitted) and more bas

Re: [PATCH v2 2/2] testsuite: Fix run-time tracking down of `libgcc_s'

2019-12-03 Thread Maciej W. Rozycki
On Mon, 2 Dec 2019, Ian Lance Taylor wrote: > > gcc/testsuite/ > > * lib/gcc-defs.exp (gcc-set-multilib-library-path): Use > > `-print-file-name=' to determine the multilib root directory. > > Use `remote_exec host' rather than `exec' to invoke the > > compi

Re: Add a new combine pass

2019-12-03 Thread Segher Boessenkool
On Tue, Dec 03, 2019 at 10:33:48PM +0900, Oleg Endo wrote: > On Mon, 2019-11-25 at 16:47 -0600, Segher Boessenkool wrote: > > > > > > - sh (that's sh4-linux): > > > > > > > > /home/segher/src/kernel/net/ipv4/af_inet.c: In function > > > > 'snmp_get_cpu_field': > > > > /home/segher/src/kernel/net

Re: [PATCH], V7, #5 of 7, Add more effective targets for the 'future' system to target-supports.

2019-12-03 Thread Michael Meissner
On Fri, Nov 22, 2019 at 08:11:16PM -0600, Segher Boessenkool wrote: > On Thu, Nov 14, 2019 at 05:56:50PM -0500, Michael Meissner wrote: > > * lib/target-supports.exp > > (check_effective_target_powerpc_future_ok): Do not require 64-bit > > or Linux support before doing the test. Use a

Re: [PATCH], V7, #6 of 7, Fix issues with vector extract and prefixed instructions

2019-12-03 Thread Michael Meissner
On Tue, Nov 26, 2019 at 01:20:20PM -0600, Segher Boessenkool wrote: > Hi! > > On Thu, Nov 14, 2019 at 06:09:09PM -0500, Michael Meissner wrote: > > In this case, the current code re-uses the temporary for calculating the > > offset > > of the element to load up the address of the vector, losing t

Clear calls_comdat_local when comdat group is dissolved

2019-12-03 Thread Jan Hubicka
Hi, while looking into Firefox inlining dumps I noticed that we often do not inline because we think function calls comdat local while the comdat group itself has been dissolved. Bootstrapped/regtested x86_64-linux, comitted. * cgraph.c (cgraph_node::verify_node): Check that calls_comdat_

Re: [PING^2] Re: [PATCH 1/2] Add a pass to automatically add ptwrite instrumentation

2019-12-03 Thread Andi Kleen
Andi Kleen writes: Ping! > Andi Kleen writes: > > Ping! > >> From: Andi Kleen >> >> [v4: Rebased on current tree. Avoid some redundant log statements >> for locals and a few other fixes. Fix some comments. Improve >> documentation. Did some studies on the debug information quality, >> see bel

Re: [C++ PATCH] c++/91353 - P1331R2: Allow trivial default init in constexpr contexts.

2019-12-03 Thread Jason Merrill
On 12/3/19 12:49 PM, Marek Polacek wrote: On Tue, Dec 03, 2019 at 02:07:02AM -0500, Jason Merrill wrote: On 12/2/19 5:09 PM, Marek Polacek wrote: On Mon, Dec 02, 2019 at 12:09:17PM -0500, Jason Merrill wrote: On 12/1/19 8:09 PM, Marek Polacek wrote: +|| (skip_empty +

Re: [C++ PATCH] c++/91353 - P1331R2: Allow trivial default init in constexpr contexts.

2019-12-03 Thread Jason Merrill
On 12/3/19 1:40 PM, Jason Merrill wrote: On 12/3/19 12:49 PM, Marek Polacek wrote: On Tue, Dec 03, 2019 at 02:07:02AM -0500, Jason Merrill wrote: On 12/2/19 5:09 PM, Marek Polacek wrote: On Mon, Dec 02, 2019 at 12:09:17PM -0500, Jason Merrill wrote: On 12/1/19 8:09 PM, Marek Polacek wrote: +

Re: [C++ PATCH] Fix up constexpr TARGET_EXPR evaluation if there are cleanups (PR c++/91369)

2019-12-03 Thread Jason Merrill
On 12/3/19 3:42 AM, Jakub Jelinek wrote: Hi! The following testcase shows that during constexpr evaluation we didn't handle TARGET_EXPR_CLEANUP at all (which was probably fine when there weren't constexpr dtors). My understanding is that TARGET_EXPR cleanups should be queued and evaluated only

Re: [C++ Patch] A few more cp_expr_loc_or_input_loc and a diagnostic regression fix

2019-12-03 Thread Jason Merrill
On 12/2/19 5:22 PM, Paolo Carlini wrote: Hi, On 02/12/19 19:58, Jason Merrill wrote: On 11/29/19 8:08 AM, Paolo Carlini wrote: Hi, a few more rather straightforward uses for cp_expr_loc_or_input_loc. Additionally, while working on the latter, I noticed that, compared to say, gcc-7, lately t

Re: [PATCH], V7, #2 of 7, Use PLI to load up 32-bit SImode constants

2019-12-03 Thread Segher Boessenkool
On Tue, Dec 03, 2019 at 12:57:24PM -0500, Michael Meissner wrote: > No, the change for num_insns_constant_gpr could not go in until the support > for > PLI went in (patch V6 #1). Well, I lost track. So your version 7 to 9 patches do *not* replace the v6 patches? Or does "V" mean something else?

Re: [PATCH], V7, #5 of 7, Add more effective targets for the 'future' system to target-supports.

2019-12-03 Thread Segher Boessenkool
On Tue, Dec 03, 2019 at 01:11:55PM -0500, Michael Meissner wrote: > On Fri, Nov 22, 2019 at 08:11:16PM -0600, Segher Boessenkool wrote: > > On Thu, Nov 14, 2019 at 05:56:50PM -0500, Michael Meissner wrote: > > > * lib/target-supports.exp > > > (check_effective_target_powerpc_future_ok): Do not

Re: Ping: [C++ PATCH] Opt out of GNU vector extensions for built-in SVE types

2019-12-03 Thread Jason Merrill
On 12/3/19 7:39 AM, Richard Sandiford wrote: Jason Merrill writes: On 11/29/19 5:59 AM, Richard Sandiford wrote: Ping Richard Sandiford writes: This is the C++ equivalent of r277950, which prevented the use of the GNU vector extensions with SVE vector types for C. [https://gcc.gnu.org/viewc

Re: [PATCH], V7, #6 of 7, Fix issues with vector extract and prefixed instructions

2019-12-03 Thread Segher Boessenkool
On Tue, Dec 03, 2019 at 01:20:04PM -0500, Michael Meissner wrote: > On Tue, Nov 26, 2019 at 01:20:20PM -0600, Segher Boessenkool wrote: > > > I needed to add a new constraint (em) in addition to new predicate > > > functions. > > > I discovered that with the predicate function alone, the register

Re: [C++ PATCH] __builtin_source_location ()

2019-12-03 Thread Jason Merrill
On 11/15/19 7:28 AM, Jakub Jelinek wrote: + loc = LOCATION_LOCUS (loc); ... + entry.loc += linemap_resolve_location (line_table, loc, LRK_MACRO_EXPANSION_POINT, + &map); You don't need LOCATION_LOCUS if you're calling linemap_resolve_location. LGTM with t

Re: [C++ PATCH] __builtin_source_location ()

2019-12-03 Thread Jakub Jelinek
On Tue, Dec 03, 2019 at 03:37:41PM -0500, Jason Merrill wrote: > On 11/15/19 7:28 AM, Jakub Jelinek wrote: > > + loc = LOCATION_LOCUS (loc); > ... > > + entry.loc > > += linemap_resolve_location (line_table, loc, LRK_MACRO_EXPANSION_POINT, > > + &map); > > You don't

[PATCH] add -Wmismatched-tags (PR 61339)

2019-12-03 Thread Martin Sebor
On 8/5/19 4:30 PM, Jason Merrill wrote: On Mon, Aug 5, 2019 at 5:50 PM Martin Sebor wrote: On 8/5/19 1:25 PM, Jason Merrill wrote: On 8/1/19 7:35 PM, Martin Sebor wrote: On 8/1/19 12:09 PM, Jason Merrill wrote: On 7/22/19 12:34 PM, Martin Sebor wrote: Ping: https://gcc.gnu.org/ml/gcc-patch

[analyzer] Function pointer support

2019-12-03 Thread David Malcolm
gimple_call_fndecl (and gimple_call_addr_fndecl) fail to identify functions for non-trivial uses of function pointers. This patch eliminates most uses of these functions from the analyzer in favor of resolving the rvalue for the fn ptr in the region_model, so that with the patch it can e.g. detect

[PATCH] Freestanding proposal P0829

2019-12-03 Thread Paul M. Bendixen
Hello I've made an implementation of P0829 and tested it with gcc for avr. I've included the patch and I believe it might need some modification. Should I rather just maintain my own fork until P0829 is a bit further? (It is currently being split into smaller proposals). I have not included further

[PATCH] avoid invoking assignment on uninitialized objects (PR 92761, 92762)

2019-12-03 Thread Martin Sebor
After allocating a new chunk of memory hash_table::expand() copy- assigns elements from the current array over the newly allocated elements without constructing them. Similarly, after destroying existing elements, hash_table:: empty_slow() assigns a new value to them. This bug was introduced in

Re: introduce -fcallgraph-info option

2019-12-03 Thread Alexandre Oliva
On Nov 14, 2019, Alexandre Oliva wrote: > In order to address this, I propose we add an internal option (not for > the driver), -dumpbase-ext, that names the extension to be discarded > from dumpbase to form aux output names. Here's a WIP patch that implements much of the desired semantics. I'm

[PATCH] libstdc++: Fix Doxygen markup error

2019-12-03 Thread Jonathan Wakely
* include/bits/stl_pair.h (pair): Remove stray Doxygen closing marker. I added this stray marker a few months ago by mistake. Committed to trunk. commit ba39ad7d7e29e1459ad1d816dc84753ef7503f51 Author: Jonathan Wakely Date: Tue Dec 3 11:50:31 2019 + libstdc++: Fix Doxygen ma

[PATCH] libstdc++: Implement spaceship for std::pair (P1614R2)

2019-12-03 Thread Jonathan Wakely
This defines operator<=> as a non-member function template and does not alter operator==. This contradicts the changes made by P1614R2, which specify both as hidden friends, but that specification of operator<=> is broken and the subject of a soon-to-be-published LWG issue. * include/bits

[AMDGCN] Use fixed registers for queue ptr sgpr pair

2019-12-03 Thread Julian Brown
Hi, When running tests on a slightly-revised version of the worker-partitioning patch series previously posted starting here: https://gcc.gnu.org/ml/gcc-patches/2019-11/msg01475.html I discovered that Kwok's patch to optimise GCN register usage (r278301) was causing one of the new tests to fail:

[ PATCH ] [ C++ ] Implementing P0767 - deprecate POD

2019-12-03 Thread JeanHeyd Meneide
This patch implements deprecate POD for the C++ Standard Library, bringing libstdc++ that much closer to 2020 conformance 🎉! Hilariously, a small bug in the [[deprecated]] warning message was found while implementing this patch, which drove me a bit insane for a good 10 minutes until I realized wh

[PATCH] Enable mask operation for 128/256-bit vector VCOND_EXPR under avx512f (PR92686)

2019-12-03 Thread Hongtao Liu
Hi: Currently for VCOND_EXPR, integer mask operation is only available for 512-bit vector, but since mask register is related to isa not vector size, under avx512f we can also have 128/256-bit vector condition move. My local tests show there's no boost frequency penalty for using integer mask reg