[PATCH] Fix free_lang_data on asm stmts (PR lto/91572)

2019-08-30 Thread Jakub Jelinek
Hi! The following testcase ICEs, because on the inline asm LTO streaming streams the constraint strings ("g" in this case), including their type, but the fld type discovery doesn't see that type and so we end up streaming const char type turned into its own main variant. The strings for asm are i

Go patch committed: Check for notinheap struct at each struct field

2019-08-30 Thread Ian Lance Taylor
This patch to the Go frontend checks for a notinheap struct at each struct field. When generating write barriers, we were only checking for a notinheap struct at the outermost struct. That mishandled the case of setting a pointer to a notinheap struct as a field of another struct that not notinhe

Go patch committed: Support and use single argument go:linkname

2019-08-30 Thread Ian Lance Taylor
The gc compiler has started permitting go:linkname comments with a single argument to mean that a function should be externally visible outside the package. This patch implements this in the Go frontend. We also change the libgo runtime package to use it, rather than repeating the name just to ex

Go patch committed: Don't report runtime escapes if we've seen errors

2019-08-30 Thread Ian Lance Taylor
If we get errors during a Go compilation, we skip the escape analysis pass. If we are compiling the runtime package, we report an error if a bound method expression escapes. The effect is that if we get an error while compiling the runtime package, we would report confusing and meaningless errors

Re: Go patch committed: Provide index information on bounds check failure

2019-08-30 Thread Ian Lance Taylor
On Thu, Aug 29, 2019 at 1:50 PM Andreas Schwab wrote: > > On Aug 28 2019, Ian Lance Taylor wrote: > > > This patch to the Go frontend and libgo changes the panic message > > reported for an out of bounds index or slice operation to include the > > invalid values. > > This breaks aarch64/-mabi=ilp

Re: [PATCH, V3, #4 of 10], Add general prefixed/pcrel support

2019-08-30 Thread Alan Modra
On Fri, Aug 30, 2019 at 11:35:11AM -0500, Segher Boessenkool wrote: > > - unsigned HOST_WIDE_INT val = INTVAL (XEXP (addr, 1)); > > - return val + 0x8000 >= 0x1 - (TARGET_POWERPC64 ? 8 : 12); > > + HOST_WIDE_INT val = INTVAL (XEXP (addr, 1)); > > + HOST_WIDE_INT extra = TARGET_P

Re: [PATCH, i386]: Do not limit the cost of moves to/from XMM register to minimum 8.

2019-08-30 Thread Alan Modra
On Fri, Aug 30, 2019 at 09:42:06AM +0200, Uros Bizjak wrote: > On Fri, Aug 30, 2019 at 9:22 AM Richard Biener > wrote: > > > > On Thu, Aug 29, 2019 at 9:54 AM Uros Bizjak wrote: > > > > > > On Wed, Aug 28, 2019 at 5:12 PM Uros Bizjak wrote: > > > > > > > > Attached patch improves costing for STV

[Committed] PR fortran/91587 -- A syntax error should occur

2019-08-30 Thread Steve Kargl
This is obvious. 2019-08-30 Steven G. Kargl PR fortran/91587 * io.c (match_filepos): MATCH_ERROR should branch to a syntax error. 2019-08-30 Steven G. Kargl PR fortran/91587 * gfortran.dg/pr91587.f90: New test. svn commit gcc/fortran/io.c gcc/fortran/Chang

Re: [PATCH 2/2] gcc/riscv: Add a mechanism to remove some calls to _riscv_save_0

2019-08-30 Thread Jim Wilson
On Sun, Aug 25, 2019 at 9:40 AM Jim Wilson wrote: > The problem with the linux toolchain support for -msave-restore is > that we forgot to add a version script to export the symbols. I made > the obvious change to add a RISC-V specific libgcc version script, and > now everything in the g++ and gf

Re: [ PATCH ] C++20

2019-08-30 Thread JeanHeyd Meneide
Ahem -- we were supposed to use the 20 version of the constexpr macro, not the base one. I will note that, for some reason, the default constructor was already constexpr, so we don't change that one! On Fri, Aug 30, 2019 at 5:11 PM JeanHeyd Meneide wrote: > > On Fri, Aug 30, 2019 at 3:41 PM Jonat

[PATCH] RISC-V: Disable -msave-restore for shared libraries.

2019-08-30 Thread Jim Wilson
This was noticed while trying to test -msave-restore support. The save/restore routines use the alternate return register t0/x5 which is clobbered by the PLT header, so we can't use them in shared libraries. This patch disables -msave-restore when -fpic (and -mplt), and emits a warning if the user

Go patch committed: Permit anonymous and empty fields in C header

2019-08-30 Thread Ian Lance Taylor
This patch to the Go frontend permits putting structs with anonymous and empty fields in the C header file runtime.inc that is used to build the C runtime code. This is required for upcoming 1.13 support, as the m struct has picked up an anonymous field. Doing this lets the C header contain all t

Re: [PATCH] or1k: Fix issue with set_got clobbering r9

2019-08-30 Thread Stafford Horne
On Fri, Aug 30, 2019 at 08:21:56AM -0700, Richard Henderson wrote: > LGTM. Thank you. > On 8/30/19 2:31 AM, Stafford Horne wrote: > > Hello, any comments on this? > > > > If nothing I will commit in a few days. > > > > On Thu, Aug 22, 2019 at 08:44:04PM +0900, Stafford Horne wrote: > >> When c

Re: [ PATCH ] C++20

2019-08-30 Thread JeanHeyd Meneide
On Fri, Aug 30, 2019 at 3:41 PM Jonathan Wakely wrote: > > On 30/08/19 15:22 -0400, JeanHeyd Meneide wrote: > >This patch implements as it currently exists in the C++20 Working > >Draft. > > Nice! > > > >Notes: > >- __gnu_cxx::__normal_iterator is not fully constexpr, so its not used here > > I'

Re: [PATCH] Optimize to_chars

2019-08-30 Thread Jonathan Wakely
On 30/08/19 22:46 +0300, Antony Polukhin wrote: пт, 30 авг. 2019 г. в 19:01, Jonathan Wakely : <...> Have you tried comparing the improved code to libc++'s implementation? I believe they use precomputed arrays of digits, but they use larger arrays that allow 4 bytes to be written at once, which

Re: [PATCH] Optimize to_chars

2019-08-30 Thread Antony Polukhin
пт, 30 авг. 2019 г. в 19:01, Jonathan Wakely : <...> > Have you tried comparing the improved code to libc++'s implementation? > I believe they use precomputed arrays of digits, but they use larger > arrays that allow 4 bytes to be written at once, which is considerably > faster (and those precomput

Re: [ PATCH ] C++20

2019-08-30 Thread Jonathan Wakely
On 30/08/19 15:22 -0400, JeanHeyd Meneide wrote: This patch implements as it currently exists in the C++20 Working Draft. Nice! Notes: - __gnu_cxx::__normal_iterator is not fully constexpr, so its not used here I'd prefer to make __normal_iterator constexpr, and use it. It needs to be con

Re: [PATCH] Optimize to_chars

2019-08-30 Thread Jonathan Wakely
On 30/08/19 11:03 -0600, Martin Sebor wrote: On 8/30/19 8:27 AM, Antony Polukhin wrote: Bunch of micro optimizations for std::to_chars: * For base == 8 replacing the lookup in __digits table with arithmetic computations leads to a same CPU cycles for a loop (exchanges two movzx with 3 bit ops ht

[ PATCH ] C++20

2019-08-30 Thread JeanHeyd Meneide
This patch implements as it currently exists in the C++20 Working Draft. Notes: - __gnu_cxx::__normal_iterator is not fully constexpr, so its not used here - P1394 might be slated to end up in C++20 per National Body Comments. Therefore, an early implementation is left in an implementation-define

Re: [PATCH, V3, #5 of 10], Make -mpcrel default on little endian Linux systems

2019-08-30 Thread Segher Boessenkool
On Mon, Aug 26, 2019 at 05:07:25PM -0400, Michael Meissner wrote: > +/* By default enable support for pc-relative and numeric prefixed addressing > on > + the 'future' system, unless it is overriden at build time. */ > +#ifndef TARGET_PREFIXED_ADDR_DEFAULT > +#define TARGET_PREFIXED_ADDR_DEFAUL

Re: [PATCH] Optimize to_chars

2019-08-30 Thread Martin Sebor
On 8/30/19 8:27 AM, Antony Polukhin wrote: Bunch of micro optimizations for std::to_chars: * For base == 8 replacing the lookup in __digits table with arithmetic computations leads to a same CPU cycles for a loop (exchanges two movzx with 3 bit ops https://godbolt.org/z/RTui7m ). However this sav

Re: [PATCH 2/2] rs6000: Use unspec_volatile for darn (PR91481)

2019-08-30 Thread Segher Boessenkool
On Thu, Aug 22, 2019 at 07:20:48PM +, Segher Boessenkool wrote: > Every call to darn should deliver a *new* random number; such calls > shouldnot be CSEd together. So they should be unspec_volatile, not > plain unspec. > > Tested on powerpc64-linux {-m32,-m64}. (New testcase coming soon). >

Re: [PATCH, V3, #4 of 10], Add general prefixed/pcrel support

2019-08-30 Thread Segher Boessenkool
Hi! (Please split off paddi to a separate patch?) On Mon, Aug 26, 2019 at 04:43:37PM -0400, Michael Meissner wrote: > (prefixed_paddi_p): Fix thinkos in last patch. Do that separately please. Don't hide this in another patch like this. Hrm, this is not in this patch at all? Fix the chan

Re: [PATCH] Fix thinko in early bail out in tree-switch-conversion.

2019-08-30 Thread Jeff Law
On 8/30/19 2:41 AM, Martin Liška wrote: > Hi. > > Thanks to Jakub, the patch addresses one memory leak in > bit_test_cluster::find_bit_tests (allocation of output). > And moreover, it implements proper guard when clustering > is not successful. In such situation we want a quick bail out. > > Patc

Re: [PATCH] PR libstdc++/89164 enforce constraints for uninitialized algos

2019-08-30 Thread Jonathan Wakely
On 30/08/19 14:54 +0100, Jonathan Wakely wrote: The memmove optimizations for std::uninitialized_copy/fill/_n will compile even if the type is not copy constructible, because std::copy doesn't require copy construction to work. But the uninitialized algorithms do require it. This adds explicit s

Re: [PATCH] Optimize to_chars

2019-08-30 Thread Jonathan Wakely
On 30/08/19 17:01 +0100, Jonathan Wakely wrote: On 30/08/19 17:27 +0300, Antony Polukhin wrote: Bunch of micro optimizations for std::to_chars: * For base == 8 replacing the lookup in __digits table with arithmetic computations leads to a same CPU cycles for a loop (exchanges two movzx with 3 bi

Re: [PATCH] Optimize to_chars

2019-08-30 Thread Jonathan Wakely
On 30/08/19 17:27 +0300, Antony Polukhin wrote: Bunch of micro optimizations for std::to_chars: * For base == 8 replacing the lookup in __digits table with arithmetic computations leads to a same CPU cycles for a loop (exchanges two movzx with 3 bit ops https://godbolt.org/z/RTui7m ). However thi

Re: [committed] Suppress warnings for mips/r10k-cache-barrier-9.c

2019-08-30 Thread Richard Sandiford
Jeff Law writes: > The improvements in our ability to issue diagnostics for out of bounds > accesses to trailing arrays is causing r10k-cache-barrier-9.c to fail on > MIPS targets. > > This is a bit of an odd test. It purposefully does out of bounds > accesses. Some accesses cross sub-object bou

[Ada] Saturate the sizes for the target in -gnatR output

2019-08-30 Thread Eric Botcazou
This changes the saturation from the host to the target for the large sizes displayed in the the -gnatR output. Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/decl.c (maybe_saturate_size): New function. (gnat_to_gnu_entity): In

Re: [PATCH v2 0/9] S/390: Use signaling FP comparison instructions

2019-08-30 Thread Ilya Leoshkevich
> Am 30.08.2019 um 16:40 schrieb Ilya Leoshkevich : > >> Am 30.08.2019 um 09:12 schrieb Richard Biener : >> >> On Thu, Aug 29, 2019 at 5:39 PM Ilya Leoshkevich wrote: >>> Am 22.08.2019 um 15:45 schrieb Ilya Leoshkevich : Bootstrap and regtest running on x86_64-redhat-linux and >

[Ada] Add warning for explicit by-reference mechanism

2019-08-30 Thread Eric Botcazou
This instructs gigi to issue a warning when an explicit by-reference mechanism specified by means of pragma Export_Function cannot be honored. Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/ada-tree.h (DECL_FORCED_BY_REF_P): New macro.

Re: [PATCH] or1k: Fix issue with set_got clobbering r9

2019-08-30 Thread Richard Henderson
LGTM. On 8/30/19 2:31 AM, Stafford Horne wrote: > Hello, any comments on this? > > If nothing I will commit in a few days. > > On Thu, Aug 22, 2019 at 08:44:04PM +0900, Stafford Horne wrote: >> When compiling glibc we found that the GOT register was being allocated >> r9 when the instruction was

[Ada] Minor tweak for coverage

2019-08-30 Thread Eric Botcazou
Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/trans.c (gnat_to_gnu): Do not set the location on an expression used for a tag. -- Eric BotcazouIndex: gcc-interface/trans.c ===

[Ada] Allow tighter packing for component with variant part

2019-08-30 Thread Eric Botcazou
This lifts an old restriction pertaining to the layout of components of record types whose nominal subtype contains a variant part: they couldn't be packed. Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/gigi.h (aggregate_type_contains

[committed] Suppress warnings for mips/r10k-cache-barrier-9.c

2019-08-30 Thread Jeff Law
The improvements in our ability to issue diagnostics for out of bounds accesses to trailing arrays is causing r10k-cache-barrier-9.c to fail on MIPS targets. This is a bit of an odd test. It purposefully does out of bounds accesses. Some accesses cross sub-object boundaries, others leave the ob

Re: [PATCH] Sanitizing the middle-end interface to the back-end for strict alignment

2019-08-30 Thread Christophe Lyon
On Thu, 29 Aug 2019 at 23:26, Bernd Edlinger wrote: > > On 8/29/19 11:08 AM, Christophe Lyon wrote: > > On Thu, 29 Aug 2019 at 10:58, Kyrill Tkachov > > wrote: > >> > >> Hi Bernd, > >> > >> On 8/28/19 10:36 PM, Bernd Edlinger wrote: > >>> On 8/28/19 2:07 PM, Christophe Lyon wrote: > Hi, > >>

Re: [ARM/FDPIC v5 02/21] [ARM] FDPIC: Handle arm*-*-uclinuxfdpiceabi in configure scripts

2019-08-30 Thread Richard Sandiford
Christophe Lyon writes: > On Fri, 30 Aug 2019 at 11:00, Richard Sandiford > wrote: >> >> Christophe Lyon writes: >> > @@ -785,7 +785,7 @@ case ${target} in >> >esac >> >tmake_file="t-slibgcc" >> >case $target in >> > -*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | >> > *-*-kop

[Ada] Fix minor inaccuracy in lvalue_required_p

2019-08-30 Thread Eric Botcazou
It can only result in a missed early optimization. Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/trans.c (lvalue_required_p) : Adjust GNU_TYPE in the recursive call. : Likewise. -- Eric BotcazouIndex: gcc-interface/tr

[Ada] Fix crash on unconstrained array with convention C

2019-08-30 Thread Eric Botcazou
This happens when the array has multiple dimensions. Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/utils.c (build_template): Deal with parameters passed by pointer to component of multi-dimensional arrays. -- Eric BotcazouInd

Re: [PATCH v2 0/9] S/390: Use signaling FP comparison instructions

2019-08-30 Thread Ilya Leoshkevich
> Am 30.08.2019 um 09:12 schrieb Richard Biener : > > On Thu, Aug 29, 2019 at 5:39 PM Ilya Leoshkevich wrote: >> >>> Am 22.08.2019 um 15:45 schrieb Ilya Leoshkevich : >>> >>> Bootstrap and regtest running on x86_64-redhat-linux and >>> s390x-redhat-linux. >>> >>> This patch series adds signali

[Ada] Fix infinite recursion on dynamic record type with -gnatR4

2019-08-30 Thread Eric Botcazou
An oversight when -gnatR4 was invented. Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/decl.c (annotate_value) : Inline the call also if List_Representation_Info is greater than 3. -- Eric BotcazouIndex: gcc-interface/decl.c =

Re: [ARM/FDPIC v5 02/21] [ARM] FDPIC: Handle arm*-*-uclinuxfdpiceabi in configure scripts

2019-08-30 Thread Christophe Lyon
On Fri, 30 Aug 2019 at 11:00, Richard Sandiford wrote: > > Christophe Lyon writes: > > @@ -785,7 +785,7 @@ case ${target} in > >esac > >tmake_file="t-slibgcc" > >case $target in > > -*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-kopensolaris*-gnu) > > +*-*-linux* | frv-

Re: [ARM/FDPIC v5 06/21] [ARM] FDPIC: Add support for c++ exceptions

2019-08-30 Thread Jonathan Wakely
On 30/08/19 10:02 +0100, Kyrill Tkachov wrote: As Richard mentioned in an earlier post the generic libgcc and libstdc++ changes will need approval from the relevant maintainers. CC'ing the libstdc++ list and the libgcc maintainer. The libstdc++ change is OK for trunk. On 5/15/19 1:39 PM, C

Re: [ARM/FDPIC v5 02/21] [ARM] FDPIC: Handle arm*-*-uclinuxfdpiceabi in configure scripts

2019-08-30 Thread Jonathan Wakely
On 29/08/19 16:54 +0200, Christophe Lyon wrote: On 12/07/2019 08:49, Richard Sandiford wrote: Christophe Lyon writes: The new arm-uclinuxfdpiceabi target behaves pretty much like arm-linux-gnueabi. In order the enable the same set of features, we have to update several configure scripts that g

[PATCH] Optimize to_chars

2019-08-30 Thread Antony Polukhin
Bunch of micro optimizations for std::to_chars: * For base == 8 replacing the lookup in __digits table with arithmetic computations leads to a same CPU cycles for a loop (exchanges two movzx with 3 bit ops https://godbolt.org/z/RTui7m ). However this saves 129 bytes of data and totally avoids a cha

[Ada] Add assertion for Size attribute et al.

2019-08-30 Thread Eric Botcazou
The type to which, or the type of the object to which, it is applied must be frozen when the Size attribute, or a variant thereof, is processed. Tested on x86_64-suse-linux, applied on the mainline. 2019-08-30 Eric Botcazou * gcc-interface/trans.c (Attribute_to_gnu) : Add assertion.

Re: [PATCH v2 0/9] S/390: Use signaling FP comparison instructions

2019-08-30 Thread Ilya Leoshkevich
> Am 30.08.2019 um 09:16 schrieb Richard Biener : > > On Fri, Aug 30, 2019 at 9:12 AM Richard Biener > wrote: >> >> On Thu, Aug 29, 2019 at 5:39 PM Ilya Leoshkevich wrote: >>> Am 22.08.2019 um 15:45 schrieb Ilya Leoshkevich : Bootstrap and regtest running on x86_64-redhat-linux

Backports to 7.5 (part 2)

2019-08-30 Thread Jakub Jelinek
Hi! I've backported 97 commits from trunk to 7.5, bootstrapped/regtested them on x86_64-linux and i686-linux and committed. Here is the second half of them. Jakub 2019-08-30 Jakub Jelinek Backported from mainline 2019-02-20 Jakub Jelinek PR middle-end/88074

Backports to 7.5 (part 1)

2019-08-30 Thread Jakub Jelinek
Hi! I've backported 97 commits from trunk to 7.5, bootstrapped/regtested them on x86_64-linux and i686-linux and committed. Here is the first half of them, second half will follow in another mail. Jakub 2019-08-30 Jakub Jelinek Backported from mainline 2018-10-19 Jaku

Re: C++ PATCH for P1152R4: Deprecating some uses of volatile (PR c++/91361)

2019-08-30 Thread Marek Polacek
On Thu, Aug 29, 2019 at 03:14:36PM -0600, Martin Sebor wrote: > On 8/28/19 5:56 PM, Marek Polacek wrote: > > --- gcc/doc/invoke.texi > > +++ gcc/doc/invoke.texi > > @@ -3516,6 +3516,19 @@ result in a call to @code{terminate}. > > Disable the warning about the case when a conversion function conve

[PATCH] PR libstdc++/89164 enforce constraints for uninitialized algos

2019-08-30 Thread Jonathan Wakely
The memmove optimizations for std::uninitialized_copy/fill/_n will compile even if the type is not copy constructible, because std::copy doesn't require copy construction to work. But the uninitialized algorithms do require it. This adds explicit static assertions to ensure we don't allow ill-for

[Ada] Remove range check generation code in gigi

2019-08-30 Thread Eric Botcazou
The generation of range checks is now entirely done by the front-end proper so the code to that effect in gigi is obsolete and can be removed, but the patch implements a watchdog mechanism to make sure no check is lost in the process. Tested on x86_64-suse-linux, applied on the mainline. 2019-

Re: [PATCH] Fix unused malloc return value warning

2019-08-30 Thread Jonathan Wakely
On 29/08/19 21:54 +0200, François Dumont wrote: Hi     I am having this warning: /home/fdt/dev/gcc/git/libstdc++-v3/testsuite/util/testsuite_performance.h:170: attention: ignoring return value of « void* malloc(size_t) » declared with attribute « warn_unused_result » [-Wunused-result]   170

[preprocessor] Popping "" file names

2019-08-30 Thread Nathan Sidwell
On the modules branch, I needed a bunch of tests checking the interaction of #include nesting and the declarations therein. Doing this with the current testsuite infrastructure is quite awkward. Using # "name" [12] directives works just fine, /except/ in the unnesting case. There we need

Re: [PATCH] Add .pd extension to c_exts.

2019-08-30 Thread Richard Biener
On Fri, Aug 30, 2019 at 2:31 PM Alexander Monakov wrote: > > > > On Fri, 30 Aug 2019, Richard Biener wrote: > > > On Fri, Aug 30, 2019 at 12:58 PM Martin Liška wrote: > > > > > > Hi. > > > > > > I would like to add .pd to c_exts so that one > > > can have correctly set tab width, etc. > > > > But

Re: [PATCH] Add .pd extension to c_exts.

2019-08-30 Thread Alexander Monakov
On Fri, 30 Aug 2019, Richard Biener wrote: > On Fri, Aug 30, 2019 at 12:58 PM Martin Liška wrote: > > > > Hi. > > > > I would like to add .pd to c_exts so that one > > can have correctly set tab width, etc. > > But then it will auto-indent with too much spaces, no? I think it's fine, the scri

Re: [PATCH] Add .pd extension to c_exts.

2019-08-30 Thread Martin Liška
On 8/30/19 2:09 PM, Richard Biener wrote: > But then it will auto-indent with too much spaces, no? It's doesn't understand the lisp-like notation (foo (bar (baz so no auto-indentation is happening. Martin

Re: [PATCH] Add .pd extension to c_exts.

2019-08-30 Thread Richard Biener
On Fri, Aug 30, 2019 at 12:58 PM Martin Liška wrote: > > Hi. > > I would like to add .pd to c_exts so that one > can have correctly set tab width, etc. But then it will auto-indent with too much spaces, no? Richard. > Ready for trunk? > Thanks, > Martin > > contrib/ChangeLog: > > 2019-08-30 Ma

Re: [PATCH][AArch64] Vectorize MULH(R)S patterns with SVE2 instructions

2019-08-30 Thread Richard Sandiford
Thanks for doing this. The patch looks good, so this review is mostly a list of very minor formatting comments, sorry. Yuliang Wang writes: > 2019-08-22 Yuliang Wang > Please add a line here pointing at the PR: PR tree-optimization/89386 The commit hooks pick this up automatically

[C++ PATCH] vtable decl marking

2019-08-30 Thread Nathan Sidwell
I noticed that DECL_VTABLE_OR_VTT_P and DECL_VIRTUAL_P have the same semantics for VAR_DECLs. We set them both at the same time, and the C++ FE tests the former, but (I presume) the optimizers test the latter. It doesn't seem to matter that we set DECL_VIRTUAL_P for the VTT. The attached patc

[PATCH] Add .pd extension to c_exts.

2019-08-30 Thread Martin Liška
Hi. I would like to add .pd to c_exts so that one can have correctly set tab width, etc. Ready for trunk? Thanks, Martin contrib/ChangeLog: 2019-08-30 Martin Liska * vimrc: Add .pd extension. --- contrib/vimrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/con

Re: [SVE] PR86753

2019-08-30 Thread Richard Biener
On Wed, Aug 28, 2019 at 11:02 AM Richard Sandiford wrote: > > Prathamesh Kulkarni writes: > > On Tue, 27 Aug 2019 at 21:14, Richard Sandiford > > wrote: > >> > >> Richard should have the final say, but some comments... > >> > >> Prathamesh Kulkarni writes: > >> > diff --git a/gcc/tree-vect-stmt

Re: [PATCH v2 0/9] S/390: Use signaling FP comparison instructions

2019-08-30 Thread Richard Biener
On Fri, Aug 30, 2019 at 12:06 PM Segher Boessenkool wrote: > > On Fri, Aug 30, 2019 at 09:12:11AM +0200, Richard Biener wrote: > > On GIMPLE there isn't a good reason to split out trapping comparisons > > from [VEC_]COND_EXPR - the gimplifier does this for GIMPLE_CONDs > > where it is important be

Re: [PATCH][middle-end/88784] Middle end is missing some optimizations about unsigned

2019-08-30 Thread Martin Liška
@Richi: PING^1 On 7/16/19 8:35 AM, Li Jia He wrote: > > > On 2019/7/2 4:51 PM, Richard Biener wrote: >> On Tue, 2 Jul 2019, Richard Biener wrote: >> >>> On Tue, 2 Jul 2019, Li Jia He wrote: >>> On 2019/7/1 3:30 PM, Richard Biener wrote: > On Fri, 28 Jun 2019, Andrew Pinski wro

[PATCH 3/3][MSP430] Use default_elf_select_section to select sections for data where possible

2019-08-30 Thread Jozef Lawrynowicz
With the "noinit" attribute now handled generically, direct assignment of data with the "noinit" attribute to the ".noinit" attribute can be removed from the msp430 back end, and default_elf_select_section can be used instead. default_elf_select_section can also be used for SECCAT_RODATA_MERGE_* s

[PATCH 2/3][MSP430] Setup exclusion tables for function and data attributes

2019-08-30 Thread Jozef Lawrynowicz
The attached patch removes hard-coded warnings from msp430 attribute handlers, and replaces them with exclusion rules specified in the attribute_spec table. Where msp430 attributes conflict with generic attributes, hard-coded warnings are still necessary. >From c6def571a47df5394ca9f5c5c4918f0ffcf9

[PATCH 1/3] Implement TARGET_HANDLE_GENERIC_ATTRIBUTE

2019-08-30 Thread Jozef Lawrynowicz
The attached patch adds a new target hook "TARGET_HANDLE_GENERIC_ATTRIBUTE" which enables a back end to perform additional processing of an attribute that is normally handled by a front end. So far only the "section" and "noinit" attribute make use of this hook, as the msp430 back end requires add

[PATCH 0/3] MSP430: Improve attribute handling

2019-08-30 Thread Jozef Lawrynowicz
The following series of patches improves the handling of msp430-specific attributes by making use of generic mechanisms for performing common tasks (i.e. handling attribute conflicts, putting data objects in sections). The patches also transition the msp430 back end to fully use the generic handli

Re: [PATCH v2 0/9] S/390: Use signaling FP comparison instructions

2019-08-30 Thread Segher Boessenkool
On Fri, Aug 30, 2019 at 09:12:11AM +0200, Richard Biener wrote: > On GIMPLE there isn't a good reason to split out trapping comparisons > from [VEC_]COND_EXPR - the gimplifier does this for GIMPLE_CONDs > where it is important because we'd have no way to represent EH info > when not done. It might

Re: [PATCH V6 05/11] bpf: new GCC port

2019-08-30 Thread Jose E. Marchesi
> This patch adds a port for the Linux kernel eBPF architecture to GCC. > > ChangeLog: > > * configure.ac: Support for bpf-*-* targets. > * configure: Regenerate. > > contrib/ChangeLog: > > * config-list.mk (LIST): Disable go in bpf-*-* targets. >

Re: [PATCH] or1k: Fix issue with set_got clobbering r9

2019-08-30 Thread Stafford Horne
Hello, any comments on this? If nothing I will commit in a few days. On Thu, Aug 22, 2019 at 08:44:04PM +0900, Stafford Horne wrote: > When compiling glibc we found that the GOT register was being allocated > r9 when the instruction was still set_got_tmp. That caused set_got to > clobber r9. We

Re: [PATCH] Sanitizing the middle-end interface to the back-end for strict alignment

2019-08-30 Thread Kyrill Tkachov
Hi Bernd, On 8/29/19 10:26 PM, Bernd Edlinger wrote: On 8/29/19 11:08 AM, Christophe Lyon wrote: On Thu, 29 Aug 2019 at 10:58, Kyrill Tkachov wrote: Hi Bernd, On 8/28/19 10:36 PM, Bernd Edlinger wrote: On 8/28/19 2:07 PM, Christophe Lyon wrote: Hi, This patch causes an ICE when building l

Re: [ARM/FDPIC v5 01/21] [ARM] FDPIC: Add -mfdpic option support

2019-08-30 Thread Richard Sandiford
Christophe Lyon writes: > On 16/07/2019 12:11, Richard Sandiford wrote: >> [This isn't really something that should be reviewed under global >> reviewership, but if it's either that or nothing, I'll do it anyway...] >> >> Christophe Lyon writes: >>> 2019-XX-XX Christophe Lyon >>> Mickaël

Re: [ARM/FDPIC v5 03/21] [ARM] FDPIC: Force FDPIC related options unless -mno-fdpic is provided

2019-08-30 Thread Richard Sandiford
Christophe Lyon writes: > 2019-XX-XX Christophe Lyon > Micka«l Guªn© > > gcc/ > * config.gcc: Handle arm*-*-uclinuxfdpiceabi. > * config/arm/bpabi.h (TARGET_FDPIC_ASM_SPEC): New. > (SUBTARGET_EXTRA_ASM_SPEC): Use TARGET_FDPIC_ASM_SPEC. > * config/arm/linux-e

Re: [ARM/FDPIC v5 06/21] [ARM] FDPIC: Add support for c++ exceptions

2019-08-30 Thread Kyrill Tkachov
As Richard mentioned in an earlier post the generic libgcc and libstdc++ changes will need approval from the relevant maintainers. CC'ing the libstdc++ list and the libgcc maintainer. On 5/15/19 1:39 PM, Christophe Lyon wrote: The main difference with existing support is that function addresse

Re: [ARM/FDPIC v5 02/21] [ARM] FDPIC: Handle arm*-*-uclinuxfdpiceabi in configure scripts

2019-08-30 Thread Richard Sandiford
Christophe Lyon writes: > @@ -785,7 +785,7 @@ case ${target} in >esac >tmake_file="t-slibgcc" >case $target in > -*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-kopensolaris*-gnu) > +*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-kopensolaris*-gnu > | *-*-uclinuxf

Re: [PATCH 0/3] mklog improvements

2019-08-30 Thread Martin Liška
PING^1 On 8/13/19 9:49 AM, Martin Liska wrote: > Hi. > > I'm sending format independent changes to mklog that should > improve the script. It addresses couple of improvement > mentioned here: > https://gcc.gnu.org/ml/gcc-patches/2019-08/msg00031.html > > Martin > > Martin Liska (3): > Use arg

Re: [PATCH] Come up with json::integer_number and use it in GCOV.

2019-08-30 Thread Martin Liška
PING^2 On 8/26/19 2:34 PM, Martin Liška wrote: > PING^1 > > On 8/13/19 1:51 PM, Martin Liška wrote: >> On 8/2/19 2:40 PM, David Malcolm wrote: >>> Something that occurred to me reading the updated patch: maybe it would >>> make things easier to have utility member functions of json::object to >>>

Re: [PATCH] Generalized predicate/condition for parameter reference in IPA (PR ipa/91088)

2019-08-30 Thread Feng Xue OS
> I was merely suggesting a better comment describing the function you are > introducing. Oh. I know. Good wording. > Thinking about it a bit more, I think you simply do not want to ever > push the extra VIEW_CONVERT_EXPR to the vector and in > evaluate_conditions_for_known_args always do a fold

Re: [PATCH] Generalized predicate/condition for parameter reference in IPA (PR ipa/91088)

2019-08-30 Thread Martin Jambor
Hi, On Fri, Aug 30 2019, Feng Xue OS wrote: >> (It's a bad idea to make ChangeLog entries part of the patch, it won't >> apply to anyone, not even to you nowadays. ) > Got it. Will not include this kind of info in later patches. > >> I understand describing these things is difficult, but flatten i

[PATCH] Fix thinko in early bail out in tree-switch-conversion.

2019-08-30 Thread Martin Liška
Hi. Thanks to Jakub, the patch addresses one memory leak in bit_test_cluster::find_bit_tests (allocation of output). And moreover, it implements proper guard when clustering is not successful. In such situation we want a quick bail out. Patch can bootstrap on x86_64-linux-gnu and survives regress

[PATCH] Consider also negative edges in cycle detection.

2019-08-30 Thread Martin Liška
Hi. The patch is enhancement of r271117 where I started detecting zero cycles. We also need consider negative edges. Patch survives gcov.exp and I'll install it after proper testing next week. Thanks, Martin gcc/ChangeLog: 2019-08-30 Martin Liska * gcov.c (path_contains_zero_cycle_

Re: [ARM/FDPIC v5 09/21] [ARM] FDPIC: Add support for taking address of nested function

2019-08-30 Thread Kyrill Tkachov
On 8/29/19 4:36 PM, Christophe Lyon wrote: On 31/07/2019 16:44, Christophe Lyon wrote: On Tue, 16 Jul 2019 at 14:42, Kyrill Tkachov wrote: On 7/16/19 12:18 PM, Kyrill Tkachov wrote: Hi Christophe On 5/15/19 1:39 PM, Christophe Lyon wrote: In FDPIC mode, the trampoline generated to suppo

Re: [PATCH] Generalized predicate/condition for parameter reference in IPA (PR ipa/91088)

2019-08-30 Thread Feng Xue OS
> (It's a bad idea to make ChangeLog entries part of the patch, it won't > apply to anyone, not even to you nowadays. ) Got it. Will not include this kind of info in later patches. > I understand describing these things is difficult, but flatten is > strange way to describe what the function does.

Re: [ARM/FDPIC v5 05/21] [ARM] FDPIC: Fix __do_global_dtors_aux and frame_dummy generation

2019-08-30 Thread Richard Sandiford
Christophe Lyon writes: > On 12/07/2019 08:06, Richard Sandiford wrote: >> Christophe Lyon writes: >>> In FDPIC, we need to make sure __do_global_dtors_aux and frame_dummy >>> are referenced by their address, not by pointers to the function >>> descriptors. >>> >>> 2019-XX-XX Christophe Lyon >

Re: [PATCH V6 05/11] bpf: new GCC port

2019-08-30 Thread Richard Sandiford
jema...@gnu.org (Jose E. Marchesi) writes: > This patch adds a port for the Linux kernel eBPF architecture to GCC. > > ChangeLog: > > * configure.ac: Support for bpf-*-* targets. > * configure: Regenerate. > > contrib/ChangeLog: > > * config-list.mk (LIST): Disable go in bpf-*-* targets. > >

Re: [PATCH] Setup predicate for switch default case in IPA (PR ipa/91089)

2019-08-30 Thread Feng Xue OS
That's good. Thanks for your comments. Feng From: Martin Jambor Sent: Thursday, August 29, 2019 11:00 PM To: Feng Xue OS; gcc-patches@gcc.gnu.org; Jan Hubicka Subject: Re: [PATCH] Setup predicate for switch default case in IPA (PR ipa/91089) Hi, On Fri

Re: [PATCH, i386]: Do not limit the cost of moves to/from XMM register to minimum 8.

2019-08-30 Thread Uros Bizjak
On Fri, Aug 30, 2019 at 9:22 AM Richard Biener wrote: > > On Thu, Aug 29, 2019 at 9:54 AM Uros Bizjak wrote: > > > > On Wed, Aug 28, 2019 at 5:12 PM Uros Bizjak wrote: > > > > > > Attached patch improves costing for STV shifts and corrects reject > > > condition for out of range shift count oper

Re: [PR 91579] Avoid creating redundant PHI nodes in tail-call pass

2019-08-30 Thread Richard Biener
On Thu, Aug 29, 2019 at 3:56 PM Martin Jambor wrote: > > Hi, > > On Thu, Aug 29 2019, Richard Biener wrote: > > On Thu, Aug 29, 2019 at 11:04 AM Martin Jambor wrote: > >> > >> Hi, > >> > >> when turning a tail-recursive call into a loop, the tail-call pass > >> creates a phi node for each gimple_

Re: [PATCH] use fallback location for warning (PR 91599)

2019-08-30 Thread Richard Biener
On Fri, Aug 30, 2019 at 3:58 AM Martin Sebor wrote: > > warning_at() calls with the %G directive rely on the gimple statement > for both their location and the inlining context. When the statement > is not associated with a location, the warning doesn't point at any > line even if the location ar

Re: [PATCH] correct MEM_REF bounds checking of arrays (PR 91584)

2019-08-30 Thread Richard Biener
On Fri, Aug 30, 2019 at 12:36 AM Martin Sebor wrote: > > The -Warray-bounds enhancement I added to GCC 9 causes false > positives in languages like Fortran whose first array element > is at a non-zero index. The attached patch has the function > responsible for the warning normalize the array bou

Re: [PR91598] Improve autoprefetcher heuristic in haifa-sched.c

2019-08-30 Thread Richard Biener
On Thu, Aug 29, 2019 at 7:36 PM Alexander Monakov wrote: > > On Thu, 29 Aug 2019, Maxim Kuvyrkov wrote: > > > >> r1 = [rb + 0] > > >> > > >> r2 = [rb + 8] > > >> > > >> r3 = [rb + 16] > > >> > > >> > > >> which, apparently, cortex-a53 autoprefetcher doesn't recognize. This > > >> schedule happ

Re: [PATCH, i386]: Improve STV conversion of shifts

2019-08-30 Thread Richard Biener
On Thu, Aug 29, 2019 at 9:54 AM Uros Bizjak wrote: > > On Wed, Aug 28, 2019 at 5:12 PM Uros Bizjak wrote: > > > > Attached patch improves costing for STV shifts and corrects reject > > condition for out of range shift count operands. > > > > 2019-08-28 Uroš Bizjak > > > > * config/i386/i38

Re: [PATCH, i386]: Do not limit the cost of moves to/from XMM register to minimum 8.

2019-08-30 Thread Hongtao Liu
On Fri, Aug 30, 2019 at 2:18 PM Uros Bizjak wrote: > > On Fri, Aug 30, 2019 at 2:08 AM Hongtao Liu wrote: > > > > On Fri, Aug 30, 2019 at 2:09 AM Uros Bizjak wrote: > > > > > > 2019-08-28 Uroš Bizjak > > > > > > * config/i386/i386.c (ix86_register_move_cost): Do not > > > limit the co

Re: [PATCH v2 0/9] S/390: Use signaling FP comparison instructions

2019-08-30 Thread Richard Biener
On Fri, Aug 30, 2019 at 9:12 AM Richard Biener wrote: > > On Thu, Aug 29, 2019 at 5:39 PM Ilya Leoshkevich wrote: > > > > > Am 22.08.2019 um 15:45 schrieb Ilya Leoshkevich : > > > > > > Bootstrap and regtest running on x86_64-redhat-linux and > > > s390x-redhat-linux. > > > > > > This patch serie

Re: [PATCH v2 0/9] S/390: Use signaling FP comparison instructions

2019-08-30 Thread Richard Biener
On Thu, Aug 29, 2019 at 5:39 PM Ilya Leoshkevich wrote: > > > Am 22.08.2019 um 15:45 schrieb Ilya Leoshkevich : > > > > Bootstrap and regtest running on x86_64-redhat-linux and > > s390x-redhat-linux. > > > > This patch series adds signaling FP comparison support (both scalar and > > vector) to s3