Re: [PATCH,RFC 0/3] Support for CTF in GCC

2019-05-29 Thread Richard Biener
On Mon, May 27, 2019 at 8:12 PM Indu Bhagat wrote: > > Hi Michael, > > On 05/24/2019 06:04 AM, Michael Matz wrote: > > Hello, > > > > On Thu, 23 May 2019, Indu Bhagat wrote: > > > >>> OK. So I wonder how difficult it is to emit CTF by walking dwarf2outs own > >>> data structures? That is, in my

Re: Simplify more EXACT_DIV_EXPR comparisons

2019-05-29 Thread Richard Biener
On Tue, May 28, 2019 at 5:34 PM Martin Sebor wrote: > > On 5/21/19 3:53 AM, Richard Biener wrote: > > On Tue, May 21, 2019 at 4:13 AM Martin Sebor wrote: > >> > >> On 5/20/19 3:16 AM, Richard Biener wrote: > >>> On Mon, May 20, 2019 at 10:16 AM Marc Glisse wrote: > > On Mon, 20 May 201

Patch ping (was Re: [PATCH] Assorted optc-save-gen.awk fixes (PR bootstrap/90543))

2019-05-29 Thread Jakub Jelinek
On Wed, May 22, 2019 at 01:41:56PM +0200, Jakub Jelinek wrote: > 2019-05-22 Jakub Jelinek > > PR bootstrap/90543 > * optc-save-gen.awk: In cl_optimization_print, use correct condition > for var_opt_string printing. In cl_optimization_print_diff, print > (null) instead o

[committed] Add support for lastprivate conditional on combined parallel {for,sections} constructs

2019-05-29 Thread Jakub Jelinek
Hi! All that is needed is move the lastprivate(conditional:) clauses to the worksharing construct, firstprivate too if the same decl has them, and add a shared clause on the parallel if needed. Bootstrapped/regtested on x86_64-linux and i686-linux, committed to trunk. 2019-05-29 Jakub Jelinek

[PATCH] Further C lapack workaround tweaks

2019-05-29 Thread Jakub Jelinek
Hi! As I said earlier in the PR, I don't like -fbroken-callers option much, as the option name doesn't hint what it is doing at all. The following patch renames the option and makes it into a 3 state option, with the default being a middle-ground, where it avoids the tail calls in functions that

Re: [PATCH 3/3][GCC][AARCH64] Add support for pointer authentication B key

2019-05-29 Thread Sam Tebbs
The libgcc changes have been acknowledged off-list. Committed as r271735. On 01/03/2019 14:12, Sam Tebbs wrote: > On 31/01/2019 14:54, Sam Tebbs wrote: >> >>> ping 3. The preceding two patches were committed a while ago but require >>> the minor libgcc changes in this patch, which are the only pa

Re: Patch ping (was Re: [PATCH] Assorted optc-save-gen.awk fixes (PR bootstrap/90543))

2019-05-29 Thread Richard Biener
On Wed, 29 May 2019, Jakub Jelinek wrote: > On Wed, May 22, 2019 at 01:41:56PM +0200, Jakub Jelinek wrote: > > 2019-05-22 Jakub Jelinek > > > > PR bootstrap/90543 > > * optc-save-gen.awk: In cl_optimization_print, use correct condition > > for var_opt_string printing. In cl_optimi

[PATCH] gdbinit: add a new command and fix one

2019-05-29 Thread Martin Liška
Hi. The patch is about a small change in .gdbinit file. Ready for trunk? Martin gcc/ChangeLog: 2019-05-29 Martin Liska * gdbinit.in: Fix 'ptc' command. Add tt that prints TREE_TYPE($). --- gcc/gdbinit.in | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) dif

Re: Implement vector average patterns for SVE2

2019-05-29 Thread Richard Sandiford
Alejandro Martinez Vicente writes: > Hi, > > This patch implements the [u]avgM3_floor and [u]avgM3_ceil optabs for SVE2. > > Alejandro > > gcc/ChangeLog: > > 2019-05-28 Alejandro Martinez > > * config/aarch64/aarch64-sve2.md: New file. > (avg3_floor): New pattern. > (avg3_ceil

Re: [PATCH v2] aarch64: emit .variant_pcs for aarch64_vector_pcs symbol references

2019-05-29 Thread Richard Sandiford
Szabolcs Nagy writes: > v2: > - use aarch64_simd_decl_p to check for aarch64_vector_pcs. > - emit the .variant_pcs directive even for local functions. > - don't require .variant_pcs asm support in compile only tests. > - add weakref tests. > > A dynamic linker with lazy binding support may need to

Re: [PATCHv2] debug: make -feliminate-unused-debug-symbols the default [PR debug/86964]

2019-05-29 Thread Thomas De Schampheleire
Hi Richard, El mar., 21 may. 2019 a las 16:57, Thomas De Schampheleire () escribió: > > From: Thomas De Schampheleire > > In addition to making -feliminate-unused-debug-symbols work for the DWARF > format (see [1]), make this option the default. This behavior was the case > before, e.g. under gcc

Re: [PATCH] Implement LWG 2686, hash

2019-05-29 Thread Szabolcs Nagy
On 09/05/2019 16:16, Jonathan Wakely wrote: > On Thu, 9 May 2019 at 15:43, Szabolcs Nagy wrote: >> On 07/05/2019 13:21, Christophe Lyon wrote: >>> On Tue, 7 May 2019 at 12:07, Jonathan Wakely wrote: On 07/05/19 10:37 +0100, Jonathan Wakely wrote: > On 07/05/19 11:05 +0200, Christophe Lyo

Re: [PATCH V2] Remove empty loop with assumed finiteness (PR tree-optimization/89713)

2019-05-29 Thread Richard Biener
On Fri, May 24, 2019 at 11:15 AM Feng Xue OS wrote: > > This version is based on the proposal of Richard. And fix a bug on OpenACC > loop when this opt is turned on. > Also add some test cases Comments below. > Feng > - > > diff --git a/gcc/ChangeLog b/gcc/ChangeLog > index 9f0f889..d1c1e3a

[patch, fortran] Fix wrong-code regression with netcdf and SPEC due to argument repacking

2019-05-29 Thread Thomas Koenig
Hello world, the attached patch fixes the wrong-code regression due to the inline argument repacking patch, r271377. What had gone wrong? gfortran used to pack and unpack arrays unconditionally passed to old-style assumed size or . For code like module t2 implicit none contains subroutin

Re: [PATCH 3/3][GCC][AARCH64] Add support for pointer authentication B key

2019-05-29 Thread Christophe Lyon
On Wed, 29 May 2019 at 11:23, Sam Tebbs wrote: > > The libgcc changes have been acknowledged off-list. Committed as r271735. > After this commit, I'm seeing errors while building libstdc++: 0x11c29f3 aarch64_return_address_signing_enabled() /tmp/8467855_6.tmpdir/aci-gcc-fsf/sources/gcc-f

Re: [PATCH] Fix few build warnings with LLVM toolchain

2019-05-29 Thread David CARLIER
Here a little progress but maybe it s better doing this in small "batches" rather than fixing everything in one shot ? Kind regards. Fixing few build warnings with clang/clang++ of this type: ../.././gcc/coretypes.h:76:1: warning: class 'rtx_def' was previously declared as a struct; this is valid,

Re: [PATCH] Fix few build warnings with LLVM toolchain

2019-05-29 Thread Jakub Jelinek
On Wed, May 29, 2019 at 12:53:44PM +0100, David CARLIER wrote: > Here a little progress but maybe it s better doing this in small > "batches" rather than fixing everything in one shot ? IMHO if we want to do anything about this, we should just in system.h add #ifdef __clang__ #pragma clang diagnos

undefined behavior in value_range::equiv_add()?

2019-05-29 Thread Aldy Hernandez
As per the API, and the original documentation to value_range, VR_UNDEFINED and VR_VARYING should never have equivalences. However, equiv_add is tacking on equivalences blindly, and there are various regressions that happen if I fix this oversight. void value_range::equiv_add (const_tree var,

Re: Teach same_types_for_tbaa to structurally compare arrays, pointers and vectors

2019-05-29 Thread Richard Biener
On Mon, 27 May 2019, Jan Hubicka wrote: > > The way you do it above seeing struct X p will end up comparing > > 'struct X' but that doesn't really have any say on whether we > > can apply TBAA to the outermost pointer type which, if used as a base, > > cannot be subsetted by components anyway.

Re: Teach same_types_for_tbaa to structurally compare arrays, pointers and vectors

2019-05-29 Thread Richard Biener
On Mon, 27 May 2019, Jan Hubicka wrote: > Hi, > this is minimal version of patch adding just the pointer compare. > Bootstrapped/regtested x86_64-linux, makes sense? :) Yes, obviously. Richard.

Re: Teach same_types_for_tbaa to structurally compare arrays, pointers and vectors

2019-05-29 Thread Jan Hubicka
> On Mon, 27 May 2019, Jan Hubicka wrote: > > > Hi, > > this is minimal version of patch adding just the pointer compare. > > Bootstrapped/regtested x86_64-linux, makes sense? :) > > Yes, obviously. Thanks, i will go ahead with installing it. Note that I have also tested removal of: /* ??? Ar

Re: [PATCH V2] A jump threading opportunity for condition branch

2019-05-29 Thread Richard Biener
On Tue, 28 May 2019, Jiufu Guo wrote: > Hi, > > This patch implements a new opportunity of jump threading for PR77820. > In this optimization, conditional jumps are merged with unconditional > jump. And then moving CMP result to GPR is eliminated. > > This version is based on the proposal of Ric

Re: [PATCH] rs6000: Call flow implementation for PC-relative addressing

2019-05-29 Thread Segher Boessenkool
Hi Bill, On Thu, May 23, 2019 at 09:11:44PM -0500, Bill Schmidt wrote: > (1) When a function uses PC-relative code generation, all direct calls (other > than > sibcalls) that the function makes to local or external callees should appear > as > "bl sym@notoc" and should not be followed by a nop

Re: [AArch64] [SVE] PR88837 - Poor vector construction code in VL-specific mode

2019-05-29 Thread Richard Sandiford
Prathamesh Kulkarni writes: > Hi, > The attached patch tries to improve initialization for fixed-length > SVE vector and it's algorithm is described in comments for > aarch64_sve_expand_vector_init() in the patch, with help from Richard > Sandiford. I verified tests added in the patch pass with qe

[PATCH] rs6000: Add undocumented switch -mprefixed-addr

2019-05-29 Thread Bill Schmidt
Hi, This patch adds the undocumented switch -mprefixed-addr and a little of the basic infrastructure around it. It also includes a couple of lines in the same code regions to disable P8 fusion for -mcpu=future. Bootstrapped and tested on powerpc64le-unknown-linux-gnu with no regressions. Is thi

Re: Teach same_types_for_tbaa to structurally compare arrays, pointers and vectors

2019-05-29 Thread Richard Biener
On Wed, 29 May 2019, Jan Hubicka wrote: > > On Mon, 27 May 2019, Jan Hubicka wrote: > > > > > Hi, > > > this is minimal version of patch adding just the pointer compare. > > > Bootstrapped/regtested x86_64-linux, makes sense? :) > > > > Yes, obviously. > > Thanks, i will go ahead with installin

Re: [Contrib PATCH] Add scripts to convert GCC repo from SVN to Git

2019-05-29 Thread Segher Boessenkool
On Wed, May 29, 2019 at 12:53:30AM +, Joseph Myers wrote: > On Fri, 24 May 2019, Segher Boessenkool wrote: > > > IMO the best we can do is use what we already have: what CVS or SVN used > > as the committer identity. *That* info is *correct* at least. > > CVS and SVN have a local identity.

Re: Patch: don't cap TYPE_PRECISION of bitsizetype at MAX_FIXED_MODE_SIZE

2019-05-29 Thread Richard Biener
On Tue, May 28, 2019 at 5:43 PM Hans-Peter Nilsson wrote: > > TL;DR: instead of capping TYPE_PRECISION of bitsizetype at > MAX_FIXED_MODE_SIZE, search for the largest fitting size from > scalar_int_mode modes supported by the target using > targetm.scalar_mode_supported_p. > > - > In initi

Re: [PATCH] rs6000: Add undocumented switch -mprefixed-addr

2019-05-29 Thread Segher Boessenkool
Hi! On Wed, May 29, 2019 at 07:42:38AM -0500, Bill Schmidt wrote: > * rs6000-cpus.def (OTHER_FUSION_MASKS): New #define. > (ISA_FUTURE_MASKS_SERVER): Add OPTION_MASK_PREFIXED_ADDR. Mask off > OTHER_FUSION_MASKS. Two spaces after a full stop (here and later again). > +/* ISA mas

Re: Teach same_types_for_tbaa to structurally compare arrays, pointers and vectors

2019-05-29 Thread Jan Hubicka
> > Please also see if there are testcases that do anything meaningful > and FAIL after instead of > > /* Do access-path based disambiguation. */ > if (ref1 && ref2 > && (handled_component_p (ref1) || handled_component_p (ref2))) > > doing > > /* Do access-path based disambiguation

Re: undefined behavior in value_range::equiv_add()?

2019-05-29 Thread Richard Biener
On Wed, May 29, 2019 at 2:18 PM Aldy Hernandez wrote: > > As per the API, and the original documentation to value_range, > VR_UNDEFINED and VR_VARYING should never have equivalences. However, > equiv_add is tacking on equivalences blindly, and there are various > regressions that happen if I fix

Re: Teach same_types_for_tbaa to structurally compare arrays, pointers and vectors

2019-05-29 Thread Richard Biener
On Wed, May 29, 2019 at 3:21 PM Jan Hubicka wrote: > > > > > Please also see if there are testcases that do anything meaningful > > and FAIL after instead of > > > > /* Do access-path based disambiguation. */ > > if (ref1 && ref2 > > && (handled_component_p (ref1) || handled_component_p

Re: Teach same_types_for_tbaa to structurally compare arrays, pointers and vectors

2019-05-29 Thread Jan Hubicka
> > /* ??? Array types are not properly unified in all cases as we have > > spurious changes in the index types for example. Removing this > > causes all sorts of problems with the Fortran frontend. */ > > if (TREE_CODE (type1) == ARRAY_TYPE > > && TREE_CODE (type2) == ARRAY_T

Re: Fwd: [PATCH] Fix few build warnings with LLVM toolchain

2019-05-29 Thread Segher Boessenkool
On Tue, May 28, 2019 at 10:28:07AM +, David CARLIER wrote: > -- Forwarded message - > From: David CARLIER > Date: Tue, 28 May 2019 at 10:16 > Subject: Re: [PATCH] Fix few build warnings with LLVM toolchain > To: Segher Boessenkool > > > All right, here an updated version, ho

[PATCH][RFC] final-value replacement from DCE

2019-05-29 Thread Richard Biener
The following tries to address PR90648 by performing final value replacement from DCE when DCE knows the final value computation is not used during loop iteration. This fits neatly enough into existing tricks performed by DCE like removing unused malloc/free pairs. There's a few complications,

RFA: Synchronize top level files with binutils

2019-05-29 Thread Nick Clifton
Hi Guys, I would like to bring over a few additions that have recently been made to the binutils versions of the Makefile.def and configure.ac files. Any objections ? Note - I did run a toolchain bootstrap after applying this patch locally and that went OK... Cheers Nick ./ChangeLo

RE: Implement vector average patterns for SVE2

2019-05-29 Thread Alejandro Martinez Vicente
Turns out I was missing a few bits and pieces. Here is the updated patch and changelog. Alejandro 2019-05-29 Alejandro Martinez * config/aarch64/aarch64-c.c: Added TARGET_SVE2. * config/aarch64/aarch64-sve2.md: New file. (avg3_floor): New pattern. (avg3_ceil)

Re: RFA: Synchronize top level files with binutils

2019-05-29 Thread Richard Biener
On Wed, May 29, 2019 at 3:40 PM Nick Clifton wrote: > > Hi Guys, > > I would like to bring over a few additions that have recently been > made to the binutils versions of the Makefile.def and configure.ac > files. Any objections ? > > Note - I did run a toolchain bootstrap after applying

Re: [PATCH][AArch64] PR tree-optimization/90332: Implement vec_init where N is a vector mode

2019-05-29 Thread Kyrill Tkachov
Ping. https://gcc.gnu.org/ml/gcc-patches/2019-05/msg00477.html Thanks, Kyrill On 5/10/19 10:32 AM, Kyrill Tkachov wrote: Hi all, This patch fixes the failing gcc.dg/vect/slp-reduc-sad-2.c testcase on aarch64 by implementing a vec_init optab that can handle two half-width vectors producing

Re: Implement vector average patterns for SVE2

2019-05-29 Thread Richard Sandiford
Alejandro Martinez Vicente writes: > Turns out I was missing a few bits and pieces. Here is the updated patch and > changelog. > > Alejandro > > > 2019-05-29 Alejandro Martinez > > * config/aarch64/aarch64-c.c: Added TARGET_SVE2. > * config/aarch64/aarch64-sve2.md: New file. >

Re: [PATCH] Further C lapack workaround tweaks

2019-05-29 Thread Thomas Koenig
Hi Jakub, As I said earlier in the PR, I don't like -fbroken-callers option much, as the option name doesn't hint what it is doing at all. The following patch renames the option and makes it into a 3 state option, with the default being a middle-ground, where it avoids the tail calls in functio

Re: Teach same_types_for_tbaa to structurally compare arrays, pointers and vectors

2019-05-29 Thread Jan Hubicka
> > but we do not optimize it. I.e. optimized dump has: > > > > test () > > { > > struct bar * barptr.0_1; > > struct foo * fooptr.1_2; > > int _6; > > > >[local count: 1073741824]: > > barptr.0_1 = barptr; > > barptr.0_1->val2 = 1; > > fooptr.1_2 = fooptr; > > MEM[(struct foo *)f

[libgomp, testsuite] Generalize getconf _NPROCESSORS_ONLN

2019-05-29 Thread Rainer Orth
Prompted by extremely long libgomp make check times due to missing parallelism, I noticed that the current support to restrict testcase parallelism only works on targets which have getconf _NPROCESSORS_ONLN. Instead of adding special cases for all sorts of tools to determine the number of cores, I

Re: [PATCH 3/3][GCC][AARCH64] Add support for pointer authentication B key

2019-05-29 Thread Sam Tebbs
Thanks for finding this Christoph, I had this failure a while ago but it stopped happening so I thought all was good. I have a fix ready. Sam On 29/05/2019 12:22, Christophe Lyon wrote: > On Wed, 29 May 2019 at 11:23, Sam Tebbs wrote: >> The libgcc changes have been acknowledged off-list. Commi

Re: [libgomp, testsuite] Generalize getconf _NPROCESSORS_ONLN

2019-05-29 Thread Jakub Jelinek
On Wed, May 29, 2019 at 04:13:41PM +0200, Rainer Orth wrote: > Prompted by extremely long libgomp make check times due to missing > parallelism, I noticed that the current support to restrict testcase > parallelism only works on targets which have getconf _NPROCESSORS_ONLN. > Instead of adding spec

Re: [OpenACC] Update OpenACC data clause semantics to the 2.5 behavior - runtime

2019-05-29 Thread Thomas Schwinge
Hi Jakub! Any comments on my questions, please? On Thu, 02 May 2019 16:03:09 +0200, I wrote: > I'm currently working on other pending OpenACC 'deviceptr' clause patches > from our backlog, and I noticed the following, which I don't understand. > You reviewed and approved this patch, could you ple

Re: [libgomp, testsuite] Generalize getconf _NPROCESSORS_ONLN

2019-05-29 Thread Rainer Orth
Hi Jakub, > On Wed, May 29, 2019 at 04:13:41PM +0200, Rainer Orth wrote: >> Prompted by extremely long libgomp make check times due to missing >> parallelism, I noticed that the current support to restrict testcase >> parallelism only works on targets which have getconf _NPROCESSORS_ONLN. >> Inste

Re: PR90030 "Fortran OpenACC subarray data alignment" (was: [PATCH] Fortran OpenMP 4.0 target support)

2019-05-29 Thread Thomas Schwinge
Hi Jakub! Any comments on this, please? On Wed, 10 Apr 2019 15:00:06 +0200, I wrote: > In context of PR90030 "Fortran OpenACC subarray data alignment" (which > actually is reproducible for OpenMP with nvptx offloading in the very > same way, see below), can you please explain the reason for the s

Re: Negative arguments in OpenMP 'num_threads' clause etc.

2019-05-29 Thread Thomas Schwinge
Hi Jakub! Any comments on my question, please? On Tue, 09 Apr 2019 17:51:46 +0200, I wrote: > On Tue, 29 Nov 2016 17:47:08 -0800, Cesar Philippidis > wrote: > > One notable difference between the trunk and gomp4 implementation of the > > tile clause is that gomp4 errors on negative value tile a

[PATCH] PR libstdc++/85494 use rdseed and rand_s in std::random_device

2019-05-29 Thread Jonathan Wakely
Add support for additional sources of randomness to std::random_device, to allow using RDSEED for Intel CPUs and rand_s for Windows. When supported these can be selected using the tokens "rdseed" and "rand_s". For *-w64-mingw32 targets the "default" token will now use rand_s, and for other i?86-*-

[PATCH] Avoid -Wunused-parameter warnings from testsuite utility

2019-05-29 Thread Jonathan Wakely
* testsuite/util/testsuite_api.h: Remove names of unused parameters. Tested x86_64-linux, committed to trunk. commit 0ea1c74e5df4214d4ab03ef264f53e4ef4aa1d87 Author: Jonathan Wakely Date: Wed May 29 15:19:14 2019 +0100 Avoid -Wunused-parameter warnings from testsuite utility

Re: [libgomp, testsuite] Generalize getconf _NPROCESSORS_ONLN

2019-05-29 Thread Jakub Jelinek
On Wed, May 29, 2019 at 04:32:41PM +0200, Rainer Orth wrote: > > I'd prefer not to determine the CPU count at configure time, the build > > directory can be on some network filesystem and tested sometimes on one > > machine, sometimes on another one, hw can be upgraded etc. > > somewhat agreed for

[ARM][PATCH 1/2] Support HFmode for standard names implemented with VRINT instructions.

2019-05-29 Thread Srinath Parvathaneni
Hello, The initial implementation of the FP16 extension added HFmode support to a limited number of the standard names. Following https://gcc.gnu.org/ml/gcc-patches/2016-08/msg00168.html , this patch extends the HFmode support to the names implemented by the ARM and l expanders: btrunc, ceil, ro

[ARM][PATCH 2/2] Remove redundant constructs added for FP16 support.

2019-05-29 Thread Srinath Parvathaneni
Hello, The patch reworks some of the VRND and VCVT code added for the FP16 extension support to remove the redundant UNSPECS and related constructs. Tested for arm-none-linux-gnueabihf with native bootstrap and make check and for arm-none-eabi with cross-compiled check-gcc on an ARMv8.4-A emulato

[PATCH][GCC][ARM] Add support for hint intrinsics: __yield, __wfe, __wfi, __sev and __sevl.

2019-05-29 Thread Srinath Parvathaneni
Hi All, This patch implements the __yield(), __wfe(), __wfi(), __sev() and __sevl() ACLE (hint) intrinsics for all ARM targets. The intrinsics specification are published on the Arm website [1]. [1] https://developer.arm.com/docs/ihi0053/latest/arm-c-language-extensions-21-architecture-specifi

Re: libgomp/target.c magic constants self-documentation

2019-05-29 Thread Thomas Schwinge
Hi Jakub! Ping. On Fri, 21 Dec 2018 11:41:07 +0100, I wrote: > On Sat, 10 Nov 2018 09:11:18 -0800, Julian Brown > wrote: > > This patch [...] replaces usage > > of several magic constants in target.c with named macros > > > --- a/libgomp/libgomp.h > > +++ b/libgomp/libgomp.h > > @@ -902,6 +902

[PATCH][GCC][AArch64] Add support for hint intrinsics: __yield, __wfe, __wfi, __sev and __sevl.

2019-05-29 Thread Srinath Parvathaneni
Hi All, This patch implements the __yield(), __wfe(), __wfi(), __sev() and __sevl() ACLE (hint) intrinsics for AArch64 as yield, wfe, wfi, sev and sevl (hint) instructions respectively. The instructions are documented in the ArmARM[1] and the intrinsics specification are published on the Arm w

Re: [libgomp, testsuite] Generalize getconf _NPROCESSORS_ONLN

2019-05-29 Thread Rainer Orth
Hi Jakub, >> > So, something similar to what your patch does, but don't substitute the >> > actual >> > CPU count, but a command to determine the number of CPUs? >> >> I'm not convinced that would work reliably: you can easily have one set >> of commands on one machine, but a slightly different o

Re: Negative arguments in OpenMP 'num_threads' clause etc.

2019-05-29 Thread Jakub Jelinek
On Wed, May 29, 2019 at 04:42:14PM +0200, Thomas Schwinge wrote: > Any comments on my question, please? > > On Tue, 09 Apr 2019 17:51:46 +0200, I wrote: > > On Tue, 29 Nov 2016 17:47:08 -0800, Cesar Philippidis > > wrote: > > > One notable difference between the trunk and gomp4 implementation of

Re: [PATCH] rs6000: Call flow implementation for PC-relative addressing

2019-05-29 Thread Alan Modra
On Wed, May 29, 2019 at 07:40:46AM -0500, Segher Boessenkool wrote: > All necessary linker (and binutils and GAS) support is upstream already, > right? I believe so, except gold support is lacking right now. > >pld 12,0(0),1 > >.reloc .-8,R_PPC64_PLT_PCREL34_NOTOC,foo > > Are we

Re: [PATCH] rs6000: Call flow implementation for PC-relative addressing

2019-05-29 Thread Bill Schmidt
On 5/29/19 7:40 AM, Segher Boessenkool wrote: > Hi Bill, > > On Thu, May 23, 2019 at 09:11:44PM -0500, Bill Schmidt wrote: >> (1) When a function uses PC-relative code generation, all direct calls >> (other than >> sibcalls) that the function makes to local or external callees should appear >> a

Re: [PATCH][RFC] final-value replacement from DCE

2019-05-29 Thread Jeff Law
On 5/29/19 7:36 AM, Richard Biener wrote: > > The following tries to address PR90648 by performing final > value replacement from DCE when DCE knows the final value > computation is not used during loop iteration. This fits > neatly enough into existing tricks performed by DCE like > removing unu

Re: undefined behavior in value_range::equiv_add()?

2019-05-29 Thread Aldy Hernandez
On 5/29/19 9:24 AM, Richard Biener wrote: On Wed, May 29, 2019 at 2:18 PM Aldy Hernandez wrote: As per the API, and the original documentation to value_range, VR_UNDEFINED and VR_VARYING should never have equivalences. However, equiv_add is tacking on equivalences blindly, and there are vario

Re: [PATCH][RFC] final-value replacement from DCE

2019-05-29 Thread Jakub Jelinek
On Wed, May 29, 2019 at 09:57:50AM -0600, Jeff Law wrote: > > FAIL: gcc.dg/builtin-object-size-1.c execution test > > FAIL: gcc.dg/builtin-object-size-5.c scan-assembler-not abort I admit I haven't looked at the details here, but wonder if the optimization couldn't be done only in the DCE passes p

New Finnish PO file for 'gcc' (version 9.1.0)

2019-05-29 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 Finnish team of translators. The file is available at: https://translationproject.org/latest/gcc/fi.po (This file, 'gcc-9.1.0.fi.po', has jus

Re: undefined behavior in value_range::equiv_add()?

2019-05-29 Thread Jeff Law
On 5/29/19 7:24 AM, Richard Biener wrote: > On Wed, May 29, 2019 at 2:18 PM Aldy Hernandez wrote: >> >> As per the API, and the original documentation to value_range, >> VR_UNDEFINED and VR_VARYING should never have equivalences. However, >> equiv_add is tacking on equivalences blindly, and there

Re: [PATCH] Further C lapack workaround tweaks

2019-05-29 Thread Jakub Jelinek
On Wed, May 29, 2019 at 04:02:55PM +0200, Thomas Koenig wrote: > > As I said earlier in the PR, I don't like -fbroken-callers option much, > > as the option name doesn't hint what it is doing at all. > > > > The following patch renames the option and makes it into a 3 state option, > > with the de

Re: undefined behavior in value_range::equiv_add()?

2019-05-29 Thread Jeff Law
On 5/29/19 9:58 AM, Aldy Hernandez wrote: > On 5/29/19 9:24 AM, Richard Biener wrote: >> On Wed, May 29, 2019 at 2:18 PM Aldy Hernandez wrote: >>> >>> As per the API, and the original documentation to value_range, >>> VR_UNDEFINED and VR_VARYING should never have equivalences.  However, >>> equiv_

Re: [PATCH] gdbinit: add a new command and fix one

2019-05-29 Thread Jeff Law
On 5/29/19 3:46 AM, Martin Liška wrote: > Hi. > > The patch is about a small change in .gdbinit file. > > Ready for trunk? > Martin > > gcc/ChangeLog: > > 2019-05-29 Martin Liska > > * gdbinit.in: Fix 'ptc' command. Add tt > that prints TREE_TYPE($). > --- > gcc/gdbinit.in | 1

Re: undefined behavior in value_range::equiv_add()?

2019-05-29 Thread Aldy Hernandez
On 5/29/19 12:12 PM, Jeff Law wrote: On 5/29/19 9:58 AM, Aldy Hernandez wrote: On 5/29/19 9:24 AM, Richard Biener wrote: On Wed, May 29, 2019 at 2:18 PM Aldy Hernandez wrote: As per the API, and the original documentation to value_range, VR_UNDEFINED and VR_VARYING should never have equivale

Re: [C++ Patch] PR 89875 ("[7/8/9/10 Regression] invalid typeof reference to a member of an incomplete struct accepted at function scope")

2019-05-29 Thread Jason Merrill
On 5/28/19 4:44 PM, Paolo Carlini wrote: Hi, On 28/05/19 16:47, Jason Merrill wrote: On 5/10/19 10:29 AM, Paolo Carlini wrote: Hi, a while ago Martin noticed that an unintended consequence of an old tweak of mine - which avoided redundant error messages emitted from cp_parser_init_declarato

Re: [PATCH] rs6000: Call flow implementation for PC-relative addressing

2019-05-29 Thread Segher Boessenkool
On Thu, May 30, 2019 at 12:44:35AM +0930, Alan Modra wrote: > On Wed, May 29, 2019 at 07:40:46AM -0500, Segher Boessenkool wrote: > > All necessary linker (and binutils and GAS) support is upstream already, > > right? > > I believe so, except gold support is lacking right now. Excellent :-) > >

Re: Simplify more EXACT_DIV_EXPR comparisons

2019-05-29 Thread Jeff Law
On 5/29/19 1:21 AM, Richard Biener wrote: > On Tue, May 28, 2019 at 5:34 PM Martin Sebor wrote: >> >> On 5/21/19 3:53 AM, Richard Biener wrote: >>> On Tue, May 21, 2019 at 4:13 AM Martin Sebor wrote: On 5/20/19 3:16 AM, Richard Biener wrote: > On Mon, May 20, 2019 at 10:16 AM Marc G

Re: [C++ PATCH] Fix decltype on a trivial dtor with -flifetime-dse (PR c++/90598)

2019-05-29 Thread Jason Merrill
On 5/24/19 4:21 AM, Jakub Jelinek wrote: The second patch fixes that by special casing void type MODIFY_EXPR, I believe if we have void type MODIFY_EXPR, then it can't be an lvalue. Any expression with void type is a prvalue, so let's not limit this to MODIFY_EXPR. Jason

Re: [C++ Patch] A few more grokdeclarator locations fixes

2019-05-29 Thread Jason Merrill
On 5/23/19 3:23 PM, Paolo Carlini wrote: Hi, one more, rather straightforward, simply use the location stored in the declarator. Tested x86_64-linux. OK. Jason

Re: [gomp] Add langhook, so that Fortran can privatize variables by reference

2019-05-29 Thread Thomas Schwinge
Hi Jakub! On Mon, 27 May 2019 18:49:20 +0200, Jakub Jelinek wrote: > On Sun, May 26, 2019 at 07:43:04PM +0200, Thomas Schwinge wrote: > > On Tue, 18 Oct 2005 03:01:40 -0400, Jakub Jelinek wrote: > > > --- gcc/omp-low.c.jj 2005-10-15 12:00:06.0 +0200 > > > +++ gcc/omp-low.c 2005-10-1

[C++ PATCH] Fix decltype on a trivial dtor with -flifetime-dse (PR c++/90598, take 2)

2019-05-29 Thread Jakub Jelinek
On Wed, May 29, 2019 at 12:31:52PM -0400, Jason Merrill wrote: > On 5/24/19 4:21 AM, Jakub Jelinek wrote: > > The second patch fixes that by special casing void type MODIFY_EXPR, I > > believe if we have void type MODIFY_EXPR, then it can't be an lvalue. > > Any expression with void type is a prva

Re: [PATCH] warn on returning alloca and VLA (PR 71924, 90549)

2019-05-29 Thread Jeff Law
On 5/22/19 3:34 PM, Martin Sebor wrote: > -Wreturn-local-addr detects a subset of instances of returning > the address of a local object from a function but the warning > doesn't try to handle alloca or VLAs, or some non-trivial cases > of ordinary automatic variables[1]. > > The attached patch ex

Re: libbacktrace integration for _GLIBCXX_DEBUG mode

2019-05-29 Thread François Dumont
On 5/29/19 12:06 AM, Jonathan Wakely wrote: On 23/05/19 07:39 +0200, François Dumont wrote: Hi     So here what I come up with.     _GLIBCXX_DEBUG_BACKTRACE controls the feature. If the user define Thanks for making this opt-in. it and there is a detectable issue with libbacktrace then I g

[PATCH] rs6000: Add eI constraint for 34-bit constants

2019-05-29 Thread Bill Schmidt
Hi, This short patch introduces the eI constraint. It also adds the SIGNED_16BIT_OFFSET_P convenience macro that will be used in subsequent patches. Bootstrapped and tested on powerpc64le-unknown-linux-gnu with no regressions. Is this okay for trunk? Thanks, Bill 2019-05-29 Bill Schmidt

Re: [C++ PATCH] Fix decltype on a trivial dtor with -flifetime-dse (PR c++/90598, take 2)

2019-05-29 Thread Jason Merrill
On 5/29/19 1:12 PM, Jakub Jelinek wrote: On Wed, May 29, 2019 at 12:31:52PM -0400, Jason Merrill wrote: On 5/24/19 4:21 AM, Jakub Jelinek wrote: The second patch fixes that by special casing void type MODIFY_EXPR, I believe if we have void type MODIFY_EXPR, then it can't be an lvalue. Any exp

Re: [PATCH] gdbinit: add a new command and fix one

2019-05-29 Thread Segher Boessenkool
On Wed, May 29, 2019 at 10:14:58AM -0600, Jeff Law wrote: > On 5/29/19 3:46 AM, Martin Liška wrote: > > Hi. > > > > The patch is about a small change in .gdbinit file. > > > > Ready for trunk? > > Martin > > > > gcc/ChangeLog: > > > > 2019-05-29 Martin Liska > > > > * gdbinit.in: Fix 'p

Re: [PATCH] RX: Add rx-*-linux target

2019-05-29 Thread Jeff Law
On 5/23/19 6:05 AM, Yoshinori Sato wrote: > I ported linux kernel to Renesas RX. > > rx-*-elf target output a binary different from the standard ELF. > It has the same format as the Renesas compiler. > > But the linux kernel requires the standard ELF format. > I want to define a rx-*-linux target

Re: [patch, fortran] Fix wrong-code regression with netcdf and SPEC due to argument repacking

2019-05-29 Thread Steve Kargl
On Wed, May 29, 2019 at 01:15:52PM +0200, Thomas Koenig wrote: > > the attached patch fixes the wrong-code regression due to the > inline argument repacking patch, r271377. > > What had gone wrong? gfortran used to pack and unpack arrays > unconditionally passed to old-style assumed size or .

[PATCH, i386]: Un-publish save/restore_multiple patterns

2019-05-29 Thread Uros Bizjak
These do not need to be public. 2019-05-29 Uroš Bizjak * config/i386/sse.md (*save_multiple): Rename from save_multiple. (*restore_multiple): Rename from restore_multiple. (*restore_multiple_and_return): Rename from restore_multiple_and_return. (*restore_multiple_leave_

Re: [PATCH] rs6000: Add eI constraint for 34-bit constants

2019-05-29 Thread Segher Boessenkool
Hi! On Wed, May 29, 2019 at 01:08:28PM -0500, Bill Schmidt wrote: > +/* Whether a given VALUE is a valid 16- or 34-bit signed offset. EXTRA is > the > + amount that we can't touch at the high end of the range (typically if the > + address is split into smaller addresses, the extra covers the

Re: [Patch] Fix ix86_expand_sse_comi_round (PR Target/89750, PR Target/86444)

2019-05-29 Thread Jeff Law
On 5/9/19 10:54 PM, Hongtao Liu wrote: > On Fri, May 10, 2019 at 3:55 AM Jeff Law wrote: >> >> On 5/6/19 11:38 PM, Hongtao Liu wrote: >>> Hi Uros and GCC: >>> This patch is to fix ix86_expand_sse_comi_round whose implementation >>> was not correct. >>> New implentation aligns with _mm_cmp_roun

Re: libbacktrace integration for _GLIBCXX_DEBUG mode

2019-05-29 Thread Jonathan Wakely
On 29/05/19 19:45 +0200, François Dumont wrote: On 5/29/19 12:06 AM, Jonathan Wakely wrote: On 23/05/19 07:39 +0200, François Dumont wrote: Hi     So here what I come up with.     _GLIBCXX_DEBUG_BACKTRACE controls the feature. If the user define Thanks for making this opt-in. it and there

Re: [PATCH V2] A jump threading opportunity for condition branch

2019-05-29 Thread Jeff Law
On 5/29/19 6:36 AM, Richard Biener wrote: > On Tue, 28 May 2019, Jiufu Guo wrote: > >> Hi, >> >> This patch implements a new opportunity of jump threading for PR77820. >> In this optimization, conditional jumps are merged with unconditional >> jump. And then moving CMP result to GPR is eliminated.

Re: libbacktrace integration for _GLIBCXX_DEBUG mode

2019-05-29 Thread Jonathan Wakely
On 23/05/19 07:39 +0200, François Dumont wrote: Hi     So here what I come up with.     _GLIBCXX_DEBUG_BACKTRACE controls the feature. If the user define it and there is a detectable issue with libbacktrace then I generate a compilation error. I want to avoid users defining it but having no

Re: Teach same_types_for_tbaa to structurally compare arrays, pointers and vectors

2019-05-29 Thread Jan Hubicka
Hi, this is a variant of testcase I have comitted. Once Martin implements SRA part, we could add next variant that drops -fno-tree-sra. It seems odd that constant propagation only happens in fre3. I woud expect fre1 to discover this already. The IL before fre1 and 3 differs only by: test () {

RFC: [PATCH] Remove using-declarations that add std names to __gnu_cxx

2019-05-29 Thread Jonathan Wakely
These using-declarations appear to have been added for simplicity when moving the non-standard extensions from namespace std to namespace __gnu_cxx. Dumping all these names into namespace __gnu_cxx allows uses like __gnu_cxx::size_t and __gnu_cxx::pair, which serve no useful purpose, but allows cr

Re: RFC: [PATCH] Remove using-declarations that add std names to __gnu_cxx

2019-05-29 Thread Ville Voutilainen
On Wed, 29 May 2019 at 23:00, Jonathan Wakely wrote: > Does anybody think we should keep __gnu_cxx::size_t, > __gnu_cxx::input_iterator_tag, __gnu_cxx::vector, __gnu_cxx::pair etc. > or should I go ahead and commit this? +1 go ahead.

Re: [PATCH] A jump threading opportunity for condition branch

2019-05-29 Thread Jeff Law
On 5/21/19 7:44 AM, Jiufu Guo wrote: > Hi, > > This patch implements a new opportunity of jump threading for PR77820. > In this optimization, conditional jumps are merged with unconditional jump. > And then moving CMP result to GPR is eliminated. > > It looks like below: > > > p0 = a CMP b

Re: [PATCH] A jump threading opportunity for condition branch

2019-05-29 Thread Jeff Law
On 5/23/19 6:05 AM, Jiufu Guo wrote: > Hi, > > Richard Biener writes: > >> On Tue, 21 May 2019, Jiufu Guo wrote: >> >>> >>> +/* Return true if PHI's INDEX-th incoming value is a CMP, and the CMP is >>> + defined in the incoming basic block. Otherwise return false. */ >>> +static bool >>> +

Re: [PATCH] A jump threading opportunity for condition branch

2019-05-29 Thread Jeff Law
On 5/23/19 6:11 AM, Richard Biener wrote: > On Thu, 23 May 2019, Jiufu Guo wrote: > >> Hi, >> >> Richard Biener writes: >> >>> On Tue, 21 May 2019, Jiufu Guo wrote: +} + + if (TREE_CODE_CLASS (gimple_assign_rhs_code (def)) != tcc_comparison) +return false; + >>>

Re: [PATCH] A jump threading opportunity for condition branch

2019-05-29 Thread Jeff Law
On 5/24/19 6:45 AM, Richard Biener wrote: [ Aggressive snipping ] > As said in my first review I'd just check whether for the > edge we want to thread through the definition comes from a CMP. > Suppose you have > > # val_1 = PHI > if (val_1 != 0) > > and only one edge has a b_3 = d_5 != 0 con

Re: [PATCH] rs6000: Add undocumented switch -mprefixed-addr

2019-05-29 Thread Bill Schmidt
On 5/29/19 8:16 AM, Segher Boessenkool wrote: > Hi! > > On Wed, May 29, 2019 at 07:42:38AM -0500, Bill Schmidt wrote: >> * rs6000-cpus.def (OTHER_FUSION_MASKS): New #define. >> (ISA_FUTURE_MASKS_SERVER): Add OPTION_MASK_PREFIXED_ADDR. Mask off >> OTHER_FUSION_MASKS. > Two spaces afte

Re: RFC: [PATCH] Remove using-declarations that add std names to __gnu_cxx

2019-05-29 Thread Thomas Rodgers
Concur Ville Voutilainen writes: > On Wed, 29 May 2019 at 23:00, Jonathan Wakely wrote: >> Does anybody think we should keep __gnu_cxx::size_t, >> __gnu_cxx::input_iterator_tag, __gnu_cxx::vector, __gnu_cxx::pair etc. >> or should I go ahead and commit this? > > +1 go ahead.

Re: Simplify more EXACT_DIV_EXPR comparisons

2019-05-29 Thread Marc Glisse
On Mon, 20 May 2019, Richard Biener wrote: On Mon, May 20, 2019 at 10:16 AM Marc Glisse wrote: On Mon, 20 May 2019, Richard Biener wrote: On Sun, May 19, 2019 at 6:16 PM Marc Glisse wrote: Hello, 2 pieces: - the first one handles the case where the denominator is negative. It doesn't h

  1   2   >