[PR57371] transform (double)i eq/ne 0 to i eq/ne 0

2016-08-03 Thread Prathamesh Kulkarni
Hi, The attached patch tries to transform (double)i eq/ne 0 to i eq/ne 0 AFAIU from Joseph's comment 1 in PR, the transform should be safe with -fno-trapping-math ? Bootstrap+tested on x86_64-unknown-linux-gnu in progress. Thanks, Prathamesh 2016-08-03 Prathamesh Kulkarni PR tree-optim

Re: [PR57371] transform (double)i eq/ne 0 to i eq/ne 0

2016-08-03 Thread Georg-Johann Lay
On 03.08.2016 09:53, Prathamesh Kulkarni wrote: Hi, The attached patch tries to transform (double)i eq/ne 0 to i eq/ne 0 AFAIU from Joseph's comment 1 in PR, the transform should be safe with -fno-trapping-math ? What about signed zeroes? Johann Bootstrap+tested on x86_64-unknown-linux-gnu i

Re: [PATCH RFC] do not throw in std::make_exception_ptr

2016-08-03 Thread Jonathan Wakely
On 28/07/16 10:20 +0300, Gleb Natapov wrote: [resent with hopefully correct libstdc++ mailing list address this time] Here is my attempt to fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68297. The resulting patch is a little bit long because I had to split and cxxabi.h "A little bit", yes

Re: [PATCH RFC] do not throw in std::make_exception_ptr

2016-08-03 Thread Jonathan Wakely
On 03/08/16 10:48 +0100, Jonathan Wakely wrote: On 28/07/16 10:20 +0300, Gleb Natapov wrote: +extern "C" __cxa_refcounted_exception* +__cxxabiv1::__cxa_init_primary_exception(void *obj, const std::type_info *tinfo, + void (_GLIBCXX_CDTOR_CALLABI *dest) (

[PATCH] Do not enable -fprefetch-loop-arrays with -fprofile-use (PR, gcov-profile/58250).

2016-08-03 Thread Martin Liška
Hi. I've just grabbed patch a that was suggested in the PR (and IMHO makes sense). Patch can bootstrap on ppc64le-redhat-linux and survives regression tests. Ready to be installed? Martin >From e75e997f05d547017b3a962069fa4d1b024420cd Mon Sep 17 00:00:00 2001 From: marxin Date: Tue, 2 Aug 2016

Re: [PATCH][RFC] PR middle-end/22141 GIMPLE store widening pass

2016-08-03 Thread Kyrill Tkachov
Hi Richard, On 18/07/16 13:22, Richard Biener wrote: + /* Record the original statements so that we can keep track of +statements emitted in this pass and not re-process new +statements. */ + for (gsi = gsi_after_labels (bb); !gsi_end_p (gsi); gsi_next (&gsi)) +

Re: [PATCH RFC] do not throw in std::make_exception_ptr

2016-08-03 Thread Gleb Natapov
On Wed, Aug 03, 2016 at 10:48:27AM +0100, Jonathan Wakely wrote: > On 28/07/16 10:20 +0300, Gleb Natapov wrote: > > [resent with hopefully correct libstdc++ mailing list address this time] > > > > Here is my attempt to fix > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68297. The resulting patch

Re: [ARM] FP16 ARM Alternative format variants of AAPCS tests.

2016-08-03 Thread Ramana Radhakrishnan
On Mon, Jun 27, 2016 at 11:09 AM, Matthew Wahab wrote: > Hello, > > Tests added for FP16 argument and return values being passed in > registers only check the case when the FP16 IEEE format is used. This > patch adds equivalent tests that also check the behaviour when the > ARM Alternative format

Re: [PATCH RFC] do not throw in std::make_exception_ptr

2016-08-03 Thread Jonathan Wakely
On 03/08/16 14:26 +0300, Gleb Natapov wrote: On Wed, Aug 03, 2016 at 10:48:27AM +0100, Jonathan Wakely wrote: Does bad_exception need to move to ? I think only std::exception is really needed by . When I did header split I when with "move as much as possible" approach, not the other way arou

Re: [PATCH 8/17][ARM] Add VFP FP16 arithmetic instructions.

2016-08-03 Thread Ramana Radhakrishnan
On Thu, Jul 28, 2016 at 12:37 PM, Ramana Radhakrishnan wrote: > On Mon, Jul 4, 2016 at 3:02 PM, Matthew Wahab > wrote: >> On 19/05/16 15:54, Matthew Wahab wrote: >>> On 18/05/16 16:20, Joseph Myers wrote: On Wed, 18 May 2016, Matthew Wahab wrote: In short: instructions for direct H

[Patch, testsuite] Fix some more bogus failures for avr

2016-08-03 Thread Senthil Kumar Selvaraj
Hi, Committed below patch to trunk as obvious. Regards Senthil 2016-08-03 Senthil Kumar Selvaraj * gcc.dg/init-excess-2.c: Require int32plus. * gcc.dg/pr44024.c: Skip if target keeps null pointer checks. * gcc.dg/pr59963-2.c: Require int32plus. * gcc.dg/pr710

Re: [PR70920] transform (intptr_t) x eq/ne CST to x eq/ne (typeof x) cst

2016-08-03 Thread Matthew Wahab
On 29/07/16 15:32, Prathamesh Kulkarni wrote: On 29 July 2016 at 12:42, Richard Biener wrote: On Fri, 29 Jul 2016, Prathamesh Kulkarni wrote: On 28 July 2016 at 19:18, Richard Biener wrote: On Thu, 28 Jul 2016, Prathamesh Kulkarni wrote: On 28 July 2016 at 15:58, Andreas Schwab wrote: O

Re: [PATCH RFC] do not throw in std::make_exception_ptr

2016-08-03 Thread Gleb Natapov
On Wed, Aug 03, 2016 at 12:47:30PM +0100, Jonathan Wakely wrote: > > > > > > > + } // namespace __exception_ptr > > > > > > > > /// Obtain an exception_ptr pointing to a copy of the supplied object. > > > > template > > > > @@ -173,7 +184,15 @@ namespace std > > > > #if __cpp_exceptions > > >

Re: [PR57371] transform (double)i eq/ne 0 to i eq/ne 0

2016-08-03 Thread Richard Biener
On Wed, 3 Aug 2016, Prathamesh Kulkarni wrote: > Hi, > The attached patch tries to transform > (double)i eq/ne 0 to i eq/ne 0 > AFAIU from Joseph's comment 1 in PR, the transform should be safe with > -fno-trapping-math ? > Bootstrap+tested on x86_64-unknown-linux-gnu in progress. Couldn't this e

Re: [PATCH RFC] do not throw in std::make_exception_ptr

2016-08-03 Thread Jonathan Wakely
On 03/08/16 15:02 +0300, Gleb Natapov wrote: On Wed, Aug 03, 2016 at 12:47:30PM +0100, Jonathan Wakely wrote: Huh. If I'm reading the ABI spec correctly, we should terminate if the copy constructor throws. I'll make it terminate like you've suggested then. Let's leave it as you had it origin

[PATCH, COMMITTED] Add branch_changer.py script to maintainer-scripts

2016-08-03 Thread Martin Liška
Hello. I've installed (r239066) the script which is used by maintainers to update PRs in a batch mode. Martin >From 2b63c1aebe452fc67ea60ff9ab4f3173300015a9 Mon Sep 17 00:00:00 2001 From: marxin Date: Wed, 3 Aug 2016 14:39:17 +0200 Subject: [PATCH] Add branch_changer.py script to maintainer-scr

Re: [PATCH 14/17][ARM] Add NEON FP16 instrinsics.

2016-08-03 Thread Ramana Radhakrishnan
On Mon, Jul 4, 2016 at 3:15 PM, Matthew Wahab wrote: > On 17/05/16 15:46, Matthew Wahab wrote: >> The ARMv8.2-A architecture introduces an optional FP16 extension adding >> half-precision floating point data processing instructions to the >> existing Adv.SIMD (NEON) support. A future version of th

Re: [ARM][PATCH] Add support for overflow add, sub, and neg operations

2016-08-03 Thread Christophe Lyon
On 2 August 2016 at 10:13, Michael Collison wrote: > Hi, > > This patch improves code generations for builtin arithmetic overflow > operations for the arm backend. As an example for a simple test case such as: > > int > fn3 (int x, int y, int *ovf) > { > int res; > *ovf = __builtin_sadd_overf

Re: [PATCH 8/17][ARM] Add VFP FP16 arithmetic instructions.

2016-08-03 Thread Matthew Wahab
On 03/08/16 12:52, Ramana Radhakrishnan wrote: On Thu, Jul 28, 2016 at 12:37 PM, Ramana Radhakrishnan wrote: On Mon, Jul 4, 2016 at 3:02 PM, Matthew Wahab wrote: On 19/05/16 15:54, Matthew Wahab wrote: On 18/05/16 16:20, Joseph Myers wrote: On Wed, 18 May 2016, Matthew Wahab wrote: In shor

Re: [PATCH] Do not enable -fprefetch-loop-arrays with -fprofile-use (PR, gcov-profile/58250).

2016-08-03 Thread Richard Biener
On Wed, Aug 3, 2016 at 11:54 AM, Martin Liška wrote: > Hi. > > I've just grabbed patch a that was suggested in the PR (and IMHO makes sense). > > Patch can bootstrap on ppc64le-redhat-linux and survives regression tests. > > Ready to be installed? Err, but what was suggested, not enable it with -

[PATCH] gcov tool: Implement Hawick's algorithm for cycle detection, (PR gcov-profile/67992)

2016-08-03 Thread Martin Liška
Hello. As I've going through all PRs related to gcov-profile, I've noticed this PR. Current implementation of cycle detection in gcov is very poor, leading to extreme run time for cases like mentioned in the PR (which does not contain a cycle). Thank to Joshua, I've grabbed his patch and removed

Re: [PATCH] Do not enable -fprefetch-loop-arrays with -fprofile-use (PR, gcov-profile/58250).

2016-08-03 Thread Martin Liška
On 08/03/2016 03:28 PM, Richard Biener wrote: > On Wed, Aug 3, 2016 at 11:54 AM, Martin Liška wrote: >> Hi. >> >> I've just grabbed patch a that was suggested in the PR (and IMHO makes >> sense). >> >> Patch can bootstrap on ppc64le-redhat-linux and survives regression tests. >> >> Ready to be in

Re: [PATCH PR71734] Add missed check that reference defined inside loop.

2016-08-03 Thread Richard Biener
On Fri, Jul 29, 2016 at 4:00 PM, Yuri Rumyantsev wrote: > Hi Richard. > > It turned out that the fix proposed by you does not work for liggomp > tests simd3 and simd4. > The reason is that we can't change safelen value for references not > defined inside loop. So I add missed check on it to patch.

Re: [PATCH] Teach VRP to truncate the case ranges of a switch

2016-08-03 Thread Richard Biener
On Wed, Aug 3, 2016 at 6:00 AM, Patrick Palka wrote: > VRP currently has functionality to eliminate case labels that lie > completely outside of the switch operand's value range. This patch > complements this functionality by teaching VRP to also truncate the case > label ranges that partially ov

Re: [PATCH][RFC] PR middle-end/22141 GIMPLE store widening pass

2016-08-03 Thread Richard Biener
On Wed, Aug 3, 2016 at 11:59 AM, Kyrill Tkachov wrote: > Hi Richard, > > On 18/07/16 13:22, Richard Biener wrote: > > > >> + /* Record the original statements so that we can keep track of >> +statements emitted in this pass and not re-process new >> +statements. */ >> +

Re: [PATCH] gcov tool: Implement Hawick's algorithm for cycle detection, (PR gcov-profile/67992)

2016-08-03 Thread Richard Biener
On Wed, Aug 3, 2016 at 3:31 PM, Martin Liška wrote: > Hello. > > As I've going through all PRs related to gcov-profile, I've noticed this PR. > Current implementation of cycle detection in gcov is very poor, leading to > extreme run time > for cases like mentioned in the PR (which does not contai

Re: [PATCH][RFC] PR middle-end/22141 GIMPLE store widening pass

2016-08-03 Thread Kyrill Tkachov
On 03/08/16 14:50, Richard Biener wrote: On Wed, Aug 3, 2016 at 11:59 AM, Kyrill Tkachov wrote: Hi Richard, On 18/07/16 13:22, Richard Biener wrote: + /* Record the original statements so that we can keep track of +statements emitted in this pass and not re-process new +

Re: [PATCH] gcov tool: Implement Hawick's algorithm for cycle detection, (PR gcov-profile/67992)

2016-08-03 Thread Nathan Sidwell
Martin, As I've going through all PRs related to gcov-profile, I've noticed this PR. Current implementation of cycle detection in gcov is very poor, leading to extreme run time for cases like mentioned in the PR (which does not contain a cycle). Thank to Joshua, I've grabbed his patch and remov

Re: [PATCH] Fix wrong code on aarch64 due to paradoxical subreg

2016-08-03 Thread Bernd Edlinger
Hi, Is it OK for the trunk? I guess so, but need an explicit OK. Thanks Bernd. On 08/01/16 20:52, Bernd Edlinger wrote: > Hi Jeff, > > On 08/01/16 19:54, Jeff Law wrote: >> Looks like you've probably nailed it. It'll be interesting see if >> there's any fallout (though our RTL optimizer testi

[PATCH] Adjust some PRE testcases

2016-08-03 Thread Richard Biener
Tested on x86_64-unknown-linux-gnu, applied. Richard. 2016-08-03 Richard Biener * gcc.dg/tree-ssa/loadpre2.c: Disable LIM. * gcc.dg/tree-ssa/loadpre21.c: Likewise. * gcc.dg/tree-ssa/loadpre22.c: Likewise. * gcc.dg/tree-ssa/ssa-pre-23.c: Likewise. Index: gcc.d

[hsa-branch] Outline HSA function attribute modification

2016-08-03 Thread Martin Jambor
Hi, since future changes will want to do this from two places, this patch outlines function attribute changes to a special private method. Martin 2016-07-20 Martin Jambor * hsa.h (hsa_summary_t): Add provate member function process_gpu_implementation_attributes. * hsa

[hsa-branch] Rename m_binded_function to m_bound_function

2016-08-03 Thread Martin Jambor
Hi, past participle of bind is bound, not binded (although ispell for some accepts it for some reason) and so I am going to fix this mistake in the name of the field. I know normally do not do this, but I believe that in this case the only out-of-tree patches affected are mine and so will make an

[hsa-branch] Handle BRIG_OPCODE_DEBUGTRAP in op_output_p

2016-08-03 Thread Martin Jambor
Hi, although BRIG_OPCODE_DEBUGTRAP isn't currently generated by gcc trunk, some experimental patches that I have do and it is one of the rare cases where registers in zeroth operand are input, so it should be recognized as such by hsa_insn_basic::op_output_p. Martin 2016-07-04 Martin Jambor

[hsa-branch] Minor tweak to HSA_SORRY macros

2016-08-03 Thread Martin Jambor
Hi, the whole point of having HSA_SORRY be encapsulated in a rather useless while statement is to enforce a semicolon after its each expansion, like if it was a function. To my surprise, I found the semicolon is already there and missing at two invocation points. I plan to change the macro to be

[hsa-branch] Cleanups of hsa_insns_signal and hsa_insns_queue

2016-08-03 Thread Martin Jambor
Hi, currently, hsa_insn_signal is a descendant of hsa_insn_atomic, even though its BRIG representation actually contains fewer fields than the atomic BRIG representation so if anything, it should be the other way around. But this patch actually makes both direct descendants of hsa_insn_basic beca

[hsa-branch] Switch dynamic parallelism off by default

2016-08-03 Thread Martin Jambor
Hi, the dynamic parallelism (i.e. ability to execute one HSA from another and in particular wait for its completion) path is unreliable and problematic in many ways with no fix in sight. I do not want to remove the code just yet, it is likely to prove useful at least as a reference, but am going

[hsa-branch] Outline some functionality in HSA libgomp plugin

2016-08-03 Thread Martin Jambor
Hi, the patch below contains just code reorganization that I'd like to commit to trunk to minimize non-functional differences between hsa branch, where I'll need these new functions also at different places. Thanks, Martin 2016-07-20 Martin Jambor libgomp/plugin/ * plugin-hsa.c (in

[hsa-branch] Refactoring of handling atomiscs

2016-08-03 Thread Martin Jambor
Hi, the following patch is a part of an effort to implement handling of HSA signal builtins but contains mainly refactoring and tiny fixes of issues that I came accross when changing the code. I have divided this work in this way so that this part can leter be cherry-picked for trunk, unlike the

Re: [PATCH 8/17][ARM] Add VFP FP16 arithmetic instructions.

2016-08-03 Thread James Greenhalgh
On Wed, Aug 03, 2016 at 12:52:42PM +0100, Ramana Radhakrishnan wrote: > On Thu, Jul 28, 2016 at 12:37 PM, Ramana Radhakrishnan > wrote: > > On Mon, Jul 4, 2016 at 3:02 PM, Matthew Wahab > > wrote: > >> On 19/05/16 15:54, Matthew Wahab wrote: > >>> On 18/05/16 16:20, Joseph Myers wrote: > On

[PATCH] Fix c-c++-common/ubsan/pr71403-?.c testcases

2016-08-03 Thread Richard Biener
c-c++-common/ubsan is tortured, no need to specify -O3 (in fact it's a waste of time). Committed. Richard. 2016-08-03 Richard Biener * c-c++-common/ubsan/pr71403-1.c: Use dg-additional-options and remove -O3. * c-c++-common/ubsan/pr71403-2.c: Likewise. * c-c+

[hsa-branch] Update existing hsa builtin handling

2016-08-03 Thread Martin Jambor
Hi, this patch updates the neames of HSA builtins that are emitted by omp lowering so that their names correspond to the HSA instruction names they are implemented by. This avoids a lot of confusion when we add more HSA builtins for other special operations the architecture has. Moreover, it cle

Re: [PATCH] Fix wrong code on aarch64 due to paradoxical subreg

2016-08-03 Thread Jeff Law
On 08/02/2016 02:16 PM, Bernd Schmidt wrote: On 08/02/2016 06:46 PM, Segher Boessenkool wrote: On Tue, Aug 02, 2016 at 09:21:34AM -0600, Jeff Law wrote: However I think there are more paradoxical subregs generated all over, but the aarch64 insv code pattern did trigger more hidden bugs than any

Re: [PATCH][RFC] PR middle-end/22141 GIMPLE store widening pass

2016-08-03 Thread Kyrill Tkachov
Hi Richard, On 18/07/16 13:22, Richard Biener wrote: On Fri, Jul 15, 2016 at 5:13 PM, Kyrill Tkachov wrote: + /* Record the original statements so that we can keep track of +statements emitted in this pass and not re-process new +statements. */ + for (gsi = gsi_a

[PATCH 1/4] selftest.h: Add ASSERT_TRUE_AT and ASSERT_FALSE_AT

2016-08-03 Thread David Malcolm
I split out the selftest.h changes from v2 of the kit for ease of review; here they are. Successfully bootstrapped®rtested in conjunction with the rest of the patch kit on x86_64-pc-linux-gnu. OK for trunk? gcc/ChangeLog: * selftest.h (ASSERT_TRUE): Reimplement in terms of... (AS

[PATCH 4/4] c-format.c: suggest the correct format string to use (PR c/64955)

2016-08-03 Thread David Malcolm
This adds fix-it hints to c-format.c so that it can (sometimes) suggest the format string the user should have used. The patch adds selftests for the new code in c-format.c. These selftests are thus lang-specific. This is the first time we've had lang-specific selftests, and hence the patch also

[PATCH 3/4] Use class substring_loc in c-format.c (PR c/52952)

2016-08-03 Thread David Malcolm
This patch updates c-format.c to use the new class substring_loc, added in the previous patch, replacing location_column_from_byte_offset. Hence with this patch, Wformat can underline the precise erroneous format string in many more cases. The patch also introduces two new functions for emitting W

[PATCH 2/4] (v3) On-demand locations within string-literals

2016-08-03 Thread David Malcolm
Changes in v3: - Avoid including cpplib.h from input.h - Properly handle stringified macro arguments (with tests for this) - Minor whitespace fixes - Move selftest.h changes to a separate patch Changes in v2: - Tweaks to substring location selftests - Many more selftests (EBCDIC, the various wide

Re: [PATCH] Teach VRP to truncate the case ranges of a switch

2016-08-03 Thread Jeff Law
On 08/03/2016 07:47 AM, Richard Biener wrote: On Wed, Aug 3, 2016 at 6:00 AM, Patrick Palka wrote: VRP currently has functionality to eliminate case labels that lie completely outside of the switch operand's value range. This patch complements this functionality by teaching VRP to also truncat

[PATCH] Remove deprecated has_trivial_xxx traits

2016-08-03 Thread Jonathan Wakely
These non-standard traits have been deprecated since GCC 5.1 and as proposed recently I'm removing them for GCC 7. * include/std/type_traits (has_trivial_default_constructor): Remove. (has_trivial_copy_constructor, has_trivial_copy_assign): Likewise. * testsuite/20_util/ha

Re: [PATCH] Teach VRP to truncate the case ranges of a switch

2016-08-03 Thread David Malcolm
On Wed, 2016-08-03 at 15:47 +0200, Richard Biener wrote: > On Wed, Aug 3, 2016 at 6:00 AM, Patrick Palka > wrote: > > VRP currently has functionality to eliminate case labels that lie > > completely outside of the switch operand's value range. This patch > > complements this functionality by teac

Re: [PATCH] Fix wrong code on aarch64 due to paradoxical subreg

2016-08-03 Thread Jeff Law
On 08/01/2016 12:52 PM, Bernd Edlinger wrote: Hi Jeff, On 08/01/16 19:54, Jeff Law wrote: > Looks like you've probably nailed it. It'll be interesting see if > there's any fallout (though our RTL optimizer testing is pretty weak, so > even if there were, I doubt we'd catch it). > If there is,

[patch,avr] PR 55181 work around do_store_flag producing shifts for bit extractions

2016-08-03 Thread Georg-Johann Lay
do_store_flag has hard-coded right shift for testing a bit, I found no way to let the backend direct expr.c into generating an extzv. As rectifying the middle-end is beyond by time frame, here is yet another kludge to catch the situation by means of a pattern. Also hints are welcome if I ove

[PATCH] Enable Mathematical Special Functions for C++17

2016-08-03 Thread Jonathan Wakely
The contents of the Special Functions IS were added to the C++17 draft, so this enables them by default for C++17. * include/bits/c++config (_GLIBCXX_USE_STD_SPEC_FUNCS): Define for C++17, or for C++11/C++14 when __STDCPP_WANT_MATH_SPEC_FUNCS__ is true. * include/b

Re: [PATCH 1/3] (v2) On-demand locations within string-literals

2016-08-03 Thread Jeff Law
On 07/29/2016 11:27 AM, David Malcolm wrote: On Fri, 2016-07-29 at 17:53 +0100, Manuel López-Ibáñez wrote: On 29 July 2016 at 16:25, David Malcolm wrote: FWIW, it appears that clang uses the on-demand approach; the relevant code appears to be StringLiteral::getLocationOfByte: http://clang.llv

Re: [PATCH 1/3] (v2) On-demand locations within string-literals

2016-08-03 Thread Jeff Law
On 07/29/2016 03:42 PM, Joseph Myers wrote: On Tue, 26 Jul 2016, David Malcolm wrote: This patch implements precise tracking of source locations for the individual chars within string literals, so that we can e.g. underline specific ranges in -Wformat diagnostics. It handles macros, concatenat

Re: [PATCH] Teach VRP to truncate the case ranges of a switch

2016-08-03 Thread Jeff Law
On 08/03/2016 09:29 AM, David Malcolm wrote: On Wed, 2016-08-03 at 15:47 +0200, Richard Biener wrote: On Wed, Aug 3, 2016 at 6:00 AM, Patrick Palka wrote: VRP currently has functionality to eliminate case labels that lie completely outside of the switch operand's value range. This patch compl

Re: [PATCH 1/4] selftest.h: Add ASSERT_TRUE_AT and ASSERT_FALSE_AT

2016-08-03 Thread Jeff Law
On 08/03/2016 09:45 AM, David Malcolm wrote: I split out the selftest.h changes from v2 of the kit for ease of review; here they are. Successfully bootstrapped®rtested in conjunction with the rest of the patch kit on x86_64-pc-linux-gnu. OK for trunk? gcc/ChangeLog: * selftest.h (ASSER

Re: [PATCH, contrib] download_prerequisites: check for existing symlinks before making new ones

2016-08-03 Thread Jeff Law
On 07/21/2016 01:39 PM, Eric Gallager wrote: On 7/21/16, Jeff Law wrote: On 07/14/2016 01:57 PM, Eric Gallager wrote: So apparently the "-f" flag properly overwrites symlinks that point to regular files, but I also did this in my gcc builddir: $ mkdir isl-0.1.2.3 $ ln -s isl-0.1.2.3 isl-s $

Re: [RFC, v2] Test coverage for --param boundary values

2016-08-03 Thread Jeff Law
On 08/01/2016 06:02 AM, Martin Liška wrote: On 07/28/2016 11:26 PM, Joseph Myers wrote: On Mon, 18 Jul 2016, Martin Liška wrote: Well, I can imaging a guard which will test whether "$objdir/../../params.options" file exits, and if so, then the tests are executed? Is it acceptable approach? T

Re: [PATCH] Fix unsafe function attributes for special functions (PR 71876)

2016-08-03 Thread Jeff Law
On 07/29/2016 01:31 PM, Bernd Edlinger wrote: On 07/29/16 19:28, Jeff Law wrote: On 07/26/2016 09:48 AM, Bernd Edlinger wrote: Richard, this was the latest version of the patch: https://gcc.gnu.org/ml/gcc-patches/2016-07/msg01481.html Are you OK with my clean-up of the presumably dead functi

[avr,RFC,patch] Add var attribute "absdata" to support LDS / STS on AVR_TINY.

2016-08-03 Thread Georg-Johann Lay
This is a proposal to support LDS / STS instructions on AVR_TINY. Currently the fact that the compile won't generate LDS / STS instructions is a major source of code bloat. The patch adds a new variable attribute so that the user can assert that address range of respective static-storage data

Go patch committed: stack allocate non-escaping expressions

2016-08-03 Thread Ian Lance Taylor
This patch by Chris Manghane allocates expressions that do not escape on the stack. This only happens when doing escape analysis, which is still not enabled by default. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline. Ian Index: gcc/go/gofrontend/MERGE ==

[PATCH GCC]Simplify interface for simplify_using_initial_conditions

2016-08-03 Thread Bin Cheng
Hi, When I introduced parameter STOP for expand_simple_operations, I also added it for simplify_using_initial_conditions. The STOP argument is also passed to simplify_using_initial_conditions in simple_iv_with_niters/loop_exits_before_overflow. After analyzing case reported by PR72772, I thin

[PATCH PR72772]Also check equality for expanded iv base.

2016-08-03 Thread Bin Cheng
Hi, Following previous patch, this one fixes PR72772 by checking equality for expanded iv base. Richard is fixing the PR by removing degenerate PHI at the first place, but I think this one also catches more cases. Bootstrap and test on x86_64 and AArch64. Is it OK? Thanks, bin 2016-08-02 Bin

[PATCH testsuite/PR33707]Add test case.

2016-08-03 Thread Bin Cheng
Hi, The case has already been fixed by my unsigned improvement for scev/niter, and it can be vectorized successfully. This patch simply adds a test for it. Test result checked on x86_64. Is it OK? Thanks, bin gcc/testsuite/ChangeLog 2016-08-02 Bin Cheng PR tree-optimization/33707

[PATCH] Define __cpp_lib_generic_associative_lookup feature-test macro

2016-08-03 Thread Jonathan Wakely
This featue is supported, so we should define the macro. I've also added tests for a couple of other macros, which we already define. * include/bits/stl_function.h: Remove commented-out macro. * include/bits/stl_tree.h (__cpp_lib_generic_associative_lookup): Define featur

Re: Implement -Wimplicit-fallthrough (take 2): questionable code

2016-08-03 Thread Jeff Law
On 07/27/2016 10:53 AM, Marek Polacek wrote: These are the cases where I wasn't sure if the falls through were intentional or not. This patch has been tested on powerpc64le-unknown-linux-gnu, aarch64-linux-gnu, and x86_64-redhat-linux. 2016-07-27 Marek Polacek PR c/7652 gcc/

Re: [patch,avr] PR 55181 work around do_store_flag producing shifts for bit extractions

2016-08-03 Thread Denis Chertykov
2016-08-03 18:41 GMT+03:00 Georg-Johann Lay : > do_store_flag has hard-coded right shift for testing a bit, I found no way > to let the backend direct expr.c into generating an extzv. As rectifying > the middle-end is beyond by time frame, here is yet another kludge to catch > the situation by mea

[PTX] fix worker propagation ICE

2016-08-03 Thread Nathan Sidwell
The PTX backend could ice when generating a state propagation sequence entering partitioned execution. Although the stack frame is DImode aligned, nothing actually rounds the size up consistent with that. That meant we could encounter frames that were not a DImode multiple in size. Which brok

Re: [PR57371] transform (double)i eq/ne 0 to i eq/ne 0

2016-08-03 Thread Joseph Myers
On Wed, 3 Aug 2016, Georg-Johann Lay wrote: > On 03.08.2016 09:53, Prathamesh Kulkarni wrote: > > Hi, > > The attached patch tries to transform > > (double)i eq/ne 0 to i eq/ne 0 > > AFAIU from Joseph's comment 1 in PR, the transform should be safe with > > -fno-trapping-math ? > > What about sig

Re: [PATCH] Fix wrong code on aarch64 due to paradoxical subreg

2016-08-03 Thread Bernd Edlinger
On 08/03/16 17:38, Jeff Law wrote: > cse.c changes look good, but I'd really like to see a testcase for each > issue in the dejagnu framework. Extra points if you tried to build a > unit test using David M's framework, but that isn't required. > > The testcase from 70903 ought to be trivial to add

Re: [PATCH 8/17][ARM] Add VFP FP16 arithmetic instructions.

2016-08-03 Thread Joseph Myers
On Wed, 3 Aug 2016, Ramana Radhakrishnan wrote: > Joseph, do you have any opinions on whether we should be extending the > standard pattern names or not for btrunc, ceil, round, floor, > nearbyint, rint, lround, lfloor and lceil optabs for the HFmode > quantities ? If the semantics match a standa

Re: [PR57371] transform (double)i eq/ne 0 to i eq/ne 0

2016-08-03 Thread Joseph Myers
On Wed, 3 Aug 2016, Richard Biener wrote: > Couldn't this even be > > (cmp (float @0) REAL_CST@1) > (with > { > HOST_WIDE_INT n = real_to_integer (TREE_REAL_CST (@1)); > REAL_VALUE_TYPE cint; > real_from_integer (&cint, VOIDmode, n, SIGNED); > } > (if (real_identical (&c, &cin

Re: [PATCH] accept flexible arrays in struct in unions (c++/71912 - [6/7 regression])

2016-08-03 Thread Jason Merrill
On Tue, Aug 2, 2016 at 10:13 PM, Martin Sebor wrote: > The change let me replace an if statement and the ANONCTX data > member with a new function plus a conditional. I'll let you be > the judge but to me it doesn't seem like an improvement. You can use the existing context_for_name_lookup inste

[PATCH] Define C++17 feature-test macros

2016-08-03 Thread Jonathan Wakely
This just defines feature-test macros for some C++17 features that we already support. * include/bits/allocator.h (__cpp_lib_incomplete_container_elements): Define feature-test macro. * include/bits/range_access.h (__cpp_lib_array_constexpr): Likewise. * include/st

[PATCH] Define std::owner_less specialization (P0074R0)

2016-08-03 Thread Jonathan Wakely
This was my proposal, so it's about time we supported it. * include/bits/shared_ptr.h (owner_less): Add default template argument. * include/bits/shared_ptr_base.h (_Sp_owner_less): Define specialization. (owner_less): Define specialization. * inclu

[PATCH] Define std::as_const

2016-08-03 Thread Jonathan Wakely
Another C++17 feature. * include/std/utility (as_const): Define. * testsuite/20_util/as_const/1.cc: New test. * testsuite/20_util/as_const/rvalue_neg.cc: New test. Tested powerpc64-linux, committed to trunk. commit c6d91a7d6d5ec64f8c4e84cd79aadde72f01a4f4 Author: Jonatha

one more patch for PR72778

2016-08-03 Thread Vladimir N Makarov
The following patch fixes a bug reported by Uros on a bootstrap with golang: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=72778 The patch was bootstrapped on x86-64 with golang. Committed as rev. 239091. Index: ChangeLog === -

Re: [PATCH] accept flexible arrays in struct in unions (c++/71912 - [6/7 regression])

2016-08-03 Thread Martin Sebor
Do you have ideas about how to improve the naming? Perhaps change TYPE_ANONYMOUS_P to TYPE_NO_LINKAGE_NAME? I haven't thought about changing names but TYPE_NO_LINKAGE_NAME seems better than TYPE_ANONYMOUS_P. Or perhaps TYPE_UNNAMED_P. TYPE_UNNAMED_P would work but it wouldn't be a replaceme

[PATCH] Define std::shared_ptr::weak_type

2016-08-03 Thread Jonathan Wakely
Another tiny C++17 feature. * include/bits/shared_ptr.h (shared_ptr::weak_type): Define. * include/bits/shared_ptr_base.h (__shared_ptr::weak_type): Define. * testsuite/20_util/shared_ptr/cons/43820_neg.cc: Adjust dg-error. * testsuite/20_util/shared_ptr/requiremen

[PATCH] Define feature-test macro for std::enable_shared_from_this

2016-08-03 Thread Jonathan Wakely
Another feature we already support, so just define the macro. * include/bits/shared_ptr_base.h (__cpp_lib_enable_shared_from_this): Define feature-test macro. * testsuite/20_util/enable_shared_from_this/members/reinit.cc: Test for the macro. Tested x86_64-linux, c

C++ PATCH to allow constexpr ctor with typedef declaration in C++11 (c++/70229)

2016-08-03 Thread Marek Polacek
In C++11, constexpr constructor must have an empty body except for several cases, one of them being: - typedef declarations and alias-declarations that do not define classes or enumerations But we were rejecting constexpr constructors consisting of a typedef declaration only. Bootstrapped/regtes

Go patch committed: use a cache for interface methods

2016-08-03 Thread Ian Lance Taylor
The Go frontend constructs the list of interface methods in a few different cases. These can be called frequently, but the list is reconstructed each time. This patch by Than McIntosh uses a cache. It reduces the memory usage of the frontend from around 16mb to around 10mb when compiling the fmt

Re: [PATCH] accept flexible arrays in struct in unions (c++/71912 - [6/7 regression])

2016-08-03 Thread Jason Merrill
On Wed, Aug 3, 2016 at 3:10 PM, Martin Sebor wrote: Do you have ideas about how to improve the naming? Perhaps change TYPE_ANONYMOUS_P to TYPE_NO_LINKAGE_NAME? >>> >>> I haven't thought about changing names but TYPE_NO_LINKAGE_NAME >>> seems better than TYPE_ANONYMOUS_P. >> >> Or perhap

Re: [PATCH] accept flexible arrays in struct in unions (c++/71912 - [6/7 regression])

2016-08-03 Thread Martin Sebor
On 08/03/2016 02:01 PM, Jason Merrill wrote: On Wed, Aug 3, 2016 at 3:10 PM, Martin Sebor wrote: Do you have ideas about how to improve the naming? Perhaps change TYPE_ANONYMOUS_P to TYPE_NO_LINKAGE_NAME? I haven't thought about changing names but TYPE_NO_LINKAGE_NAME seems better than TYPE_

Re: [PATCH] accept flexible arrays in struct in unions (c++/71912 - [6/7 regression])

2016-08-03 Thread Jason Merrill
On Wed, Aug 3, 2016 at 4:23 PM, Martin Sebor wrote: > On 08/03/2016 02:01 PM, Jason Merrill wrote: >> On Wed, Aug 3, 2016 at 3:10 PM, Martin Sebor wrote: >> >> Do you have ideas about how to improve the naming? Perhaps change >> TYPE_ANONYMOUS_P to TYPE_NO_LINKAGE_NAME? > > I

Re: [PATCH] Fix wrong code on aarch64 due to paradoxical subreg

2016-08-03 Thread Jeff Law
On 08/03/2016 11:41 AM, Bernd Edlinger wrote: On 08/03/16 17:38, Jeff Law wrote: cse.c changes look good, but I'd really like to see a testcase for each issue in the dejagnu framework. Extra points if you tried to build a unit test using David M's framework, but that isn't required. The testca

fix fallout of pr22051-2.c on arm

2016-08-03 Thread Prathamesh Kulkarni
Hi, The attached patch fixes pr22051-2.c which regressed due to r238754. Matthew, could you please confirm if this patch fixes the test-case for you ? Bootstrapped and tested on x86_64-unknown-linux-gnu. Cross tested on arm*-*-*. OK for trunk ? Thanks, Prathamesh 2016-08-04 Prathamesh Kulkarni

Re: [PATCH testsuite/PR33707]Add test case.

2016-08-03 Thread Jeff Law
On 08/03/2016 10:36 AM, Bin Cheng wrote: Hi, The case has already been fixed by my unsigned improvement for scev/niter, and it can be vectorized successfully. This patch simply adds a test for it. Test result checked on x86_64. Is it OK? Thanks, bin gcc/testsuite/ChangeLog 2016-08-02 Bin Ch

Re: [PR70920] transform (intptr_t) x eq/ne CST to x eq/ne (typeof x) cst

2016-08-03 Thread Prathamesh Kulkarni
On 3 August 2016 at 17:27, Matthew Wahab wrote: > On 29/07/16 15:32, Prathamesh Kulkarni wrote: >> >> On 29 July 2016 at 12:42, Richard Biener wrote: >>> >>> On Fri, 29 Jul 2016, Prathamesh Kulkarni wrote: >>> On 28 July 2016 at 19:18, Richard Biener wrote: > > On Thu, 28 Jul 2016,

Re: C++ PATCH to allow constexpr ctor with typedef declaration in C++11 (c++/70229)

2016-08-03 Thread Jason Merrill
OK. On Wed, Aug 3, 2016 at 3:49 PM, Marek Polacek wrote: > In C++11, constexpr constructor must have an empty body except for > several cases, one of them being: > - typedef declarations and alias-declarations that do not define > classes or enumerations > But we were rejecting constexpr constr

Re: [PATCH GCC]Simplify interface for simplify_using_initial_conditions

2016-08-03 Thread Jeff Law
On 08/03/2016 10:35 AM, Bin Cheng wrote: Hi, When I introduced parameter STOP for expand_simple_operations, I also added it for simplify_using_initial_conditions. The STOP argument is also passed to simplify_using_initial_conditions in simple_iv_with_niters/loop_exits_before_overflow. After

Re: [PATCH] adjust spelling of constant expression in C++ diagnostics

2016-08-03 Thread Jason Merrill
OK. On Tue, Aug 2, 2016 at 2:44 PM, Martin Sebor wrote: > My recently committed patch for c++/60760 triggered test suite > failures in ILP32 mode due to a couple of problems: > > 1) The test assumed that (void*)1 will appear in GCC diagnostics >as 1ul, which is correct in LP64 but not in ILP3

Re: [PATCH PR72772]Also check equality for expanded iv base.

2016-08-03 Thread Jeff Law
On 08/03/2016 10:35 AM, Bin Cheng wrote: Hi, Following previous patch, this one fixes PR72772 by checking equality for expanded iv base. Richard is fixing the PR by removing degenerate PHI at the first place, but I think this one also catches more cases. Bootstrap and test on x86_64 and AArch6

Re: [PATCH] Fix ICE on invalid variable template instantiation (PR c++/72759)

2016-08-03 Thread Jason Merrill
Why not check for error_mark_node right after the tsubst_template_args? On Tue, Aug 2, 2016 at 10:06 AM, Patrick Palka wrote: > This patch fixes PR c++/72759. The problem seems to be that when > instantiating a variable template, we fail to propagate error_mark_node > when its template arguments

[Committed] Add testcase that ICEs after loop splitting patch

2016-08-03 Thread Andrew Pinski
Hi, I committed a testcase that ICEs after applying "Gimple loop splitting v2" patch to a GCC 6. The IV and the bounds were two different types which was causing the ICE to happen. Thanks, Andrew Pinski ChangeLog: * gcc.c-torture/compile/20160802-1.c: New testcase. Index: testsuite/gcc.c-tort

[PATCH/AARCH64] Add ThunderX vector cost model

2016-08-03 Thread Andrew Pinski
Hi, This patch adds to the thunderx model, the vector cost model. I benchmarked this on SPEC CPU INT 2006 and got a small speed up. I have a few more cost model patches that I am going upstream but they are going to be split up. OK? Bootstrapped and tested on aarch64-linux-gnu with no regress

Re: libgo patch committed: Update to 1.7rc3

2016-08-03 Thread Ian Lance Taylor
On Thu, Jul 28, 2016 at 2:29 AM, Uros Bizjak wrote: > >> I have committed a patch to update libgo to the 1.7rc3 release >> candidate. This is very close to the upcoming 1.7 release. As usual >> with libgo updates, the patch is too large to include in this e-mail >> message. I've appended the ch

Re: libgo patch committed: Update to 1.7rc3

2016-08-03 Thread Ian Lance Taylor
On Thu, Jul 28, 2016 at 4:24 AM, Uros Bizjak wrote: > > A new testsuite failure is introduced: > > FAIL: text/template > > on both, x86_64-linux-gnu and alpha-linux-gnu. > > The testcase corrupts stack with a too deep recursion. > > There is a part in libgo/go/text/template/exec.go that should han

Re: [PATCH, rs6000] Switch the rs6000 port over to LRA

2016-08-03 Thread Peter Bergner
On 8/2/16 3:17 PM, Peter Bergner wrote: Now that Vlad has fixed PR69847, which was the last problem holding the rs6000 port from switching from reload to LRA, we are ready to flip the switch. Is the following ok once bootstrap/regtesting on both LE and BE (32 & 64 regtesting) comes out clean?

  1   2   >