Re: [PATCH] config/bfin/bfin.c (hwloop_optimize): Use return false instead of gcc_assert for checking jump_insn.

2015-06-30 Thread Chen Gang
On 06/30/2015 03:46 AM, Bernd Schmidt wrote: > On 06/28/2015 04:15 PM, Chen Gang wrote: >> For bfin looping optimization, after lsetup optimization, it can have >> the correct lsetup related insns which causes gcc_assert for jump_insn. > > I've been debugging this for a bit, and at least the expla

[patch committed SH] Fix PR target/64833

2015-06-30 Thread Kaz Kojima
The attached patch is to fix PR target/64833 which is a 4.9/5/6 regression. The target reorg may replace casesi_worker_1 insn with casesi_worker_2 with a temporary wrong length for PIC. It can result the wrong position of the constant pool. See PR target/64833 for details. The patch set the lengt

Re: [committed,gomp4] Run testsuite/libgomp.oacc-c++/c++.exp at -O2 by default

2015-06-30 Thread Cesar Philippidis
On 06/30/2015 02:30 PM, Tom de Vries wrote: > diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/routine-1.c > b/libgomp/testsuite/libgomp.oacc-c-c++-common/routine-1.c > index 144f892..6b22e7f 100644 > --- a/libgomp/testsuite/libgomp.oacc-c-c++-common/routine-1.c > +++ b/libgomp/testsuite/l

Re: [C++/66443]

2015-06-30 Thread Nathan Sidwell
On 06/30/15 00:19, Jason Merrill wrote: On 06/29/2015 06:57 PM, Nathan Sidwell wrote: * method.c (synthesized_method_walk): Skip virtual bases of abstract classes in C++14 mode. Let's not limit this to C++14 mode; most DRs apply to earlier standards as well. ok, works for me. (sorry

Re: [PATCH] Allow embedded timestamps by C/C++ macros to be set externally

2015-06-30 Thread Joseph Myers
Since cpplib is a library and doesn't have any existing getenv calls, I wonder if it would be better for the cpplib client (i.e. something in the gcc/ directory) to be what calls getenv and then informs cpplib of the timestamp it should treat as being the time of compilation. -- Joseph S. Myer

Re: max_load_factor constant complexity

2015-06-30 Thread Jonathan Wakely
On 30/06/15 22:25 +0200, François Dumont wrote: Hi During a recent discussion on Reflector about max_load_factor some pointed that libstdc++ has not the constant complexity as imposed by the Standard in Table 103 because we try to respect the new factor by potentially rehashing the container.

Re: [Patch,tree-optimization]: Add new path Splitting pass on tree ssa representation

2015-06-30 Thread Joseph Myers
On Tue, 30 Jun 2015, Ajit Kumar Agarwal wrote: > * gcc/common.opt: Add the new flag ftree-path-split. All options need documenting in invoke.texi. > +#include "tm.h" Why? Does some other header depend on this, or are you using a target macro? -- Joseph S. Myers jos...@codesourcery.c

[PATCH] fix PR46029: reimplement if conversion of loads and stores [2nd submitted version of patch]

2015-06-30 Thread Abe
New relative to previous version of same patch: * addressed comments/suggestions from Alan and Richard. * disabled the test cases that are currently not if-converted correctly, pending improvements to the new if-converter Passed regression testing and bootstrap on amd64-linux. 2015-06-12 S

Re: [PATCH] Fix PR c++/66686 (dependent template template substitution)

2015-06-30 Thread Jason Merrill
OK. Jason

[committed,gomp4] Run testsuite/libgomp.oacc-c++/c++.exp at -O2 by default

2015-06-30 Thread Tom de Vries
[ was Re: [committed] Run testsuite/libgomp.oacc-c++/c++.exp at -O2 by default ] On 30/06/15 17:48, Tom de Vries wrote: [ was: Re: [patch] Run testsuite/libgomp.c++/c++.exp at -O2 by default ] On 30/06/15 14:07, Jakub Jelinek wrote: On Mon, Jun 15, 2015 at 06:36:17PM +0200, Tom de Vries wrote

Re: [patch] fix regrename pass to ensure renamings produce valid insns

2015-06-30 Thread Eric Botcazou
> Oh, yuck -- it never even occurred to me that gcc_assert could be > disabled. I'll bet there are other bugs in GCC due to this very same > problem of depending on its argument being executed for side-effect. Very likely so... > (E.g. take a look at add_stmt_to_eh_lp_fn in tree-eh.c.) Seems li

Re: [patch] Fix ICE during SCC hashing in LTO mode

2015-06-30 Thread Eric Botcazou
> Ok (I suppose this also affects the GCC 5 branch?) Thanks. Yes, it does, but I'm not sure if we need to backport it immediately. -- Eric Botcazou

RFA: Use target-insns.def for casesi and tablejump

2015-06-30 Thread Richard Sandiford
This patch uses target-insns.def to define casesi and tablejump. It's the first point in the series at which we need access to the instruction code, so the patch adds that to targetm as well. Bootstrapped & regression-tested on x86_64-linux-gnu and aarch64-linux-gnu. Also tested via config-list.mk

[committed] Use target-insns.def for jump

2015-06-30 Thread Richard Sandiford
Bootstrapped & regression-tested on x86_64-linux-gnu and aarch64-linux-gnu. Also tested via config-list.mk. Committed as preapproved. Thanks, Richard gcc/ * target-insns.def (jump): New targetm instruction pattern. * bb-reorder.c (get_uncond_jump_length): Use targetm.gen_jump

[committed] Use target-insns.def for {load,store}_multiple

2015-06-30 Thread Richard Sandiford
Bootstrapped & regression-tested on x86_64-linux-gnu and aarch64-linux-gnu. Also tested via config-list.mk. Committed as preapproved. Thanks, Richard gcc/ * defaults.h (HAVE_load_multiple, gen_load_multiple) (HAVE_store_multiple, gen_store_multiple): Delete. * target-ins

[committed] Use target-insns.def for memory fences & barriers

2015-06-30 Thread Richard Sandiford
Bootstrapped & regression-tested on x86_64-linux-gnu and aarch64-linux-gnu. Also tested via config-list.mk. Committed as preapproved. Thanks, Richard gcc/ * defaults.h (HAVE_mem_thread_fence, gen_mem_thread_fence) (HAVE_memory_barrier, gen_memory_barrier, HAVE_mem_signal_fence)

[committed] Use target-insns.def for prologue & epilogue insns

2015-06-30 Thread Richard Sandiford
Bootstrapped & regression-tested on x86_64-linux-gnu and aarch64-linux-gnu. Also tested via config-list.mk. Committed as preapproved. Thanks, Richard gcc/ * defaults.h (HAVE_epilogue, gen_epilogue): Delete. * target-insns.def (epilogue, prologue, sibcall_prologue): New t

[PATCH] Graphite cannot handle return stmt

2015-06-30 Thread Aditya Kumar
No regressions. 2015-06-29 Aditya Kumar Sebastian Pop * graphite-scop-detection.c (stmt_simple_for_scop_p): Bail out in case of a return statement. --- gcc/graphite-scop-detection.c | 1 - 1 file changed, 1 deletion(-) diff --git a/gcc/graphite-scop-detection.c b/gcc/g

[PATCH, committed] jit: add switch statements

2015-06-30 Thread David Malcolm
This is a revised, combined version of the patches posted here: https://gcc.gnu.org/ml/gcc-patches/2015-06/msg01858.html ("[PATCH 1/2] Add gcc/typed-splay-tree.h") https://gcc.gnu.org/ml/gcc-patches/2015-06/msg01859.html ("[PATCH 2/2] jit: add switch statements") with the fix to patch

max_load_factor constant complexity

2015-06-30 Thread François Dumont
Hi During a recent discussion on Reflector about max_load_factor some pointed that libstdc++ has not the constant complexity as imposed by the Standard in Table 103 because we try to respect the new factor by potentially rehashing the container. This patch fix this problem by adopting VS Stand

Re: [C++ Patch] PR 60365

2015-06-30 Thread Paolo Carlini
oops, I mean the below. Paolo. Index: cp/parser.c === --- cp/parser.c (revision 225177) +++ cp/parser.c (working copy) @@ -22532,6 +22547,28 @@ cp_parser_std_attribute (cp_parser *parser) return attribute; } +

Re: [C++ Patch] PR 60365

2015-06-30 Thread Paolo Carlini
Hi, On 06/30/2015 08:31 PM, Jason Merrill wrote: OK. Thanks Jason. If you don't object, I propose to commit instead the simpler version below, which makes for better error-recovery in case of multiple errors. Thanks again, Paolo. / Index: cp/parser.c ==

Re: [PATCH] Fix PR c++/66686 (dependent template template substitution)

2015-06-30 Thread Patrick Palka
On Sat, Jun 27, 2015 at 2:37 PM, Patrick Palka wrote: > This patch makes coerce_template_template_parm consider a coercion > successful if the result of calling tsubst on a template template parm > is a dependent type even when the desired argument type is non-dependent. > > For the test case belo

[PATCH, committed] PR jit/66546: Add gcc_jit_context_set_bool_allow_unreachable_blocks

2015-06-30 Thread David Malcolm
Normally libgccjit verifies that all blocks within a function are reachable by some path from the entry block, issuing a hard error if it encounters an unreachable block, which is useful for the common case. However, some bytecode interpreters can generate unreachable bytecodes, so it's useful whe

[PATCH, committed] PR jit/66628: add gcc_jit_context_add_command_line_option

2015-06-30 Thread David Malcolm
This patch adds a new entrypoint to libgccjit: gcc_jit_context_add_command_line_option allowing client code to add arbitrary command-line options without needing to recompile libgccjit.so This is the first new entrypoint since the initial release of libgccjit, so the patch also adds symbol-versi

[PATCH, committed] fixes to gcc_jit_context_dump_reproducer_to_file

2015-06-30 Thread David Malcolm
Tested with "make check-jit" and visual inspection; jit.sum continues to have 8014 passes. Committed to trunk as r225204. gcc/jit/ChangeLog: * jit-recording.c (gcc::jit::recording::context::dump_reproducer_to_file): Add pragma to generated reproducers to disable -Wunused-v

[PATCH, committed] jit: fix some .rst issues in docs

2015-06-30 Thread David Malcolm
gcc/jit/ChangeLog: * docs/cp/topics/expressions.rst: Remove stray semicolon. * docs/cp/topics/functions.rst: Remove stray backslash. * docs/_build/texinfo/libgccjit.texi: Regenerate. Committed to trunk as r225203. --- gcc/jit/docs/cp/topics/expressions.rst | 2 +- gcc/jit

Re: [patch] fix regrename pass to ensure renamings produce valid insns

2015-06-30 Thread Sandra Loosemore
On 06/30/2015 03:06 AM, Eric Botcazou wrote: I notice the way gcc_assert() is defined in system.h now, the test won't disappear even when runtime checks are disabled, though you might still adjust it to avoid any programmer confusion. It will disappear at run time, see the definition: /* Inclu

Re: [C++ Patch] PR 60365

2015-06-30 Thread Jason Merrill
OK. Jason

[C++ Patch] PR 60365

2015-06-30 Thread Paolo Carlini
Hi, this issue is an accepts invalid about multiple noreturn in an attribute-list. The same issue exists for deprecated in C++14 (and will exist for carries_dependency when we'll implement it...). Of course it would be easy to imagine more efficient algorithms doing the check only once after

Re: [PATCH] Allow embedded timestamps by C/C++ macros to be set externally

2015-06-30 Thread Mike Stump
On Jun 30, 2015, at 10:38 AM, Martin Sebor wrote: >> In the debian reproducible builds project we have considered several >> options to address this issue. We considered redefining the __DATE__ and >> __TIME__ defines by command line flags passed to gcc, but as you say, >> that triggers warnings,

[gomp] openacc reduction cleanup

2015-06-30 Thread Cesar Philippidis
This patch removes a lot of the crufty code which was necessary for an arbitrary sized vector reductions. The new plan going forward it to fix vector_length to a size such that vector loops don't require any synchronization after the loop have terminated. In the case of nvptx targets, vector_length

patch to fix PR66691

2015-06-30 Thread Vladimir Makarov
The following patch fixes https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66691 The patch was tested and bootstrapped on x86/x86-64. Committed as rev. 225200. Index: ChangeLog === --- ChangeLog (revision 225194) +++ ChangeLog (workin

Re: [PATCH] Allow embedded timestamps by C/C++ macros to be set externally

2015-06-30 Thread Martin Sebor
In the debian reproducible builds project we have considered several options to address this issue. We considered redefining the __DATE__ and __TIME__ defines by command line flags passed to gcc, but as you say, that triggers warnings, which could become errors when building with -Werror and thus

[match.pd, committed] Tweak ~x | x

2015-06-30 Thread Marek Polacek
As discussed here: . Bootstrapped/regtested on x86_64-linux, applying to trunk. 2015-06-30 Marek Polacek * match.pd (~x | x): Don't use tree_nop_conversion_p. Build the final expression with the operand's type and then

[match.pd, committed] Improve X - (X / Y) * Y

2015-06-30 Thread Marek Polacek
This patch improves the X - (X / Y) * Y simplification a bit; with using convert[12]? we're also able to fold INTEGER_CSTs with different types. Except using convert[12]? I also had to convert both operands of the resulting expression to keep the gimple verifier happy. Bootstrapped/regtested on x

Re: [PATCH] Allow embedded timestamps by C/C++ macros to be set externally

2015-06-30 Thread Manuel López-Ibáñez
On 30 June 2015 at 17:18, Dhole wrote: > In the debian reproducible builds project we have considered several > options to address this issue. We considered redefining the __DATE__ and > __TIME__ defines by command line flags passed to gcc, but as you say, > that triggers warnings, which could bec

Re: [gomp4.1] Support #pragma omp target {enter,exit} data

2015-06-30 Thread Jakub Jelinek
On Tue, Jun 30, 2015 at 06:42:01PM +0300, Ilya Verbin wrote: > On Tue, Jun 30, 2015 at 14:57:02 +0200, Jakub Jelinek wrote: > > On Tue, Jun 30, 2015 at 03:19:30PM +0300, Ilya Verbin wrote: > > > --- a/libgomp/target.c > > > +++ b/libgomp/target.c > > > @@ -580,10 +581,16 @@ gomp_unmap_vars (struct

Re: [PATCH/RFC] Make loop-header-copying more aggressive, rerun before tree-if-conversion

2015-06-30 Thread Alan Lawrence
Jeff Law wrote: Thanks. Does running the phi-only propagator after the loop header copying help? At first glance it would seem that it ought to propagate the values of those degenerate PHIs then eliminate those PHIs. It was written to cleanup after jump threading which has a tendency to cre

[committed] Run testsuite/libgomp.oacc-c++/c++.exp at -O2 by default

2015-06-30 Thread Tom de Vries
[ was: Re: [patch] Run testsuite/libgomp.c++/c++.exp at -O2 by default ] On 30/06/15 14:07, Jakub Jelinek wrote: On Mon, Jun 15, 2015 at 06:36:17PM +0200, Tom de Vries wrote: Hi, this patch: - sets DEFAULT_CFLAGS to -O2, if not set otherwise (similar to what is done in c.exp) - removes supe

RE: [PATCH] Discard Scops for which entry==exit

2015-06-30 Thread Aditya K
Hi Tobias, A test case (gcc/testsuite/gcc.dg/graphite/pr18792.c) came up when we removed `graphite-scop-detection.c:limit_scops'. The test case is a scop where entry==exit, BB5 (*#) -> BB6 (#); BB6 -> BB5; In this case BB2 is out of the scop. This is basically an empty (infinite) loop with no e

Re: [gomp4.1] Support #pragma omp target {enter,exit} data

2015-06-30 Thread Ilya Verbin
On Tue, Jun 30, 2015 at 14:57:02 +0200, Jakub Jelinek wrote: > On Tue, Jun 30, 2015 at 03:19:30PM +0300, Ilya Verbin wrote: > > --- a/libgomp/target.c > > +++ b/libgomp/target.c > > @@ -580,10 +581,16 @@ gomp_unmap_vars (struct target_mem_desc *tgt, bool > > do_copyfrom) > >bool do_unmap =

Re: [PATCH] Allow embedded timestamps by C/C++ macros to be set externally

2015-06-30 Thread Dhole
On 06/30/2015 04:48 PM, Manuel López-Ibáñez wrote: > On 30/06/15 16:43, Manuel López-Ibáñez wrote: >> Perhaps this has been discussed and discarded before (if so I would >> appreciate >> if you could point me to the relevant discussion), why not simply >> redefine >> __DATE__ and __TIME__ to an app

Re: [patch] Constrain allocator_arg_t to only work with valid Allocators

2015-06-30 Thread Jonathan Wakely
On 30/06/15 15:49 +0100, Jonathan Wakely wrote: I'm also playing with another change to make allocator_traits SFINAE-friendly, by only defining the nested allocator_type member when __is_allocator is true. If it works I think that might be worth standardising. Something like this, although with

Re: [PATCH] Allow embedded timestamps by C/C++ macros to be set externally

2015-06-30 Thread Manuel López-Ibáñez
On 30/06/15 16:43, Manuel López-Ibáñez wrote: On 30/06/15 15:18, Dhole wrote: A solution for toolchain packages that embed timestamps during the build process has been proposed for anyone interested and it consists of the following: Perhaps this has been discussed and discarded before (if so I

[patch] Constrain allocator_arg_t to only work with valid Allocators

2015-06-30 Thread Jonathan Wakely
This is what I have been experimenting with as an alternative to making allocator_arg_t non-DefaultConstructible. By replacing allocator_arg_t parameters with __alloc_arg_t<_Alloc> we can constrain constructors to only participate in overload resolution when _Alloc quacks sufficiently like an all

Re: [PATCH] Allow embedded timestamps by C/C++ macros to be set externally

2015-06-30 Thread Manuel López-Ibáñez
On 30/06/15 15:18, Dhole wrote: A solution for toolchain packages that embed timestamps during the build process has been proposed for anyone interested and it consists of the following: Perhaps this has been discussed and discarded before (if so I would appreciate if you could point me to the

Re: [patch] PR debug/66653: avoid late_global_decl on decl_type_context()s

2015-06-30 Thread Jason Merrill
On 06/29/2015 06:32 PM, Jason Merrill wrote: On 06/29/2015 05:07 AM, Richard Biener wrote: On Fri, Jun 26, 2015 at 11:59 PM, Jason Merrill wrote: On 06/26/2015 05:37 AM, Richard Biener wrote: Can we defer TLS model setting to template instantiation? We need to represent somehow that __thre

[AArch64/testsuite] Restrict pic-small.c by a new directive "check_effective_target_aarch64_small_fpic"

2015-06-30 Thread Jiong Wang
As discussed here https://gcc.gnu.org/ml/gcc-patches/2015-06/msg02151.html, Since have enabled binutils feature detection when configuring gcc, -fpic will not be enabled if there is no binutils support on those new relocation modifiers, thus we should update the testcase pic-small.c, only run

[patch] Show errors when generating libstdc++ API PDF

2015-06-30 Thread Jonathan Wakely
This makes it a bit easier to determine why 'make doc-pdf-doxygen' failed, for the common case where it's a missing TeX package. Tested x86_64-linux, committed to trunk. commit 432831cb555b79d686f3c8bdd115d5386d9d6301 Author: Jonathan Wakely Date: Tue Jun 30 13:48:19 2015 +0100 * doc/Mak

Re: [PATCH] Move ~X | X -> -1 folding

2015-06-30 Thread Richard Biener
On Tue, 30 Jun 2015, Marek Polacek wrote: > On Tue, Jun 30, 2015 at 03:59:23PM +0200, Richard Biener wrote: > > On Tue, 30 Jun 2015, Marek Polacek wrote: > > > > > On Tue, Jun 30, 2015 at 03:13:14PM +0200, Richard Biener wrote: > > > > On Tue, 30 Jun 2015, Marek Polacek wrote: > > > > > > > > >

Re: [PATCH] Move ~X | X -> -1 folding

2015-06-30 Thread Marek Polacek
On Tue, Jun 30, 2015 at 03:59:23PM +0200, Richard Biener wrote: > On Tue, 30 Jun 2015, Marek Polacek wrote: > > > On Tue, Jun 30, 2015 at 03:13:14PM +0200, Richard Biener wrote: > > > On Tue, 30 Jun 2015, Marek Polacek wrote: > > > > > > > On Tue, Jun 30, 2015 at 02:47:49PM +0200, Richard Biener

Re: [PATCH] Move ~X | X -> -1 folding

2015-06-30 Thread Richard Biener
On Tue, 30 Jun 2015, Marek Polacek wrote: > On Tue, Jun 30, 2015 at 03:13:14PM +0200, Richard Biener wrote: > > On Tue, 30 Jun 2015, Marek Polacek wrote: > > > > > On Tue, Jun 30, 2015 at 02:47:49PM +0200, Richard Biener wrote: > > > > On Tue, 30 Jun 2015, Marek Polacek wrote: > > > > > > > > >

Re: [Patch, fortran] PR52846 - [F2008] Support submodules

2015-06-30 Thread FX
Hi Paul, I don’t feel confident enough in many parts of the code (including the module part) to formally review it, but from what I’ve read it seemed rather logical and well-commented. If it regtests fine, I think your plan (especially at the current GCC stage) of committing this week is sound.

Re: [PATCH] Move ~X | X -> -1 folding

2015-06-30 Thread Marek Polacek
On Tue, Jun 30, 2015 at 03:13:14PM +0200, Richard Biener wrote: > On Tue, 30 Jun 2015, Marek Polacek wrote: > > > On Tue, Jun 30, 2015 at 02:47:49PM +0200, Richard Biener wrote: > > > On Tue, 30 Jun 2015, Marek Polacek wrote: > > > > > > > On Tue, Jun 30, 2015 at 01:39:29PM +0200, Marc Glisse wro

Re: [PATCH] top-level for libvtv: use normal (not raw_cxx) target exports

2015-06-30 Thread Michael Haubenwallner
On 06/30/2015 02:54 PM, Jonathan Wakely wrote: > On 29/06/15 18:57 +0200, Michael Haubenwallner wrote: >> Actually, an unexpected libstdc++-v3/configure change is introduced by some >> inconsistency in >> https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=223196 >> where acinclude.m4 contains

[patch] Use template not template in std::pair

2015-06-30 Thread Jonathan Wakely
An unimportant change to meet our usual convention. Tested powerpc64le-linux, committed to trunk. commit a4461920b9169f8d07c8827fa77f6500573ed5a2 Author: Jonathan Wakely Date: Tue Jun 30 14:27:43 2015 +0100 * include/bits/stl_pair.h: Replace class keyword with typename. diff --git a/lib

Re: [hsa] HSA: add support for function declaration emission and, fix RA.

2015-06-30 Thread Martin Liška
On 06/30/2015 03:28 PM, Michael Matz wrote: > Hi, > > On Tue, 30 Jun 2015, Martin Liška wrote: > >> Following patch implements emission of function declarations and removes >> hsa_call_block_insn. The insn is replaced with a new hsa_arg_block_insn, >> which will make insn iteration flat and muc

Re: [Patch SRA] Fix PR66119 by calling get_move_ratio in SRA

2015-06-30 Thread James Greenhalgh
On Fri, Jun 26, 2015 at 06:10:00PM +0100, Jakub Jelinek wrote: > On Fri, Jun 26, 2015 at 06:03:34PM +0100, James Greenhalgh wrote: > > --- /dev/null > > +++ b/gcc/testsuite/g++.dg/pr66119.C > > I think generally testcases shouldn't be added into g++.dg/ directly, > but subdirectories. So g++.dg/o

Re: [hsa] HSA: add support for function declaration emission and, fix RA.

2015-06-30 Thread Michael Matz
Hi, On Tue, 30 Jun 2015, Martin Liška wrote: > Following patch implements emission of function declarations and removes > hsa_call_block_insn. The insn is replaced with a new hsa_arg_block_insn, > which will make insn iteration flat and much easier for register > allocator. Given that BRIG fo

Re: [v3 PATCH] Implement N4387 and LWG 2367

2015-06-30 Thread Jonathan Wakely
On 13/06/15 21:05 +0300, Ville Voutilainen wrote: Another round! The new patch - makes sure not to change non-deduced parameters to deduced ones, and adds tests for that. - removes the name of the bool non-type template parameter for the 'concepts'. - introduces shortcuts for making the use of th

[hsa] Remove assumption that each translation unit must have a, kernel.

2015-06-30 Thread Martin Liška
Hello. Attached patch is very simple and does $subject. Thanks, Martin >From ad7053eb82a354dce6a5460a3b3c5f1dba939094 Mon Sep 17 00:00:00 2001 From: mliska Date: Thu, 25 Jun 2015 13:58:51 +0200 Subject: [PATCH 2/2] Remove assumption that each translation unit must have a kernel. gcc/ChangeLog:

[PATCH][9/n] Remove GENERIC stmt combining from SCCVN

2015-06-30 Thread Richard Biener
This moves the rest of the patterns in match-bitwise.pd from the match-and-simplify branch (those that make sense - I'll merge the rest to the tail of match.pd on the branch). Bootstrap & regtest running on x86_64-unknown-linux-gnu. Richard. 2015-06-30 Richard Biener * fold-const.c

[hsa] HSA: add support for function declaration emission and, fix RA.

2015-06-30 Thread Martin Liška
Hello. Following patch implements emission of function declarations and removes hsa_call_block_insn. The insn is replaced with a new hsa_arg_block_insn, which will make insn iteration flat and much easier for register allocator. Thanks, Martin >From abb5eb3cf4f8569d2e003aabc5f078fcd17348a6 Mon

[PATCH] Allow embedded timestamps by C/C++ macros to be set externally

2015-06-30 Thread Dhole
Hi! We are working in Debian —and I know other free software projects care— in providing our users with a way to reproduce bit-for-bit identical binary packages from the source and build environment. See for some rationale and further explanations

Re: [PATCH] Move ~X | X -> -1 folding

2015-06-30 Thread Richard Biener
On Tue, 30 Jun 2015, Marek Polacek wrote: > On Tue, Jun 30, 2015 at 02:47:49PM +0200, Richard Biener wrote: > > On Tue, 30 Jun 2015, Marek Polacek wrote: > > > > > On Tue, Jun 30, 2015 at 01:39:29PM +0200, Marc Glisse wrote: > > > > Does my suggestion to "build the all_ones constant in TREE_TYPE

Re: Four jit backports to gcc 5 branch

2015-06-30 Thread David Malcolm
On Tue, 2015-06-30 at 08:43 +0200, Basile Starynkevitch wrote: > On Mon, Jun 29, 2015 at 11:44:31AM -0400, David Malcolm wrote: > > I've gone over the changes to the gcc/jit and gcc/testsuite/jit.dg > > directories in trunk since gcc 5 and backported the following 4 changes > > from trunk to the gc

Re: [PATCH] Move ~X | X -> -1 folding

2015-06-30 Thread Marek Polacek
On Tue, Jun 30, 2015 at 02:47:49PM +0200, Richard Biener wrote: > On Tue, 30 Jun 2015, Marek Polacek wrote: > > > On Tue, Jun 30, 2015 at 01:39:29PM +0200, Marc Glisse wrote: > > > Does my suggestion to "build the all_ones constant in TREE_TYPE (@0) and > > > convert that to type" help for that? >

Re: [gomp4.1] Support #pragma omp target {enter,exit} data

2015-06-30 Thread Jakub Jelinek
On Tue, Jun 30, 2015 at 03:19:30PM +0300, Ilya Verbin wrote: > --- a/libgomp/target.c > +++ b/libgomp/target.c > @@ -580,10 +581,16 @@ gomp_unmap_vars (struct target_mem_desc *tgt, bool > do_copyfrom) >bool do_unmap = false; >if (k->refcount > 1) > k->refcount--; > - els

Re: [PATCH] top-level for libvtv: use normal (not raw_cxx) target exports

2015-06-30 Thread Jonathan Wakely
On 29/06/15 18:57 +0200, Michael Haubenwallner wrote: Actually, an unexpected libstdc++-v3/configure change is introduced by some inconsistency in https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=223196 where acinclude.m4 contains different code than the recreated configure: acinclude.m4-3

[PATCH] Fix PR66704

2015-06-30 Thread Richard Biener
Committed as obvious. Richard. 2015-06-30 Richard Biener PR tree-optimization/66704 * tree-vect-data-refs.c (vect_setup_realignment): Use make_ssa_name for non-SSA name source. Index: gcc/tree-vect-data-refs.c =

Re: [PATCH] Move ~X | X -> -1 folding

2015-06-30 Thread Richard Biener
On Tue, 30 Jun 2015, Marek Polacek wrote: > On Tue, Jun 30, 2015 at 01:39:29PM +0200, Marc Glisse wrote: > > Does my suggestion to "build the all_ones constant in TREE_TYPE (@0) and > > convert that to type" help for that? > > It appears to work, but it seems weird to me to create a integer const

Re: [PATCH] Move ~X | X -> -1 folding

2015-06-30 Thread Marek Polacek
On Tue, Jun 30, 2015 at 01:39:29PM +0200, Marc Glisse wrote: > Does my suggestion to "build the all_ones constant in TREE_TYPE (@0) and > convert that to type" help for that? It appears to work, but it seems weird to me to create a integer constant in one type and then immediately cast it to anoth

Re: [PATCH 2/2] Add leon3r0 and leon3r0v7 CPU targets

2015-06-30 Thread Daniel Cederman
On 2015-06-30 11:24, Eric Botcazou wrote: The UT699 is a leon3r0 system which does not support CASA. However, to enable the errata fixes for UT699 with -mfix-ut699 requires the CPU target to be leon3. -mfix-ut699 itself is independent of the processor and doesn't require leon3. The instructio

RE: [Patch,tree-optimization]: Add new path Splitting pass on tree ssa representation

2015-06-30 Thread Ajit Kumar Agarwal
I forgot to attach the Link of the RFC comments from Jeff for reference. https://gcc.gnu.org/ml/gcc/2015-05/msg00302.html Thanks & Regards Ajit -Original Message- From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches-ow...@gcc.gnu.org] On Behalf Of Ajit Kumar Agarwal Sent: Tuesday, J

Re: [Patch, fortran] PR52846 - [F2008] Support submodules

2015-06-30 Thread Paul Richard Thomas
Dear All, Please find attached the latest version of the submodule patch. You might note that the number of the patch has been incremented by two. The intermediate version went to Reinhold Bader and co for testing. The main improvements in this version are: (i) As reported by Reinhold, the interfa

[PATCH] Fix simdclone pass for addressable linear/uniform parameters (PR middle-end/66702)

2015-06-30 Thread Jakub Jelinek
Hi! As the first testcase shows, we were mishandling addressable uniform/linear parameters, in that case keeping them to use the (D) ssa name for uniform or doing the iteration for linear doesn't work, so we need to handle it slightly differently. Bootstrapped/regtested on x86_64-linux and i686-l

[gomp4.1] Support #pragma omp target {enter,exit} data

2015-06-30 Thread Ilya Verbin
Hi! This patch implements GOMP_target_enter_exit_data in libgomp, also it fixes a bug in gomp_map_vars_existing. make check-target-libgomp passed. However, I am afraid that there may be some hard-to-find issues (like memory leaks) in cases of mixed (structured+unstructured) data mappings... OK for

Re: [patch] Run testsuite/libgomp.c++/c++.exp at -O2 by default

2015-06-30 Thread Jakub Jelinek
On Mon, Jun 15, 2015 at 06:36:17PM +0200, Tom de Vries wrote: > Hi, > > this patch: > - sets DEFAULT_CFLAGS to -O2, if not set otherwise > (similar to what is done in c.exp) > - removes superfluous dg-options "-O2" settings. > - removes superfluous dg-options "-fopenmp" settings. > - uses dg-add

RE: [Patch,tree-optimization]: Add new path Splitting pass on tree ssa representation

2015-06-30 Thread Ajit Kumar Agarwal
-Original Message- From: Richard Biener [mailto:richard.guent...@gmail.com] Sent: Tuesday, June 30, 2015 4:42 PM To: Ajit Kumar Agarwal Cc: l...@redhat.com; GCC Patches; Vinod Kathail; Shail Aditya Gupta; Vidhumouli Hunsigida; Nagaraju Mekala Subject: Re: [Patch,tree-optimization]: Add

[PATCH] Cut down match-and-simplify TDF_DETAILS noise

2015-06-30 Thread Richard Biener
This short-cuts re-simplifying (convert ...)s which often are no-ops because a conditional convert didn't match. So instead of throwing the whole match-and-simplify machinery on such converts and yell out that match.pd:961 triggered (that really happens often...) the following simply does nothing

[PING][patch] Run testsuite/libgomp.c++/c++.exp at -O2 by default

2015-06-30 Thread Tom de Vries
On 15/06/15 18:36, Tom de Vries wrote: Hi, this patch: - sets DEFAULT_CFLAGS to -O2, if not set otherwise (similar to what is done in c.exp) - removes superfluous dg-options "-O2" settings. - removes superfluous dg-options "-fopenmp" settings. - uses dg-additional-options for -std= settings

Re: [PATCH] Move ~X | X -> -1 folding

2015-06-30 Thread Marc Glisse
On Tue, 30 Jun 2015, Marek Polacek wrote: I put some more converts into the pattern, but then it's turned out that I also need the tree_nop_conversion_p (otherwise we'd regress binop-notor2.c that uses booleans). I don't really see why removing tree_nop_conversion_p would regress anything (tho

Re: [Patch,tree-optimization]: Add new path Splitting pass on tree ssa representation

2015-06-30 Thread Richard Biener
On Tue, Jun 30, 2015 at 10:16 AM, Ajit Kumar Agarwal wrote: > All: > > The below patch added a new path Splitting optimization pass on SSA > representation. The Path Splitting optimization > Pass moves the join block of if-then-else same as loop latch to its > predecessors and get merged with th

Re: [patch] Fix ICE during SCC hashing in LTO mode

2015-06-30 Thread Richard Biener
On Tue, Jun 30, 2015 at 12:10 PM, Eric Botcazou wrote: > Hi, > > the attached Ada testcase triggers an internal error in LTO mode: > > eric@polaris:~/build/gcc/native> gcc/gnat1 -quiet lto17.adb -flto > +===GNAT BUG DETECTED==+ > | 6.0.0 20150629

Re: [PATCH 2/2] Add leon3r0 and leon3r0v7 CPU targets

2015-06-30 Thread Eric Botcazou
> Yes, there is only one optimization trick for the scheduler that requires > leon3, but it doesn't affect correctness. We could easily change that, i.e. > enable the trick for leon too if -mfix-ut699 is passed. Like this, applied on all branches. 2015-06-30 Eric Botcazou * config/s

Re: [PATCH] Move ~X | X -> -1 folding

2015-06-30 Thread Marek Polacek
On Tue, Jun 30, 2015 at 12:22:57PM +0200, Bernhard Reutner-Fischer wrote: > >+unsigned int > >+fn3 (unsigned int x) > >+{ > >+ return ~x | x; > >+} > >+ > >+unsigned int > >+fn4 (unsigned int x) > >+{ > >+ return ~x | x; > >+} > > What's the difference between fn3 and fn4? Oops, fixed. 2015-06

[committed] Add parloops-exit-first-loop-alt-{5,6,7}.c

2015-06-30 Thread Tom de Vries
Hi, This patch adds variants of parloops-exit-first-loop-alt.c, to cover all combinations of loop bound signed/unsigned and loop counter signed/unsigned. Committed to trunk. Thanks, - Tom Add parloops-exit-first-loop-alt-{5,6,7}.c 2015-06-29 Tom de Vries * gcc.dg/parloops-exit-first-loo

Re: [patch] fix regrename pass to ensure renamings produce valid insns

2015-06-30 Thread Chung-Lin Tang
On 2015/6/30 05:06 PM, Eric Botcazou wrote: >> I notice the way gcc_assert() is defined in system.h now, the test won't >> disappear even when runtime checks are disabled, though you might still >> adjust it to avoid any programmer confusion. > > It will disappear at run time, see the definition:

RE: [Patch,tree-optimization]: Add new path Splitting pass on tree ssa representation

2015-06-30 Thread Bernhard Reutner-Fischer
On June 30, 2015 12:38:13 PM GMT+02:00, Ajit Kumar Agarwal wrote: >>6. Added 2 tests. >>a) compilation check tests. >> b) execution tests. > >>>The 2 tests seem to be identical, so why do you have both? >>>Also, please remove cleanup-tree-dump, this is now done >automatically. > >The test

RE: [Patch,tree-optimization]: Add new path Splitting pass on tree ssa representation

2015-06-30 Thread Ajit Kumar Agarwal
-Original Message- From: Bernhard Reutner-Fischer [mailto:rep.dot@gmail.com] Sent: Tuesday, June 30, 2015 3:57 PM To: Ajit Kumar Agarwal; l...@redhat.com; GCC Patches Cc: Vinod Kathail; Shail Aditya Gupta; Vidhumouli Hunsigida; Nagaraju Mekala Subject: Re: [Patch,tree-optimization]:

Re: [PATCH] Move ~X | X -> -1 folding

2015-06-30 Thread Richard Biener
On Tue, 30 Jun 2015, Marek Polacek wrote: > On Tue, Jun 30, 2015 at 11:08:35AM +0200, Marc Glisse wrote: > > On Tue, 30 Jun 2015, Marek Polacek wrote: > > > > >This moves a simple optimization. Here it's plain to see how :c > > >removes the need to duplicate code to handle commutativity. > > >

Re: [Patch,tree-optimization]: Add new path Splitting pass on tree ssa representation

2015-06-30 Thread Bernhard Reutner-Fischer
On June 30, 2015 10:16:01 AM GMT+02:00, Ajit Kumar Agarwal wrote: >All: > >The below patch added a new path Splitting optimization pass on SSA >representation. The Path Splitting optimization >Pass moves the join block of if-then-else same as loop latch to its >predecessors and get merged with th

Re: [PATCH][AArch64][PR 66136] rewrite geniterators.sh in awk

2015-06-30 Thread Szabolcs Nagy
On 02/06/15 18:01, Szabolcs Nagy wrote: > On 01/06/15 13:55, Marcus Shawcroft wrote: >> On 18 May 2015 at 15:57, Szabolcs Nagy wrote: >>> Rewrote the generator script in awk, to avoid dealing with >>> sed portability issues. >>> >>> gcc/Changelog: >>> >>> 2015-05-18 Szabolcs Nagy >>> >>>

Re: [PATCH] Move ~X | X -> -1 folding

2015-06-30 Thread Marek Polacek
On Tue, Jun 30, 2015 at 11:08:35AM +0200, Marc Glisse wrote: > On Tue, 30 Jun 2015, Marek Polacek wrote: > > >This moves a simple optimization. Here it's plain to see how :c > >removes the need to duplicate code to handle commutativity. > > Note that the same transformation would work for plus a

Re: [PATCH] Move ~X | X -> -1 folding

2015-06-30 Thread Bernhard Reutner-Fischer
On June 30, 2015 10:46:21 AM GMT+02:00, Marek Polacek wrote: >--- gcc/testsuite/gcc.dg/fold-ior-2.c >+++ gcc/testsuite/gcc.dg/fold-ior-2.c >@@ -0,0 +1,47 @@ >+/* { dg-do compile } */ >+/* { dg-options "-O -fdump-tree-cddce1" } */ >+ >+int >+fn1 (int x) >+{ >+ return ~x | x; >+} >+ >+int >+fn2 (

[gomp4, committed] Insert new exit block only when needed in transform_to_exit_first_loop_alt

2015-06-30 Thread Tom de Vries
Hi, while testing the (now committed) fix for PR66642 (Add empty loop exit block in transform_to_exit_first_loop_alt) on the gomp-4_0-branch I ran into an ICE for the kernels-reduction.c testcase. For oacc kernels, we don't generate a low iteration count loop, so the exit block of the loop a

[patch] Fix ICE during SCC hashing in LTO mode

2015-06-30 Thread Eric Botcazou
Hi, the attached Ada testcase triggers an internal error in LTO mode: eric@polaris:~/build/gcc/native> gcc/gnat1 -quiet lto17.adb -flto +===GNAT BUG DETECTED==+ | 6.0.0 20150629 (experimental) [trunk revision 225111] (x86_64-suse-linux) GCC err

Re: [PATCH, 2/2][PR66642] Add empty loop exit block in transform_to_exit_first_loop_alt

2015-06-30 Thread Tom de Vries
On 25/06/15 09:43, Tom de Vries wrote: Hi, I ran into a failure with parloops for reduction loop testcase libgomp/testsuite/libgomp.c/parloops-exit-first-loop-alt-3.c. When we exercise the low iteration count loop, the test-case fails. To understand the problem, let's first look at what happen

[PATCH][8/n] Remove GENERIC stmt combining from SCCVN

2015-06-30 Thread Richard Biener
The following moves some bitwise patterns from the match-and-simplify branch, extending them with proper conditional converts and removing the corresponding patterns from fold-const.c Bootstrap & regtest in progress on x86_64-unknown-linux-gnu. Richard. 2015-06-30 Richard Biener * f

  1   2   >