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

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, 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, 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: [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] 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: [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: [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, 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: [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 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: [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] 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 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

[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_

[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

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

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] 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 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: [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: [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 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 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: [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: [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 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 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

[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

[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 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 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

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

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: [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

[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

[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

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

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] 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 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 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

[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] 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

[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-

[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

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

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

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

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

[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.

[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

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

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 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-

[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: [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 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

[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

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

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, > >>

[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

[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

[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 ===

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] 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 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] 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: [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

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: [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] 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] 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, 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 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] 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, 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

[ 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] 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

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 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] 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 ] 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] 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

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

[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

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

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

[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, 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

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: 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

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

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: 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

[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