Re: [PATCH] integer overflow checking builtins in constant expressions

2016-06-01 Thread Martin Sebor
Unless I hear otherwise, I'll go ahead and change the patch to have only the type-generic built-ins accept a null pointer as an argument. Since Jason doesn't think making it work in C++ 98 is important I modified the patch to keep the Clang-compatibility built-ins unchanged and to remove the

Re: [PATCH] Warn about return with a void expression with -Wreturn-type.

2016-06-01 Thread Martin Sebor
So here's my shot at fixing this in the documentation. Does that look okay? It looks good to me. Just one minor point below. @@ -4055,8 +4055,12 @@ Warn whenever a function is defined with a return type that defaults to @code{int}. Also warn about any @code{return} statement with no return

Re: [PATCH] c++/60760 - arithmetic on null pointers should not be allowed in constant expressions

2016-06-01 Thread Martin Sebor
On 06/01/2016 01:20 PM, Jason Merrill wrote: On 06/01/2016 02:44 PM, Martin Sebor wrote: The new code in cxx_eval_component_reference diagnoses the following problem that's not detected otherwise: struct S { const S *s; }; constexpr S s = { 0 }; constexpr const void *p = >s; Note

[PATCH applied], Backport PowerPC ISA 3.0 xxperm, builtin, and vneg support to GCC 6.2

2016-06-01 Thread Michael Meissner
I applied the following patches that were applied to the trunk to the GCC 6.2 branch: [gcc] 2016-06-01 Michael Meissner Back port from trunk 2016-05-23 Michael Meissner PR target/71201 *

[PATCH applied], Backport PowerPC ISA 3.0 vector d-form to GCC 6.2 branch

2016-06-01 Thread Michael Meissner
After a bootstrap and test, I have applied this backport of the vector d-form patch that I applied to the trunk on May 11th. [gcc] 2016-06-01 Michael Meissner Back port from trunk 2016-05-11 Michael Meissner

New French PO file for 'gcc' (version 6.1.0)

2016-06-01 Thread Translation Project Robot
Hello, gentle maintainer. This is a message from the Translation Project robot. A revised PO file for textual domain 'gcc' has been submitted by the French team of translators. The file is available at: http://translationproject.org/latest/gcc/fr.po (This file, 'gcc-6.1.0.fr.po', has just

[PATCH] zero-length arrays in OpenACC

2016-06-01 Thread Cesar Philippidis
This patch teaches c and c++ front ends and omp-low how to deal with subarray involving GOMP_MAP_FORCE_{PRESENT,TO,FROM,TOFROM} data mappings. As the libgomp test case shows, it might be possible for a subarray to have zero length. This patch fixes that. I also updated *parser_oacc_declare not to

[PATCH 13/21] Fixup to function-tests.c

2016-06-01 Thread David Malcolm
r235817 removed pass_init_datastructures, so function-tests.c no longer needs it. gcc/ChangeLog: * function-tests.c (representation_test::convert_to_ssa): Drop pass_init_datastructures. --- gcc/function-tests.c | 3 --- 1 file changed, 3 deletions(-) diff --git

[PATCH 14/21] Remove x86_64-isms in function-tests.c

2016-06-01 Thread David Malcolm
gcc/ChangeLog: * function-tests.c (TEST_F (representation_test, expansion_to_rtl)): Remove x86_64-isms. --- gcc/function-tests.c | 36 ++-- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/gcc/function-tests.c b/gcc/function-tests.c

[PATCH 15/21] Add selftests to gimple.c

2016-06-01 Thread David Malcolm
Jeff approved an earlier version of this (as unittests/test-gimple.c): https://gcc.gnu.org/ml/gcc-patches/2015-10/msg03304.html > Comment indicates addition. But code actually generates a > MULT_EXPR. Please fix. Fixed > OK if/when prereqs are approved. Minor twiddling if we end > up moving it

[PATCH 19/21] Add rtl-tests.c

2016-06-01 Thread David Malcolm
Jeff approved an earlier version of this (as unittests/test-rtl.c): https://gcc.gnu.org/ml/gcc-patches/2015-10/msg03302.html > OK if/when prereqs are approved. Minor twiddling if we end up > moving it elsewhere or standardizing/reducing header files is >pre-approved. This version puts the tests

[PATCH 05/21] Add selftests for diagnostic-show-locus.c

2016-06-01 Thread David Malcolm
Here's another example of unit tests, this time for an implementation detail within diagnostic-show-locus.c. gcc/ChangeLog: * diagnostic-show-locus.c: Include "selftest.h". (class range_contains_point_tests): New class. (TEST_F (range_contains_point_tests, single_point)):

Re: [PATCH 00/21] Add -fself-test framework for fast, early unit-testing (unittests v5)

2016-06-01 Thread Sandra Loosemore
On 06/01/2016 03:19 PM, David Malcolm wrote: This is effectively v5 of the unittests proposal; for the earlier versions see: * v1: https://gcc.gnu.org/ml/gcc-patches/2015-06/msg00765.html * v2: https://gcc.gnu.org/ml/gcc-patches/2015-06/msg01224.html * v3:

[PATCH 16/21] Add hash-map-tests.c

2016-06-01 Thread David Malcolm
Jeff approved an earlier version of this (as unittests/test-hash-map.c): https://gcc.gnu.org/ml/gcc-patches/2015-10/msg03301.html > OK if/when prereqs are approved. Minor twiddling if we end up > moving it elsewhere or standardizing/reducing header files is > pre-approved. This version moves the

[PATCH 06/21] Convert Levenshtein test from a plugin to a selftest

2016-06-01 Thread David Malcolm
This is an example of converting one of our existing plugin-based tests to run within -fself-test instead. gcc/ChangeLog: * spellcheck.c: Include "selftest.h". (spellcheck_test): New class (TEST_F (spellcheck_test, levenshtein_distance)): New selftest, based on

[PATCH 08/21] Add selftests to tree-cfg.c

2016-06-01 Thread David Malcolm
Jeff approved an older version of this: https://gcc.gnu.org/ml/gcc-patches/2015-10/msg03285.html with: > Unless there's a good reason, drop the presumably redundant tests > and this is OK. Save preapprovald for these changes as the bitmap > patch. This version removes the redundant tests, and

[PATCH 11/21] Add function-tests.c

2016-06-01 Thread David Malcolm
Jeff approved an earlier version of this (as unittests/test-functions.c): https://gcc.gnu.org/ml/gcc-patches/2015-10/msg03310.html with: > There's some if (0) code in here that needs to be eliminated. (done) > The RTL case in particular is probably stretching the limits of what > we can do

[PATCH 21/21] Add selftests to vec.c

2016-06-01 Thread David Malcolm
Jeff approved an earlier version of this (as unittests/test-vec.c): https://gcc.gnu.org/ml/gcc-patches/2015-10/msg03308.html > OK if/when prereqs are approved. Minor twiddling if we end up > moving it elsewhere or standardizing/reducing header files is > pre-approved. This version puts the tests

[PATCH 12/21] Fix warning in function-tests.c

2016-06-01 Thread David Malcolm
Upon porting from gtest.h to selftest.h I ran into this warning which is fatal during bootstrap: In file included from ../../../src/gcc/toplev.c:89:0: ../../../src/gcc/function-tests.c: In member function ‘virtual void {anonymous}::function_test_fndecl_int_void::run()’:

[PATCH] c/70883 - inconsistent error message for calls to __builtin_add_overflow with too few arguments

2016-06-01 Thread Martin Sebor
Jakub, As you requested in the discussion of my arithmetic overflow built-in patch, attached is the subset of the patch to make consistent with other such diagnostics the text of the error message issued for insufficient numbers of arguments in calls to built-in functions such as

[PATCH 18/21] Add selftests to input.c

2016-06-01 Thread David Malcolm
Jeff conditionally approved an earlier version of this (as unittests/test-locations.c): https://gcc.gnu.org/ml/gcc-patches/2015-10/msg03307.html > OK if/when prereqs are approved. Minor twiddling if we end up > moving it elsewhere or standardizing/reducing header files is > pre-approved. > >

[PATCH 10/21] Add selftests to fold-const.c

2016-06-01 Thread David Malcolm
Jeff approved an older version of this (as a separate unittests/test-folding.c): https://gcc.gnu.org/ml/gcc-patches/2015-10/msg03305.html > OK if/when prereqs are approved. Minor twiddling if we end up > moving it elsewhere or standardizing/reducing header files > is pre-approved. gcc/ChangeLog:

[PATCH 17/21] Add hash-set-tests.c

2016-06-01 Thread David Malcolm
Jeff approved an earlier version of this (as unittests/test-hash-set.c): https://gcc.gnu.org/ml/gcc-patches/2015-10/msg03300.html > OK if/when prereqs are approved. Minor twiddling if we end up > moving it elsewhere or standardizing/reducing header files is > pre-approved. This version moves the

[PATCH 20/21] Add selftests to tree.c

2016-06-01 Thread David Malcolm
Jeff approved an earlier version of this (as unittests/test-tree.c): https://gcc.gnu.org/ml/gcc-patches/2015-10/msg03303.html > OK if/when prereqs are approved. Minor twiddling if we end up > moving it elsewhere or standardizing/reducing header files is > pre-approved. This version puts the

[PATCH 09/21] Add selftests to et-forest.c

2016-06-01 Thread David Malcolm
Jeff approved an earlier version of this: https://gcc.gnu.org/ml/gcc-patches/2015-10/msg03295.html > OK if/when prereqs are approved. Minor twiddling if we end up > moving it elsewhere or standardizing/reducing header files > is pre-approved. gcc/ChangeLog: * et-forest.c: Include

[PATCH 04/21] Add -fself-test-regex=

2016-06-01 Thread David Malcolm
This patch adds a way to only run a subset of the tests, by matching a regex against test names. This can also be used to run just one test. gcc/ChangeLog: * common.opt (fself-test-regex=): New option. * selftest.c: Include diagnostic.h, xregex.h, options.h.

[PATCH 07/21] Add selftests to bitmap.c

2016-06-01 Thread David Malcolm
Jeff pre-approved the plugin version of this (as a new file unittests/test-bitmap.c): https://gcc.gnu.org/ml/gcc-patches/2015-10/msg03284.html with: > OK if/when prereqs are approved. Minor twiddling if we end up moving it > elsewhere or standardizing/reducing header files is pre-approved.

[PATCH 02/21] Makefile.in integration

2016-06-01 Thread David Malcolm
Bernd said (in https://gcc.gnu.org/ml/gcc-patches/2015-11/msg01981.html ): > For some of the simpler infrastructure tests such as the ones in this > patch kit (bitmap, vec or wide-int functionality testing and such), > we had the idea of putting these into every ENABLE_CHECKING compiler, > and run

[PATCH 03/21] Various selftest::runner tweaks.

2016-06-01 Thread David Malcolm
* move almost everything to a logfile (albeit without a way of setting it up yet) * tweaks to failure-handling * abort on failure The practical upshot is that the output is much less verbose: * if everything succeeds, the only output is of the form: -fself-test: 576 pass(es); 0 failure(s) in

[PATCH 00/21] Add -fself-test framework for fast, early unit-testing (unittests v5)

2016-06-01 Thread David Malcolm
This is effectively v5 of the unittests proposal; for the earlier versions see: * v1: https://gcc.gnu.org/ml/gcc-patches/2015-06/msg00765.html * v2: https://gcc.gnu.org/ml/gcc-patches/2015-06/msg01224.html * v3: https://gcc.gnu.org/ml/gcc-patches/2015-10/msg02947.html * v4:

[PATCH 01/21] Selftest framework (unittests v5)

2016-06-01 Thread David Malcolm
This is effectively v5 of the unittests proposal; for the earlier versions see: * v1: https://gcc.gnu.org/ml/gcc-patches/2015-06/msg00765.html * v2: https://gcc.gnu.org/ml/gcc-patches/2015-06/msg01224.html * v3: https://gcc.gnu.org/ml/gcc-patches/2015-10/msg02947.html * v4:

Re: [PATCH] rl78.c: fix warning

2016-06-01 Thread DJ Delorie
David Malcolm writes: > gcc/ChangeLog: > * config/rl78/rl78.c (rl78_expand_prologue): Convert local > from int to unsigned. Ok. I'm going to note that the corresponding loop in the epilogue also uses signed, but in that case, it must.

[PATCH] add a test case for PR70688

2016-06-01 Thread Cesar Philippidis
I had already fixed pr70688 in trunk r236678 with the patch I introduced here . This patch introduces a new libgomp test case to verify the fix. I'll apply this patch to trunk and gomp4 as obvious. Cesar 2016-06-01 Cesar Philippidis

[PATCH] Improve XMM16+ handling in *vec_concatv2di

2016-06-01 Thread Jakub Jelinek
Hi! This is the last pattern I'm aware of that didn't have any v/Yv constraints that ought to be changed (there perhaps are others which have v/Yv in some of the alternatives, but not in all the ones that could use it). The testcases show what are the changes useful for. Bootstrapped/regtested

[PATCH] rl78.c: fix warning

2016-06-01 Thread David Malcolm
This configuration in contrib/config-list.mk rl78-elf currently fails to build due to a warning: gcc/config/rl78/rl78.c: In function ‘void rl78_expand_prologue()’: gcc/config/rl78/rl78.c:1381:25: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare]

[PATCH] microblaze.c: fix warnings

2016-06-01 Thread David Malcolm
The two microblaze configurations in contrib/config-list.mk microblaze-elf microblaze-linux currently fail to build due to warnings: microblaze.c: In function 'void insert_wic_for_ilb_runout(rtx_insn*)': microblaze.c:3653:7: error: unused variable 'wic_addr1' [-Werror=unused-variable]

Re: [PATCH] c++/60760 - arithmetic on null pointers should not be allowed in constant expressions

2016-06-01 Thread Jason Merrill
On 06/01/2016 02:44 PM, Martin Sebor wrote: The new code in cxx_eval_component_reference diagnoses the following problem that's not detected otherwise: struct S { const S *s; }; constexpr S s = { 0 }; constexpr const void *p = >s; Note that this falls under core issue 1530, which has

[PATCH, i386] Add native support for VIA C7, Eden and Nano CPUs

2016-06-01 Thread J. Mayer
The following patch adds support and native detection for C7, Eden "Samuel2", Eden "Nehemiah", Eden "Esther", Eden x2, Eden x4, Nano 1xxx, Nano 2xxx, Nano 3xxx, Nano x2 and Nano x4 VIA CPUs. Please CC me to any comment / review / change request. --- diff --git a/gcc/config/i386/driver-i386.c

Re: [PATCH] Warn about return with a void expression with -Wreturn-type.

2016-06-01 Thread Marcin Baczyński
2016-06-01 19:03 GMT+02:00 Martin Sebor : > > On 06/01/2016 10:39 AM, Jakub Jelinek wrote: >> >> On Wed, Jun 01, 2016 at 02:44:22PM +0200, Marcin Baczyński wrote: >>> >>> On 1 Jun 2016 14:07, "Jakub Jelinek" wrote: On Wed, Jun 01, 2016 at

Re: [PATCH] c++/60760 - arithmetic on null pointers should not be allowed in constant expressions

2016-06-01 Thread Martin Sebor
The new code in cxx_eval_component_reference diagnoses the following problem that's not detected otherwise: struct S { const S *s; }; constexpr S s = { 0 }; constexpr const void *p = >s; Note that this falls under core issue 1530, which has not been resolved. I don't quite see the

Re: [Patch, fortran] PR71156 - PURE interface/definition inconsistency: accepts invalid, rejects valid

2016-06-01 Thread Paul Richard Thomas
Committed to 6-branch as revision 237004. Thanks Paul On 1 June 2016 at 16:14, FX wrote: >> 2016-06-01 Paul Thomas >> >>PR fortran/71156 >>* decl.c (copy_prefix): Add checks that the module procedure >>declaration prefixes are compliant

Re: [PATCH] integer overflow checking builtins in constant expressions

2016-06-01 Thread Jason Merrill
On 05/31/2016 06:44 PM, Martin Sebor wrote: Without this change, C or C++ 98 users wouldn't be able to use the built-ins in constant expressions (C++ 98 doesn't allow casting a null pointer in those contexts). I can't imagine that C++98 users care about using these built-ins in constant

Re: [PATCH], Add PowerPC ISA 3.0 MTVSRDD support

2016-06-01 Thread Segher Boessenkool
On Tue, May 31, 2016 at 07:49:55PM -0400, Michael Meissner wrote: > This patch adds support to issue the MTVSRDD on 64-bit ISA 3.0 systems when > the > compiler has a 64-bit value in a GPR, and it wants to create a vector that has > the 64-bit value in both sides of the 128-bit value. > ;;

Re: [PATCH], PR target/71186, Fix PowerPC splat error

2016-06-01 Thread Segher Boessenkool
On Tue, May 31, 2016 at 07:43:22PM -0400, Michael Meissner wrote: > [gcc] > 2016-05-31 Michael Meissner > > PR target/71186 > * config/rs6000/vsx.md (xxspltib__nosplit): Add alternatives > for loading up all 0's or all 1's. > > [gcc/testsuite] >

Re: [patch,openacc] use firstprivate pointers for subarrays in c and c++

2016-06-01 Thread Jakub Jelinek
On Wed, Jun 01, 2016 at 10:33:32AM -0700, Cesar Philippidis wrote: > >>switch (OMP_CLAUSE_MAP_KIND (c)) > >> { > >> case GOMP_MAP_ALLOC: > > | case GOMP_MAP_TO: > > | case GOMP_MAP_FROM: > > | case GOMP_MAP_TOFROM: > > | case GOMP_MAP_ALWAYS_TO: > > | case

Re: [patch,openacc] use firstprivate pointers for subarrays in c and c++

2016-06-01 Thread Cesar Philippidis
On 05/25/2016 09:33 AM, Thomas Schwinge wrote: >> --- gcc/c/c-parser.c >> +++ gcc/c/c-parser.c >> @@ -13602,6 +13602,7 @@ c_parser_oacc_declare (c_parser *parser) >> >>switch (OMP_CLAUSE_MAP_KIND (t)) >> { >> +case GOMP_MAP_FIRSTPRIVATE_POINTER: >> case

Re: [PATCH] Warn about return with a void expression with -Wreturn-type.

2016-06-01 Thread Martin Sebor
On 06/01/2016 10:39 AM, Jakub Jelinek wrote: On Wed, Jun 01, 2016 at 02:44:22PM +0200, Marcin Baczyński wrote: On 1 Jun 2016 14:07, "Jakub Jelinek" wrote: On Wed, Jun 01, 2016 at 01:55:04PM +0200, Marcin Baczyński wrote: PR c/48116. Botstrapped and tested on

Re: Allow embedded timestamps by C/C++ macros to be set externally (3)

2016-06-01 Thread Matthias Klose
On 01.06.2016 18:29, Bernd Schmidt wrote: > On 05/13/2016 07:09 PM, Dhole wrote: >> +pfile->source_date_epoch = pfile->cb.get_source_date_epoch(pfile); > > Space before paren. Ok with that change. > >> * c-common.h (c_omp_region_type): Remove trailing coma. > > Also, comma.

Re: [PATCH, testsuite/ARM] Enable atomic tests in gcc.dg for -march=armv8-a bare metal

2016-06-01 Thread Thomas Preudhomme
On Wednesday 01 June 2016 16:33:30 Kyrill Tkachov wrote: > I see gcc-patches was not cc'ed on the original submission and I didn't CC > it myself in my reply, so here it is a resend with my reply... > > On 31/05/16 14:11, Thomas Preudhomme wrote: > > Hi, > > > > sync_char_short and

Re: [PATCH] x86 interrupt attribute patch [1/2]

2016-06-01 Thread Jeff Law
On 04/28/2016 10:08 PM, Yulia Koval wrote: Thanks, Here is the patch. Is it ok? Update TARGET_FUNCTION_INCOMING_ARG documentation On x86, interrupt handlers are only called by processors which push interrupt data onto stack at the address where the normal return address is.

Re: [PATCH] Warn about return with a void expression with -Wreturn-type.

2016-06-01 Thread Jakub Jelinek
On Wed, Jun 01, 2016 at 02:44:22PM +0200, Marcin Baczyński wrote: > On 1 Jun 2016 14:07, "Jakub Jelinek" wrote: > > > > On Wed, Jun 01, 2016 at 01:55:04PM +0200, Marcin Baczyński wrote: > > > PR c/48116. > > > > > > Botstrapped and tested on x86_64-pc-linux-gnu. > > > > > >

Re: Allow embedded timestamps by C/C++ macros to be set externally (3)

2016-06-01 Thread Bernd Schmidt
On 05/13/2016 07:09 PM, Dhole wrote: + pfile->source_date_epoch = pfile->cb.get_source_date_epoch(pfile); Space before paren. Ok with that change. * c-common.h (c_omp_region_type): Remove trailing coma. Also, comma. Bernd

Re: [patch, fortran] PR52393 I/O: "READ format" statement with parenthesized default-char-expr

2016-06-01 Thread Jerry DeLisle
On 06/01/2016 12:25 AM, FX wrote: >> 2016-05-30 Jerry DeLisle >> >> PR fortran/52393 >> * io.c (match_io): For READ, try to match a default character >> expression. If found, set the dt format expression to this, >> otherwise go back and try control

Re: [PATCH] integer overflow checking builtins in constant expressions

2016-06-01 Thread Martin Sebor
C++ 98. But those might be acceptable limitations (at least in C there's a workaround). __builtin_* is an extension. Perhaps for C (any) and C++ (< C++14) you could require that in constant expressions the last argument of the builtin has to be a NULL pointer cast to some pointer type (not

Re: [PATCH] integer overflow checking builtins in constant expressions

2016-06-01 Thread Jakub Jelinek
On Wed, Jun 01, 2016 at 09:17:35AM -0600, Martin Sebor wrote: > I see. You meant that only the clang compatibility built-ins > (i.e. the typed ones like __builtin_uadd_overflow) shouldn't > be allowed to take null pointer as the last argument, but the > type-generic ones should. That would work

Re: [PATCH, testsuite/ARM] Enable atomic tests in gcc.dg for -march=armv8-a bare metal

2016-06-01 Thread Kyrill Tkachov
I see gcc-patches was not cc'ed on the original submission and I didn't CC it myself in my reply, so here it is a resend with my reply... On 31/05/16 14:11, Thomas Preudhomme wrote: > Hi, > > sync_char_short and sync_int_long used to restrict platform running > gcc.dg/atomic* tests are only

Update rest of places where we can use likely upper bounds

2016-06-01 Thread Jan Hubicka
Hi, this patch updates last few places to use likely upper bounds. I do not think any of these passes has resonable coverage in our benchmarking (the unswitch test is very special case), so I do not expect any performance changes for this. Bootstrapped/regtested x86_64-linux, comitted. Honza

Re: [PATCH] integer overflow checking builtins in constant expressions

2016-06-01 Thread Martin Sebor
As I said in another mail, IMNSHO you don't want to change the clang compatibility builtins, therefore arg2 should never be NULL. Allowing the last argument to be null is the subject of the enhancement request in c/68120 (one of the two PRs driving this enhancement). The argument can only be

Re: [PR middle-end/71373] Handle more OMP_CLAUSE_* in nested function decomposition

2016-06-01 Thread Jakub Jelinek
On Wed, Jun 01, 2016 at 05:06:42PM +0200, Thomas Schwinge wrote: > Here are the OpenACC bits of . > > As we're currently not paying attention to OpenACC tile clauses in the > middle end, and thus OMP_CLAUSE_TILE's arguments are not to be considered > stable, I opted to

[PR middle-end/71373] Handle more OMP_CLAUSE_* in nested function decomposition

2016-06-01 Thread Thomas Schwinge
Hi! Here are the OpenACC bits of . As we're currently not paying attention to OpenACC tile clauses in the middle end, and thus OMP_CLAUSE_TILE's arguments are not to be considered stable, I opted to simply discard them early, simplifying their gcc/tree-nested.c

Re: [patch] Fix segfault in vectorizer

2016-06-01 Thread Eric Botcazou
> Surely any missing vectype for a statement due to this delay is a bug. I > didn't notice STMT_VINFO_LIVE_P should be checked in addition to > STMT_VINFO_RELEVANT_P. In fact this brings back PR tree-opt/68327 on the 6 branch: (gdb) frame 0 #0 internal_error (gmsgid=gmsgid@entry=0x170cd58 "in

Re: [ARM] Enable __fp16 as a function parameter and return type.

2016-06-01 Thread Christophe Lyon
On 13 May 2016 at 15:41, Ramana Radhakrishnan wrote: > On Thu, Apr 28, 2016 at 10:20 AM, Matthew Wahab > wrote: >> Hello, >> >> The ARM target supports the half-precision floating point type __fp16 >> but does not allow its use as a function

[committed] Fix ICE with OpenMP taskloop (PR middle-end/71371)

2016-06-01 Thread Jakub Jelinek
Hi! I've committed following patch to fix ICE on taskloop construct where the IV is addressable. This doesn't ICE on for, simd or distribute because it is ORT_WORKSHARE or ORT_SIMD and thus omp_add_variable during create_tmp_var is called in outer context. While it doesn't hurt in that case, as

Re: [PATCH] c++/60760 - arithmetic on null pointers should not be allowed in constant expressions

2016-06-01 Thread Jason Merrill
On 05/31/2016 06:03 PM, Martin Sebor wrote: On 05/17/2016 01:44 PM, Jason Merrill wrote: On 05/12/2016 06:34 PM, Martin Sebor wrote: Attached is a resubmission of the patch for c++/60760 originally submitted late in the 6.0 cycle along with a patch for c++/67376. Since c++/60760 was not a

Re: [Patch, fortran] PR71156 - PURE interface/definition inconsistency: accepts invalid, rejects valid

2016-06-01 Thread Paul Richard Thomas
Dear FX, Thanks! Committed to trunk as revision 236996. 6-branch will follow in the next 24 hours. Regards Paul On 1 June 2016 at 16:14, FX wrote: >> 2016-06-01 Paul Thomas >> >>PR fortran/71156 >>* decl.c (copy_prefix): Add checks that the

Re: Do not imply -fweb with -fpeel-loops

2016-06-01 Thread Jan Hubicka
> > > > In tree-SSA world most of reuse is avoided by out-of-ssa pass. Random reuse > > these days is limited to loop unrolling and RTL expansion I think. Without > > unroling webizer renames 204 pseudos on tramp3d that seems close to 0. I can > > try to dig into that. With -funroll-all-loops it

Re: [Patch, fortran] PR71156 - PURE interface/definition inconsistency: accepts invalid, rejects valid

2016-06-01 Thread FX
> 2016-06-01 Paul Thomas > >PR fortran/71156 >* decl.c (copy_prefix): Add checks that the module procedure >declaration prefixes are compliant with the interface. Invert >order of existing elemental and pure checks. >* resolve.c (resolve_fl_procedure):

RE: [PATCH] x86 interrupt attribute patch [2/2]

2016-06-01 Thread Koval, Julia
> I'm also confused; I can see how an interrupt handler might have different > register usage conventions, but do regular functions called from inside an > interrupt handler function really use a non-standard call/return sequence? Usually, they don't. But because of this, the interrupt handler

[PATCH, i386]: Fix PR67310, gcc fails to compile with -march=native on VIA nano CPU

2016-06-01 Thread Uros Bizjak
Hello! Attached patch fixes the buggy part of PR67310, where VIA CPU is detected incorrectly, and: "-march=core2 -mtune=i386" is passed from the driver to the compiler. The patched driver now emits "-march=core2 -mtune=generic", since the driver handles VIA target through "Use something

[PATCH] Fix PR71366

2016-06-01 Thread Richard Biener
The following fixes PR71366, a latent issue in unrolling where removing found-to-be always not executed edges may cause the parent loop to vanish. That's something we try to avoid by killing off loops late thus we have to move removing those edges late as well. Furthermore this breaks the way we

[PTX] weak references

2016-06-01 Thread Nathan Sidwell
This patch emits an error if you try and weakly reference a declaration. PTX doesn't support that. I tried overriding ASM_OUTPUT_WEAREF, but that didn't seem to work. So this is added to the assemble_undefined_decl hook. that does mean it requires -ftoplevel-reorder to function, but that

Re: [PATCH, OpenACC] Make reduction arguments addressable

2016-06-01 Thread Chung-Lin Tang
On 2016/5/31 05:51 PM, Chung-Lin Tang wrote: > On 2016/5/31 3:28 PM, Thomas Schwinge wrote: >> > Hi! >> > >> > On Mon, 30 May 2016 18:53:41 +0200, Jakub Jelinek wrote: >>> >> On Mon, May 30, 2016 at 10:38:59PM +0800, Chung-Lin Tang wrote: >>> Hi, a previous patch of

Re: [PATCH, OpenACC] Make reduction arguments addressable

2016-06-01 Thread Jakub Jelinek
On Wed, Jun 01, 2016 at 09:32:26PM +0800, Chung-Lin Tang wrote: > 2016-06-01 Chung-Lin Tang > > c/ > * c-typeck.c (c_finish_omp_clauses): Mark OpenACC reduction > arguments as addressable when async clause exists. > > cp/ > * semantics.c

Re: move increase_alignment from simple to regular ipa pass

2016-06-01 Thread Richard Biener
On Wed, 1 Jun 2016, Prathamesh Kulkarni wrote: > Hi Richard, > This patch tries to move increase_alignment pass from small to regular ipa > pass. > Does the patch look correct ? > Since we are only increasing alignment of varpool nodes, I am not sure > if any ipa > read/write hooks were

Re: [PATCH][RFC] Remove ifcvt_repair_bool_pattern, re-do bool patterns

2016-06-01 Thread Richard Biener
On Tue, 31 May 2016, Yuri Rumyantsev wrote: > Richard, > > I built compiler with your patch and did not find out any issues with > vectorization of loops marked with pragma simd. I also noticed that > the size of the vectorized loop looks smaller (I can't tell you exact > numbers since the fresh

Re: Remove word_mode hack for split bitfields

2016-06-01 Thread Richard Sandiford
Bernd Schmidt writes: > On 05/26/2016 04:36 PM, Richard Sandiford wrote: >> This patch is effectively reverting a change from 1994. The reason >> I think it's a hack is that store_bit_field_1 is creating a subreg >> reference to one word of a field even though it has already

[PATCH] Allow !$omp directives anywhere in the specification part

2016-06-01 Thread Jakub Jelinek
Hi! Per discussions on omp-lang, the only requirement on !$omp directive ordering for declarative directives is that they appear somewhere in the specification part, but they can appear before or after use-stmt, before or after import-stmt, before or after implicit-stmt, or anywhere in between

Re: [PATCH] Warn about return with a void expression with -Wreturn-type.

2016-06-01 Thread Jakub Jelinek
On Wed, Jun 01, 2016 at 01:55:04PM +0200, Marcin Baczyński wrote: > PR c/48116. > > Botstrapped and tested on x86_64-pc-linux-gnu. > > gcc/ChangeLog: > >* c/c-typeck.c (c_finish_return): emit warning about return with a > void expression in a function returning void if warn_return_type.

Make loop unroller to use likely upper bounds

2016-06-01 Thread Jan Hubicka
Hi, this patch updates loop unroller to use likely upper bounds and add testcases that profile updating goes well at least in very trivial cases. I will try to add more complex but since there is a lot of target specific stuff involved in RTL expansion I think it is safer to test easy cases

Re: Remove the unused OMP_CLAUSE_DEVICE_RESIDENT

2016-06-01 Thread Thomas Schwinge
Hi! On Tue, 31 May 2016 15:35:17 -0700, Cesar Philippidis wrote: > On 05/31/2016 08:45 AM, Thomas Schwinge wrote: > > > While working on something else, I came across the following. Cesar, can > > you please verify that this is really dead code in the Fortran front

[PATCH] Warn about return with a void expression with -Wreturn-type.

2016-06-01 Thread Marcin Baczyński
PR c/48116. Botstrapped and tested on x86_64-pc-linux-gnu. gcc/ChangeLog: * c/c-typeck.c (c_finish_return): emit warning about return with a void expression in a function returning void if warn_return_type. gcc/testsuite/ChangeLog: * gcc.dg/Wreturn-type3.c: new test. ---

[PATCH 1/2] Fix warnings reported with -Wreturn-type after patching PR c/48116.

2016-06-01 Thread Marcin Baczyński
libgomp/ChangeLog: * fortran.c (omp_set_default_device_, omp_set_default_device_8): don't put a void expression in a return, * oacc-mem.c (acc_free): likewise, * target.c (GOMP_target, GOMP_target_data, GOMP_target_data_ext): likewise. --- libgomp/fortran.c | 4 ++--

Re: [PATCH] Update documentation for ARM architecture

2016-06-01 Thread Kyrill Tkachov
Hi Stefan, On 30/05/16 21:01, Sandra Loosemore wrote: On 05/28/2016 07:52 AM, stefan.bru...@rwth-aachen.de wrote: From: Stefan Brüns * use lexicographical ordering, as "gcc -march=foo" does * add armv6k, armv6z, arm6zk * remove ep9312, it is only valid

Re: RFC [1/2] divmod transform

2016-06-01 Thread Richard Biener
On Tue, 31 May 2016, Prathamesh Kulkarni wrote: > On 30 May 2016 at 13:15, Richard Biener wrote: > > On Mon, 30 May 2016, Prathamesh Kulkarni wrote: > > > >> The attached patch ICE's during bootstrap for x86_64, and is reproducible > >> with > >> following case with -m32 -O2:

[PR66726] Fix regression caused by Factor conversion out of COND_EXPR

2016-06-01 Thread kugan
Hi All, Factoring out CONVERT_EXPR introduced a regression for (PR66726). I had to revert my previous patch due to some regressions. This is a much simplified version compared to the one I reverted. There is a test-case (pr46309.c) in the test-suite which is valid for targets that has

Re: ]PATCH][RFC] Initial patch for better performance of 64-bit math instructions in 32-bit mode on x86-64

2016-06-01 Thread Ilya Enkovich
2016-06-01 13:06 GMT+03:00 Richard Biener : > On Wed, Jun 1, 2016 at 11:57 AM, Ilya Enkovich wrote: >> 2016-05-31 19:15 GMT+03:00 Uros Bizjak : >>> On Tue, May 31, 2016 at 5:00 PM, Yuri Rumyantsev wrote:

Re: Remove match.pd pattern dups in favor of using :c

2016-06-01 Thread Richard Biener
On Wed, 1 Jun 2016, Alexander Monakov wrote: > Hi, > > On Wed, 1 Jun 2016, Richard Biener wrote: > > 2016-06-01 Richard Biener > > > > * match.pd ((A & B) - (A & ~B) -> B - (A ^ B)): Add missing :c. > > (relational patterns): Use :c to avoid pattern duplications. >

Re: Remove match.pd pattern dups in favor of using :c

2016-06-01 Thread Alexander Monakov
Hi, On Wed, 1 Jun 2016, Richard Biener wrote: > 2016-06-01 Richard Biener > > * match.pd ((A & B) - (A & ~B) -> B - (A ^ B)): Add missing :c. > (relational patterns): Use :c to avoid pattern duplications. Should the same treatment be applied to recently added

Remove match.pd pattern dups in favor of using :c

2016-06-01 Thread Richard Biener
The following uses the now available possibility to use :c on relational compares. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2016-06-01 Richard Biener * match.pd ((A & B) - (A & ~B) -> B - (A ^ B)): Add missing :c. (relational

Re: [Patch] Disable text mode translation in ada for Cygwin

2016-06-01 Thread JonY
On 5/27/2016 06:25, JonY wrote: > On 5/26/2016 21:55, Arnaud Charlet wrote: >>> Text mode translation should not be done for Cygwin, especially since it >>> does not >>> support unicode setmode calls. This also fixes ada builds for Cygwin. >>> >>> OK for trunk? >> >> OK, thanks. >> > > Can

Re: [PATCH][ARM] Use proper output modifier for DImode register in store exclusive patterns

2016-06-01 Thread Ramana Radhakrishnan
On 01/06/16 11:18, Kyrill Tkachov wrote: > Hi Ramana, > > On 01/06/16 10:07, Ramana Radhakrishnan wrote: >> >> On 01/06/16 10:02, Ramana Radhakrishnan wrote: >>> >>> On 09/03/16 12:56, Kyrill Tkachov wrote: Hi all, I notice that the output code for our store exclusive patterns

Re: [PATCH][ARM] Use proper output modifier for DImode register in store exclusive patterns

2016-06-01 Thread Kyrill Tkachov
Hi Ramana, On 01/06/16 10:07, Ramana Radhakrishnan wrote: On 01/06/16 10:02, Ramana Radhakrishnan wrote: On 09/03/16 12:56, Kyrill Tkachov wrote: Hi all, I notice that the output code for our store exclusive patterns accesses unallocated memory. It wants to output an strexd instruction

move increase_alignment from simple to regular ipa pass

2016-06-01 Thread Prathamesh Kulkarni
Hi Richard, This patch tries to move increase_alignment pass from small to regular ipa pass. Does the patch look correct ? Since we are only increasing alignment of varpool nodes, I am not sure if any ipa read/write hooks were necessary and passed NULL for them. Cross-tested on arm*-*-*,

Re: ]PATCH][RFC] Initial patch for better performance of 64-bit math instructions in 32-bit mode on x86-64

2016-06-01 Thread Richard Biener
On Wed, Jun 1, 2016 at 11:57 AM, Ilya Enkovich wrote: > 2016-05-31 19:15 GMT+03:00 Uros Bizjak : >> On Tue, May 31, 2016 at 5:00 PM, Yuri Rumyantsev wrote: >>> Hi Uros, >>> >>> Here is initial patch to improve performance of 64-bit

Re: ]PATCH][RFC] Initial patch for better performance of 64-bit math instructions in 32-bit mode on x86-64

2016-06-01 Thread Ilya Enkovich
2016-05-31 19:15 GMT+03:00 Uros Bizjak : > On Tue, May 31, 2016 at 5:00 PM, Yuri Rumyantsev wrote: >> Hi Uros, >> >> Here is initial patch to improve performance of 64-bit integer >> arithmetic in 32-bit mode. We discovered that gcc is significantly >>

Re: [PATCH] Support for SPARC M7 and VIS 4.0

2016-06-01 Thread Jose E. Marchesi
Hi Eric. > The niagara7 pipeline description models the V3 pipe using a bypass > with latency 3, from-to any instruction executing in the V3 pipe. The > instructions are identified by mean of a new instruction attribute > "v3pipe", that has been added to the proper

Re: [PATCH][2/3] Vectorize inductions that are live after the loop

2016-06-01 Thread Richard Biener
On Wed, Jun 1, 2016 at 10:46 AM, Alan Hayward wrote: > > > On 30/05/2016 14:22, "Richard Biener" wrote: > >>On Fri, May 27, 2016 at 5:12 PM, Alan Hayward >>wrote: >>> >>> On 27/05/2016 12:41, "Richard Biener"

Re: Moving backwards/FSM threader into its own pass

2016-06-01 Thread Richard Biener
On Tue, May 31, 2016 at 11:12 PM, Jeff Law wrote: > On 05/31/2016 11:38 AM, Richard Biener wrote: > >>> Essentially we want to limit the backwards substitution to single step >>> within a single block for that case (which is trivially easy). That >>> would allow us to run a very

Re: [patch] Fix segfault in vectorizer

2016-06-01 Thread Richard Biener
On Tue, May 31, 2016 at 7:46 PM, Eric Botcazou wrote: >> This code appears when we try to disable boolean patterns. Boolean patterns >> replace booleans with integers of proper size which allow us to simply >> determine vectype using get_vectype_for_scalar_type. With no

[Patch, fortran] PR71156 - PURE interface/definition inconsistency: accepts invalid, rejects valid

2016-06-01 Thread Paul Richard Thomas
Dear All, I had noticed this bug when writing submodule_14.f08 but promptly forgot all about it. The fix is trivial. The error checks for pure and elemental have been inverted to prevent missing elemental prefixes being flagged as missing pure prefixes. This arises from the implicit pure

  1   2   >