[PATCH] rs6000: Correct the "length" attribute for trunctddd2

2016-06-02 Thread Segher Boessenkool
Found in one of the ubsan testcases: a branch went out of range because of this incorrect length. Committing to mainline. Segher 2016-06-02 Segher Boessenkool * config/rs6000/dfp.md (trunctddd2): Correct the "length" attribute. --- gcc/config/rs6000/dfp.md | 3 ++- 1 file changed

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

2016-06-02 Thread Jakub Jelinek
On Wed, Jun 01, 2016 at 09:10:52PM -0600, Martin Sebor wrote: > @@ -7957,8 +7957,8 @@ fold_builtin_arith_overflow (location_t loc, enum > built_in_function fcode, >tree arg0, tree arg1, tree arg2) > { >enum internal_fn ifn = IFN_LAST; > - tree type = TREE_TYPE (TR

Re: move increase_alignment from simple to regular ipa pass

2016-06-02 Thread Prathamesh Kulkarni
On 1 June 2016 at 18:37, Richard Biener wrote: > 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

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

2016-06-02 Thread Jakub Jelinek
On Thu, Jun 02, 2016 at 09:23:16AM +0200, Jakub Jelinek wrote: > Also, perhaps just a documentation thing, it would be good to clarify the > NULL last argument. From the POV of generating efficient code, I think we > should say something that the last argument (for the GNU builtins) must be > eith

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

2016-06-02 Thread Matthew Wahab
On 01/06/16 15:43, Christophe Lyon wrote: On 13 May 2016 at 15:41, Ramana Radhakrishnan wrote: On Thu, Apr 28, 2016 at 10:20 AM, Matthew Wahab wrote: This patch enables data movement for HF-mode values using VFP registers, when they are available, to support passing arguments and return valu

Re: move increase_alignment from simple to regular ipa pass

2016-06-02 Thread Richard Biener
On Thu, 2 Jun 2016, Prathamesh Kulkarni wrote: > On 1 June 2016 at 18:37, Richard Biener wrote: > > 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 ? >

Re: [PATCH] Improve XMM16+ handling in *vec_concatv2di

2016-06-02 Thread Kirill Yukhin
Hello Jakub, On 01 Jun 22:17, Jakub Jelinek wrote: > 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 testcase

Re: Fix profile updating in loop peeling

2016-06-02 Thread Bernhard Reutner-Fischer
On Mon, May 30, 2016 at 02:38:40PM +0200, Jan Hubicka wrote: > Hi, > this patch fixes profile updates in loop peeling pass. First it correctly > set wont_exit which can only be set when we know the number of iterations > tested by EXIT and this number is higher than maximal number of iterations >

Re: [PATCH][ARM] PR target/70830: Avoid POP-{reglist}^ when returning from interrupt handlers

2016-06-02 Thread Kyrill Tkachov
Ping. Thanks, Kyrill On 24/05/16 13:48, Kyrill Tkachov wrote: Ping. https://gcc.gnu.org/ml/gcc-patches/2016-05/msg01211.html Thanks, Kyrill On 17/05/16 11:40, Kyrill Tkachov wrote: On 13/05/16 12:05, Kyrill Tkachov wrote: Hi Christophe, On 12/05/16 20:57, Christophe Lyon wrote: On 12 May

Re: [PATCH][ARM] PR target/70830: Avoid POP-{reglist}^ when returning from interrupt handlers

2016-06-02 Thread Ramana Radhakrishnan
On 17/05/16 11:40, Kyrill Tkachov wrote: > > On 13/05/16 12:05, Kyrill Tkachov wrote: >> Hi Christophe, >> >> On 12/05/16 20:57, Christophe Lyon wrote: >>> On 12 May 2016 at 11:48, Ramana Radhakrishnan >>> wrote: On Thu, May 5, 2016 at 12:50 PM, Kyrill Tkachov wrote: > Hi all, >>>

Re: C, C++: Fix PR 69733 (bad location for ignored qualifiers warning)

2016-06-02 Thread Bernd Schmidt
On 05/04/2016 05:17 PM, Bernd Schmidt wrote: How's this? Fully retested on x86_64-linux. Ping. Bernd

Re: [PATCH][ARM] PR target/70830: Avoid POP-{reglist}^ when returning from interrupt handlers

2016-06-02 Thread Kyrill Tkachov
On 02/06/16 09:47, Ramana Radhakrishnan wrote: On 17/05/16 11:40, Kyrill Tkachov wrote: On 13/05/16 12:05, Kyrill Tkachov wrote: Hi Christophe, On 12/05/16 20:57, Christophe Lyon wrote: On 12 May 2016 at 11:48, Ramana Radhakrishnan wrote: On Thu, May 5, 2016 at 12:50 PM, Kyrill Tkachov wr

Re: [PATCH][RFC][rtlanal] Fix rtl-optimization/71295

2016-06-02 Thread Bernd Schmidt
On 05/31/2016 04:26 PM, Kyrill Tkachov wrote: we're talking about (subreg:V2DI (reg/v:EI 111 [ b ]) 0). EImode is a 24 byte arm-specific integer mode used to represent 3 D-registers. [...] I'm not familiar with the processes in that part of the code but my suspicion is that we should be rejecti

Re: [PATCH][RTL ifcvt] PR rtl-optimization/66940: Avoid signed overflow in noce_get_alt_condition

2016-06-02 Thread Bernd Schmidt
On 05/23/2016 01:17 PM, Kyrill Tkachov wrote: In this PR we end up hitting a signed overflow in noce_get_alt_condition when we try to increment or decrement a HOST_WIDE_INT that might be HOST_WIDE_INT_MAX or HOST_WIDE_INT_MIN. I've confirmed the overflow by adding an assert before the operation:

Re: move increase_alignment from simple to regular ipa pass

2016-06-02 Thread Prathamesh Kulkarni
On 2 June 2016 at 13:23, Richard Biener wrote: > On Thu, 2 Jun 2016, Prathamesh Kulkarni wrote: > >> On 1 June 2016 at 18:37, Richard Biener wrote: >> > On Wed, 1 Jun 2016, Prathamesh Kulkarni wrote: >> > >> >> Hi Richard, >> >> This patch tries to move increase_alignment pass from small to regul

Re: move increase_alignment from simple to regular ipa pass

2016-06-02 Thread Prathamesh Kulkarni
On 2 June 2016 at 14:44, Prathamesh Kulkarni wrote: > On 2 June 2016 at 13:23, Richard Biener wrote: >> On Thu, 2 Jun 2016, Prathamesh Kulkarni wrote: >> >>> On 1 June 2016 at 18:37, Richard Biener wrote: >>> > On Wed, 1 Jun 2016, Prathamesh Kulkarni wrote: >>> > >>> >> Hi Richard, >>> >> This p

Re: [PATCH][RTL ifcvt] PR rtl-optimization/66940: Avoid signed overflow in noce_get_alt_condition

2016-06-02 Thread Kyrill Tkachov
On 02/06/16 10:08, Bernd Schmidt wrote: On 05/23/2016 01:17 PM, Kyrill Tkachov wrote: In this PR we end up hitting a signed overflow in noce_get_alt_condition when we try to increment or decrement a HOST_WIDE_INT that might be HOST_WIDE_INT_MAX or HOST_WIDE_INT_MIN. I've confirmed the overflow

Re: [PATCH 1/2][GCC] Refactor noce_try_store_flag_constants

2016-06-02 Thread Bernd Schmidt
On 05/23/2016 03:58 PM, Mikhail Maltsev wrote: This patch refactors 'noce_try_store_flag_constants' a bit to make it easier to reason about. The function contains two series of conditions, and each branch of the second series corresponds to one or two branches of the first series. The patch intr

Re: [PATCH][wwwdocs] Improve arm and aarch64-related info in readings.html

2016-06-02 Thread Kyrill Tkachov
On 28/05/16 21:04, Gerald Pfeifer wrote: Hi Kyrill, On Thu, 19 May 2016, Kyrill Tkachov wrote: I noticed that we have a readings.html page that has pointers to documentation of various backends that GCC supports. The info on arm seems a bit out of date and somewhat confusing, and there is no e

Re: [PATCH 2/2][GCC] Add one more pattern to RTL if-conversion

2016-06-02 Thread Bernd Schmidt
On 05/24/2016 07:21 PM, Mikhail Maltsev wrote: + target = expand_simple_binop (mode, (diff < 0) ? MINUS : PLUS, Parentheses around (diff < 0) aren't needed. Otherwise I think this is also OK. Bernd

Patch ping

2016-06-02 Thread Jakub Jelinek
Hi! I'd like to ping 3 XMM16+ patches: 1) avx_vec_concat http://gcc.gnu.org/ml/gcc-patches/2016-05/msg01826.html 2) *vec_concatv4si http://gcc.gnu.org/ml/gcc-patches/2016-05/msg02115.html 3) *vec_concatv2si_sse4_1 http://gcc.gnu.org/ml/gcc-patches/2016-05/msg02129.html Jakub

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

2016-06-02 Thread Marcin Baczyński
2016-06-02 4:51 GMT+02:00 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}.

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

2016-06-02 Thread Marcin Baczyński
2016-06-02 4:51 GMT+02:00 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}.

[PATCH v1] Support for SPARC M7 and VIS 4.0

2016-06-02 Thread Jose E. Marchesi
[Changes from version 0 of the patch: - Added a comment to config/sparc/niagara4.md documenting the discrepancy of the documented instruction latency numbers vs. the implemented ones. - Added comments to sparc_option_override documenting the changes in the cache parameters. - Use the default

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

2016-06-02 Thread Bernd Schmidt
On 06/01/2016 11:19 PM, David Malcolm wrote: This is effectively v5 of the unittests proposal; for the earlier versions see: In general: nice to see this moving forward. There are some issues with the patch kit, some patches seem to fix issues with earlier ones (#3 or #13). One patch adds a s

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

2016-06-02 Thread Eric Botcazou
> I think I will change v3pipe to v3pipe_m7 in this patch, to make it more > explicit that the insn<->v3pipe association is processor-dependant. No strong opinion, IOW it's your call. > Yes, it is intended. I will add a little note. Thanks. > I will also fix all the other points you raised. >

Re: [PATCH][ARM][1/4] Replace uses of int_log2 by exact_log2

2016-06-02 Thread Kyrill Tkachov
I wanted to ping this patch, but checking the gcc-patches archive I see this wasn't archived, though I have confirmed that the patch was sent out and distributed by the mail server correctly. Anyway, resending... Thanks, Kyrill On 24/05/16 14:25, Kyrill Tkachov wrote: Hi all, The int_log2 fu

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

2016-06-02 Thread Jose E. Marchesi
> I will also fix all the other points you raised. > Thanks! You're welcome. And if you want to have commit rights to the SVN repository, you can put me as your sponsor (Eric Botcazou ). I just sent a request. Thank you.

Re: [PATCH] Improve *vec_concatv4si

2016-06-02 Thread Uros Bizjak
On Thu, May 26, 2016 at 7:07 PM, Jakub Jelinek wrote: > Hi! > > Both vpunpcklqdq and vmovhps are available with XMM EVEX args in AVX512VL. > > Bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk? > > 2016-05-26 Jakub Jelinek > > * config/i386/sse.md (*vec_concatv4si): Us

Re: [PATCH] Improve *vec_concatv2si_sse4_1

2016-06-02 Thread Uros Bizjak
On Thu, May 26, 2016 at 9:24 PM, Jakub Jelinek wrote: > On Thu, May 26, 2016 at 07:39:01PM +0200, Uros Bizjak wrote: >> On Thu, May 26, 2016 at 7:05 PM, Jakub Jelinek wrote: >> > Hi! >> > >> > This patch adds an avx512dq alternative (EVEX vpinsrd requires that) and >> > enables EVEX vmovd and vpu

[ipa-comdats] create a new comdat group for symbol if it's referenced from multiple comdat groups

2016-06-02 Thread Prathamesh Kulkarni
Hi, I was trying to address first TODO from ipa-comdats.c (attached patch) TODO: When symbol is used only by comdat symbols, but from different groups, it would make sense to produce a new comdat group for it with anonymous name. The patch simply puts symbol in a new comdat group and makes symbol

[PATCH] Fix first match heuristics

2016-06-02 Thread Martin Liška
Hi. Following patch fixes a typo in first match heuristics that blocks selection of best first match heuristics. It's questionable whether to add a spacial test-case for that? I'm bit concerned that it can be a bit fragile. Bootstrapped and regtested on x86_64-linux. Ready for trunk? Thanks, Ma

[PR c/71381] C/C++ OpenACC cache directive rejects valid syntax (was: [gomp4] OpenACC cache directive for C.)

2016-06-02 Thread Thomas Schwinge
Hi! On Wed, 05 Nov 2014 17:29:19 +0100, I wrote: > In r217145, I applied Jim's patch to gomp-4_0-branch: > > commit 4361f9b6b2c74c2961c3a5290a4945abe2d7a444 > Author: tschwinge > Date: Wed Nov 5 16:26:47 2014 + > > OpenACC cache directive for C. (That, and the corresponding C++ chang

Ping Re: Add option for whether ceil etc. can raise "inexact", adjust x86 conditions

2016-06-02 Thread Joseph Myers
Ping. This patch is pending review (for the non-x86-specific parts). -- Joseph S. Myers jos...@codesourcery.com

[PATCH 1/2] Introduce filtering for edge_predictions.

2016-06-02 Thread marxin
gcc/ChangeLog: 2016-05-31 Martin Liska * predict.c (filter_predictions): New function. (remove_predictions_associated_with_edge): Use the filter function. (equal_edge_p): New function. --- gcc/predict.c | 38 ++ 1 file change

[PATCH 0/2] Deduplicate edge predictors

2016-06-02 Thread marxin
Hi. Following small series makes deduplication of predictors in following 2 ways: 1) remove duplicate prediction that is guessed with the same probability (different than 1/2) to both edges 2) remove duplicates for a prediction that belongs with the same probability to a single e

[PATCH 2/2] Add edge predictions pruning

2016-06-02 Thread marxin
contrib/ChangeLog: 2016-06-01 Martin Liska * analyze_brprob.py: Cover new dump output format. gcc/ChangeLog: 2016-06-01 Martin Liska * predict.c (dump_prediction): Add new argument. (enum predictor_reason): New enum. (struct predictor_hash): New struct.

Re: Ping Re: Add option for whether ceil etc. can raise "inexact", adjust x86 conditions

2016-06-02 Thread Jan Hubicka
> Ping. This patch > is pending > review (for the non-x86-specific parts). The inliner bits looks fine to me. Of course it is easy to check whether the function actually calls floor/ceil and thus is affected by this flag. Do you expect

[C++ PATCH] Fix cp_fold dropping TREE_THIS_VOLATILE flag (PR c++/71372)

2016-06-02 Thread Jakub Jelinek
Hi! When cp_fold is called on INDIRECT_REF and ARRAY*_REF and any of the arguments change in the recursive calls, we fail to copy TREE_THIS_VOLATILE flag. Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk/6.2? 2016-06-02 Jakub Jelinek PR c++/71372

Re: [PATCH] Fix first match heuristics

2016-06-02 Thread Jan Hubicka
> Hi. > > Following patch fixes a typo in first match heuristics that blocks > selection of best first match heuristics. > > It's questionable whether to add a spacial test-case for that? I'm bit > concerned that it can be a bit fragile. Lets add it now to have better coverage. If it will keep b

Fix up dg-set-compiler-env-var

2016-06-02 Thread Jakub Jelinek
Hi! On Fri, May 13, 2016 at 07:09:30PM +0200, Dhole wrote: > --- a/gcc/testsuite/lib/gcc-dg.exp > +++ b/gcc/testsuite/lib/gcc-dg.exp > @@ -451,6 +451,38 @@ proc restore-target-env-var { } { > } > } > > +proc dg-set-compiler-env-var { args } { I've noticed last night pr61861.c FAIL in i686

Re: [PATCH v4] gcov: Runtime configurable destination output

2016-06-02 Thread Nathan Sidwell
On 05/31/16 11:04, Aaron Conole wrote: Nathan Sidwell writes: On 05/26/16 13:08, Aaron Conole wrote: The previous gcov behavior was to always output errors on the stderr channel. This is fine for most uses, but some programs will require stderr to be untouched by libgcov for certain tests. Th

Re: Ping Re: Add option for whether ceil etc. can raise "inexact", adjust x86 conditions

2016-06-02 Thread Bernd Schmidt
On 06/02/2016 02:00 PM, Jan Hubicka wrote: Ping. This patch is pending review (for the non-x86-specific parts). The inliner bits looks fine to me. In case that leaves anything unapproved, the remaining parts are OK too, modulo one qu

Re: Fix up dg-set-compiler-env-var

2016-06-02 Thread Bernd Schmidt
On 06/02/2016 02:19 PM, Jakub Jelinek wrote: The problem is that in cleanup-after-saved-dg-test, there are missing global directives, so when it tests/uses the set_compiler_env_var and saved_compiler_env_var vars to see if it should call restore-compiler-env-var, it uses local (non-existing) vars

Re: Ping Re: Add option for whether ceil etc. can raise "inexact", adjust x86 conditions

2016-06-02 Thread Joseph Myers
On Thu, 2 Jun 2016, Bernd Schmidt wrote: > On 06/02/2016 02:00 PM, Jan Hubicka wrote: > > > Ping. This patch > > > is pending > > > review (for the non-x86-specific parts). > > The inliner bits looks fine to me. > > In case that leaves a

Re: Ping Re: Add option for whether ceil etc. can raise "inexact", adjust x86 conditions

2016-06-02 Thread Joseph Myers
On Thu, 2 Jun 2016, Jan Hubicka wrote: > > Ping. This patch > > is pending > > review (for the non-x86-specific parts). > The inliner bits looks fine to me. Of course it is easy to check whether the > function actually calls floor/ceil

Re: Fix up dg-set-compiler-env-var

2016-06-02 Thread Jakub Jelinek
On Thu, Jun 02, 2016 at 02:26:28PM +0200, Bernd Schmidt wrote: > On 06/02/2016 02:19 PM, Jakub Jelinek wrote: > >The problem is that in cleanup-after-saved-dg-test, there are missing global > >directives, so when it tests/uses the set_compiler_env_var and > >saved_compiler_env_var vars to see if it

Re: move increase_alignment from simple to regular ipa pass

2016-06-02 Thread David Edelsohn
> Richard Biener wrote: >> "This would mean the pass should get its own non-Optimization flag >> initialized by targets where section anchors are usually used" >> IIUC should we add a new option -fno-increase_alignment and gate the >> pass on it ? Um sorry I didn't understand why targets >> wi

Re: move increase_alignment from simple to regular ipa pass

2016-06-02 Thread Richard Biener
On Thu, 2 Jun 2016, David Edelsohn wrote: > > Richard Biener wrote: > > >> "This would mean the pass should get its own non-Optimization flag > >> initialized by targets where section anchors are usually used" > >> IIUC should we add a new option -fno-increase_alignment and gate the > >> pass

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

2016-06-02 Thread Christophe Lyon
On 1 June 2016 at 18:59, Matthias Klose wrote: > 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_ty

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

2016-06-02 Thread Jakub Jelinek
On Thu, Jun 02, 2016 at 03:01:07PM +0200, Christophe Lyon wrote: > On 1 June 2016 at 18:59, Matthias Klose wrote: > > 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); > >> >

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

2016-06-02 Thread David Malcolm
On Wed, 2016-06-01 at 15:20 -0600, Sandra Loosemore wrote: > 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/g

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

2016-06-02 Thread Christophe Lyon
On 2 June 2016 at 15:05, Jakub Jelinek wrote: > On Thu, Jun 02, 2016 at 03:01:07PM +0200, Christophe Lyon wrote: >> On 1 June 2016 at 18:59, Matthias Klose wrote: >> > On 01.06.2016 18:29, Bernd Schmidt wrote: >> >> On 05/13/2016 07:09 PM, Dhole wrote: >> >>> +pfile->source_date_epoch =

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

2016-06-02 Thread Jakub Jelinek
On Thu, Jun 02, 2016 at 03:21:03PM +0200, Christophe Lyon wrote: > Ha, thanks, I had missed it. > > But why do I see "random" failures? > Looking at your patch, I have the impression that the test should always fail? Only with make -j1 -k check it should always FAIL. With -j2 and above, it reall

Re: [PATCH, libstdc++/testsuite, ping] 29_atomics/atomic/65913.cc: require atomic-builtins rather than specific target

2016-06-02 Thread Thomas Preudhomme
Ping? On Thursday 26 May 2016 14:00:55 Thomas Preudhomme wrote: > [Sorry for the large recipient list, I wasn't sure who of C++ and x86 > maintainers should approve this] > > Hi, > > 29_atomics/atomic/65913.cc test in libstdc++ is a runtime test that only > rely on atomic and gnu++11 support. Th

Re: [middle-end][PATCH] Update alignment_for_piecewise_move

2016-06-02 Thread H.J. Lu
On Tue, Apr 26, 2016 at 11:39 AM, H.J. Lu wrote: > On Tue, Apr 26, 2016 at 11:31 AM, Bernd Schmidt wrote: >> On 04/26/2016 08:21 PM, Richard Sandiford wrote: >>> >>> "H.J. Lu" writes: I am working a patch to enable SSE, AVX and AVX512 for memcpy/memset optimization. x86 backend d

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

2016-06-02 Thread David Malcolm
On Thu, 2016-06-02 at 12:29 +0200, Bernd Schmidt wrote: > On 06/01/2016 11:19 PM, David Malcolm wrote: > > This is effectively v5 of the unittests proposal; for the earlier > > versions see: > > In general: nice to see this moving forward. Thanks. > There are some issues with the patch kit, some

Re: [PATCH, OpenACC] Make reduction arguments addressable

2016-06-02 Thread Chung-Lin Tang
On 2016/6/1 09:38 PM, Jakub Jelinek wrote: >> construct_clauses.lists[OMP_LIST_REDUCTION] = NULL; >> >oacc_clauses = gfc_trans_omp_clauses (&block, &construct_clauses, >> >code->loc); >> > + for (tree c = oacc_clauses; c; c = OMP_CLAUSE_CHAI

Re: [PATCH, OpenACC] Make reduction arguments addressable

2016-06-02 Thread Jakub Jelinek
On Thu, Jun 02, 2016 at 09:55:05PM +0800, Chung-Lin Tang wrote: > fortran/ > * trans-openmp.c (gfc_trans_omp_clauses): Mark OpenACC reduction > arguments as addressable when async clause exists. Wouldn't it be better to pass either a bool openacc_async flag, or whole clauses, dow

Re: [PATCH, i386, AVX-512] Add vectorizer support builtins

2016-06-02 Thread Ilya Verbin
On Mon, May 23, 2016 at 19:11:53 +0300, Ilya Verbin wrote: > This patch adds missed 512-bit rounding builtins for vectorization. > Regtested on x86_64-linux and i686-linux. OK for trunk? > > gcc/ > * config/i386/i386-builtin-types.def: Add V16SI_FTYPE_V16SF, > V8DF_FTYPE_V8DF_ROUND, V

[PATCH][ARM][wwwdocs] Mention some arm port changes for GCC 6

2016-06-02 Thread Kyrill Tkachov
Hi all, A bit belatedly, but here are some arm-related entries for the changes.html page for GCC 6. Is this ok to commit? Thanks, Kyrill Index: htdocs/gcc-6/changes.html === RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-6/changes.html,v re

Re: [Patch, ARM] PR71061, length pop* pattern in epilogue correctly

2016-06-02 Thread Jiong Wang
On 31/05/16 15:15, Kyrill Tkachov wrote: +/* Compute the atrribute "length" of insn. Currently, this function is used + for "*load_multiple_with_writeback", "*pop_multiple_with_return" and + "*pop_multiple_with_writeback_and_return". */ + s/atrribute/attribute/ Also, please add a descr

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

2016-06-02 Thread Christophe Lyon
On 2 June 2016 at 15:01, Christophe Lyon wrote: > On 1 June 2016 at 18:59, Matthias Klose wrote: >> 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 wi

[PATCH][wwwdocs][AArch64] Mention -mcpu=qdf24xx support for GCC 6

2016-06-02 Thread Kyrill Tkachov
Hi all, As discussed some time ago with Jim, here's the AArch64 note mentioning the support for Qualcomm QDF24xx that was added in GCC 6. Ok to commit? Thanks, Kyrill Index: htdocs/gcc-6/changes.html === RCS file: /cvs/gcc/wwwdocs

Re: move increase_alignment from simple to regular ipa pass

2016-06-02 Thread Jan Hubicka
> On Thu, 2 Jun 2016, David Edelsohn wrote: > > > > Richard Biener wrote: > > > > >> "This would mean the pass should get its own non-Optimization flag > > >> initialized by targets where section anchors are usually used" > > >> IIUC should we add a new option -fno-increase_alignment and gate

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

2016-06-02 Thread Jakub Jelinek
On Thu, Jun 02, 2016 at 04:49:59PM +0200, Christophe Lyon wrote: > I'm also seeing that the new gcc.dg/cpp/source_date_epoch-1.c fails because > the output pattern finishes with '\n' instead of the usual '(\n|\r\n|\r)' > > Can I add this as obvious? Some remote test invocations even eat the final

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

2016-06-02 Thread Jason Merrill
On 06/01/2016 10:49 PM, Martin Sebor wrote: 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 };

Re: [C++ PATCH] Fix cp_fold dropping TREE_THIS_VOLATILE flag (PR c++/71372)

2016-06-02 Thread Jason Merrill
On Thu, Jun 2, 2016 at 8:13 AM, Jakub Jelinek wrote: > When cp_fold is called on INDIRECT_REF and ARRAY*_REF and any of the > arguments change in the recursive calls, we fail to copy TREE_THIS_VOLATILE > flag. > > PR c++/71372 > * cp-gimplify.c (cp_fold): For INDIRECT_REF, if the f

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

2016-06-02 Thread Bernd Schmidt
On 06/02/2016 05:04 PM, Jakub Jelinek wrote: Isn't following just better? Tested on x86_64-linux, ok for trunk? 2016-06-02 Jakub Jelinek * gcc.dg/cpp/source_date_epoch-1.c (main): Test __DATE__ and __TIME__ strings with __builtin_strcmp instead of printf and dg-outpu

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

2016-06-02 Thread Christophe Lyon
On 2 June 2016 at 17:04, Jakub Jelinek wrote: > On Thu, Jun 02, 2016 at 04:49:59PM +0200, Christophe Lyon wrote: >> I'm also seeing that the new gcc.dg/cpp/source_date_epoch-1.c fails because >> the output pattern finishes with '\n' instead of the usual '(\n|\r\n|\r)' >> >> Can I add this as obvio

Re: [C++ PATCH] Fix cp_fold dropping TREE_THIS_VOLATILE flag (PR c++/71372)

2016-06-02 Thread Jakub Jelinek
On Thu, Jun 02, 2016 at 11:14:48AM -0400, Jason Merrill wrote: > On Thu, Jun 2, 2016 at 8:13 AM, Jakub Jelinek wrote: > > When cp_fold is called on INDIRECT_REF and ARRAY*_REF and any of the > > arguments change in the recursive calls, we fail to copy TREE_THIS_VOLATILE > > flag. > > > > P

Re: [PATCH] microblaze.c: fix warnings

2016-06-02 Thread Michael Eager
OK to apply, On 06/01/2016 01:04 PM, David Malcolm wrote: 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: e

Remove duplicated GOMP SIMD LANE code

2016-06-02 Thread Alan Hayward
The IFN_GOMP_SIMD_LANE code in vectorizable_call is essentially a duplicate of the code in vectorizable_live_operation. They both replace all uses outside the loop with the constant VF - 1. Note that my patch to vectorize inductions that are live after the loop will also remove the IFN_GOMP_SIMD_L

Re: [PATCH][1/3] Add loop_vinfo to vect_get_vec_def_for_operand

2016-06-02 Thread Alan Hayward
> This patch simply adds loop_vinfo as an extra argument to > vect_get_vec_def_for_operand and only generates a stmt_vinfo if required. > This is a required cleanup for patch [2/3]. > Tested on x86 and aarch64. > > gcc/ > * tree-vectorizer.h (vect_get_vec_def_for_operand): Pass loop_vinfo in. > *

[PATCH][AArch64] Add missing fcsel in Cortex-A57 scheduler

2016-06-02 Thread Wilco Dijkstra
The Cortex-A57 scheduler is missing fcsel, so add it. OK for commit? ChangeLog: 2016-06-02 Wilco Dijkstra * config/arm/cortex-a57.md (cortex_a57_fp_cpys): Add fcsel. --- diff --git a/gcc/config/arm/cortex-a57.md b/gcc/config/arm/cortex-a57.md index 37912db464315a0d70835b81991e8e07a4

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

2016-06-02 Thread Alan Hayward
On 01/06/2016 10:51, "Richard Biener" wrote: >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" wrote: >On F

Re: [PATCH][3/3] No need to vectorize simple only-live stmts

2016-06-02 Thread Alan Hayward
>Statements which are live but not relevant need marking to ensure they are >vectorized. > >Live statements which are simple and all uses of them are invariant do not >need >to be vectorized. > >This patch adds a check to make sure those stmts which pass both the above >checks are not vectorized a

[PATCH, COMMITTED] Fix display name of PRED_FORTRAN_FAIL_IO

2016-06-02 Thread Martin Liška
Hi. Following patch fixes an obvious typo in definition of a predictor. Installed as r237040. Martin >From f78bf4238b4a3c7d6e03d7c00718204123a2cbfd Mon Sep 17 00:00:00 2001 From: marxin Date: Thu, 2 Jun 2016 18:13:25 +0200 Subject: [PATCH] Fix display name of PRED_FORTRAN_FAIL_IO gcc/ChangeLog

Re: [PATCH][AArch64] Improve aarch64_modes_tieable_p

2016-06-02 Thread Wilco Dijkstra
ping From: Wilco Dijkstra Sent: 17 May 2016 17:08 To: James Greenhalgh Cc: gcc-patches@gcc.gnu.org; nd Subject: Re: [PATCH][AArch64] Improve aarch64_modes_tieable_p James Greenhalgh wrote: > It would be handy if you could raise something in bugzilla for th

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

2016-06-02 Thread Thomas Schwinge
Hi! On Wed, 1 Jun 2016 17:12:17 +0200, Jakub Jelinek wrote: > 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 OM

Re: [PATCH][AArch64] Add missing fcsel in Cortex-A57 scheduler

2016-06-02 Thread James Greenhalgh
On Thu, Jun 02, 2016 at 04:09:32PM +, Wilco Dijkstra wrote: > The Cortex-A57 scheduler is missing fcsel, so add it. > > OK for commit? OK. Thanks, James > > ChangeLog: > 2016-06-02 Wilco Dijkstra > > * config/arm/cortex-a57.md (cortex_a57_fp_cpys): Add fcsel. > > --- > diff --gi

Re: [PATCH][wwwdocs][AArch64] Mention -mcpu=qdf24xx support for GCC 6

2016-06-02 Thread James Greenhalgh
On Thu, Jun 02, 2016 at 03:54:43PM +0100, Kyrill Tkachov wrote: > Hi all, > > As discussed some time ago with Jim, here's the AArch64 note mentioning the > support for Qualcomm QDF24xx that was added in GCC 6. > > Ok to commit? OK. Thanks, James > Index: htdocs/gcc-6/changes.html > ===

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

2016-06-02 Thread Jakub Jelinek
On Thu, Jun 02, 2016 at 06:20:57PM +0200, Thomas Schwinge wrote: > relevant. Nested function decomposition is not applicable to C++, so we > don't need any C++ test cases, right? C++ has lambdas, but those are already lowered in the FE, so yes, from the OpenMP/OpenACC FEs, tree-nested.c is only u

[RFC: Patch 4/6] Modify cost model for noce_cmove_arith

2016-06-02 Thread James Greenhalgh
Hi, This patch clears up the cost model for noce_try_cmove_arith. We lose the "??? FIXME: Magic number 5" comment, and gain a more realistic cost model for if-converting memory accesses. This is the patch that will cause the largest behavioural change for most targets - the current heuristic doe

[RFC: Patch 1/6] New target hook: rtx_branch_cost

2016-06-02 Thread James Greenhalgh
Hi, This patch introduces a new target hook, to be used like BRANCH_COST but with a guaranteed unit of measurement. We want this to break away from the current ambiguous uses of BRANCH_COST. BRANCH_COST is used in ifcvt.c in two types of comparisons. One against instruction counts - where it is

[RFC: Patch 0/6] Rewrite the noce-ifcvt cost models

2016-06-02 Thread James Greenhalgh
Hi, When I was working in the area last year, I promised to revisit the cost model for noce if-conversion and see if I could improve the modeling. This turned out to be more tricky than I expected. This patch set rewrites the cost model for noce if-conversion. The goal is to rationalise the units

[RFC: Patch 5/6] Improve the cost model for multiple-sets

2016-06-02 Thread James Greenhalgh
Hi, This patch is a small rewrite to the cost model for bb_ok_for_noce_multiple_sets to use the new noce_cmove_estimate_cost function added in the previous patches. Thanks, James --- 2016-06-02 James Greenhalgh * ifcvt.c (bb_of_for_noce_convert_multiple_sets): Change cost model. di

[RFC: Patch 2/6] Factor out the comparisons against magic numbers in ifcvt

2016-06-02 Thread James Greenhalgh
Hi, This patch pulls the comparisons between if_info->branch_cost and a magic number representing an instruction count to a common function. While I'm doing it, I've documented the instructions that the magic numbers relate to, and updated them where they were inconsistent. If our measure of the

[RFC: Patch 3/6] Remove if_info->branch_cost

2016-06-02 Thread James Greenhalgh
Hi, This patch removes what is left of branch_cost uses, moving them to use the new hook and tagging each left over spot with a TODO to revisit them. All these uses are in rtx costs units, so we don't have more work to do at this point. OK? Thanks, James --- 2016-06-02 James Greenhalgh

[RFC: Patch 6/6] Remove second cost model from noce_try_store_flag_mask

2016-06-02 Thread James Greenhalgh
Hi, This transformation tries two cost models, one estimating the number of insns to use, one estimating the RTX cost of the transformed sequence. This is inconsistent with the other cost models used in ifcvt.c and unnecessary - eliminate the second cost model. Thanks, James --- 2016-06-02 Jam

Re: [PATCH] Fix 416.gamess miscompare (PR71311)

2016-06-02 Thread Bernhard Reutner-Fischer
On June 1, 2016 9:37:26 AM GMT+02:00, Richard Biener wrote: >> PR tree-optimization/71311 >> * genmatch.c (comparison_code_p): New predicate. TREE_CODE_CLASS (code) == tcc_comparison ? thanks,

[Patch, fortran] PR70350 - [5 Regression] ICE with -fcheck=all and array initialization

2016-06-02 Thread Paul Richard Thomas
Dear All, I just backported the fix for this as revision 237043. This was fixed on 6-branch, when it was trunk, as r232850. I apologise for not doing this much earlier but, as the fortran list knows, life outside gfortran has intervened big-time over the last few months. I did not add a testcase

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

2016-06-02 Thread Sandra Loosemore
On 06/01/2016 08:19 AM, Koval, Julia wrote: diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index 2d4f028..3e6a796 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -5266,6 +5266,79 @@ On x86-32 targets, the @code{stdcall} attribute causes the compiler to assume that the cal

Re: [PATCH] Fix 416.gamess miscompare (PR71311)

2016-06-02 Thread Richard Biener
On June 2, 2016 7:47:19 PM GMT+02:00, Bernhard Reutner-Fischer wrote: >On June 1, 2016 9:37:26 AM GMT+02:00, Richard Biener > wrote: > >>> PR tree-optimization/71311 >>> * genmatch.c (comparison_code_p): New predicate. > >TREE_CODE_CLASS (code) == tcc_comparison Only if I'd pull all of t

[PATCH] Fix cgraph edge redirection with non-POD lhs (PR middle-end/71387)

2016-06-02 Thread Jakub Jelinek
Hi! Apparently my r236430 change (trunk) and r236431 (6.x) broke the following testcase. In the later similar change to gimple-fold.c in r236506 I've added code to tweak gimple_call_fntype if we have newly one of the void something (void) __attribute__((noreturn)) functions like __builtin_unreach

[PATCH, applied] Backport PowerPC ISA 3.0 C min/max support to GCC 6.2

2016-06-02 Thread Michael Meissner
I backported the changes for adding the ISA 3.0 C min/max and floating point scalar compare generating a mask (for conditional move) to the GCC 6.2 branch. The changes in this patch were checked into the trunk on May 25th (with one patch from May 18th from a patch set that has not been backported y

Re: [PATCH] Fix 416.gamess miscompare (PR71311)

2016-06-02 Thread Bernhard Reutner-Fischer
On June 2, 2016 9:05:36 PM GMT+02:00, Richard Biener wrote: >On June 2, 2016 7:47:19 PM GMT+02:00, Bernhard Reutner-Fischer > wrote: >>On June 1, 2016 9:37:26 AM GMT+02:00, Richard Biener >> wrote: >> PR tree-optimization/71311 * genmatch.c (comparison_code_p): New predicate. >> >>

[PATCH 00/16] v6 of -fself-test/unit-testing patch

2016-06-02 Thread David Malcolm
Given that we're now using an "abort on first failure" model, I renamed all of the EXPECT_ macros to ASSERT_ (for consistency with GTest). As per Bernd's suggestions I eliminated the runner class and moved to a more function-based rather than class-based approach. At this point, the only reasons

[PATCH 01/16] Core of selftest framework (v6)

2016-06-02 Thread David Malcolm
gcc/ChangeLog: * Makefile.in (OBJS): Add function-tests.o, hash-map-tests.o, hash-set-tests.o, rtl-tests.o, selftest-run-tests.o. (OBJS-libcommon): Add selftest.o. (OBJS-libcommon-target): Add selftest.o. (all.internal): Add "selftests". (all.

[PATCH 09/16] gimple.c: add selftests

2016-06-02 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 > 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 te

  1   2   >