Re: Add irreflexive comparison debug check

2015-07-31 Thread Jonathan Wakely
On 31 July 2015 at 20:49, François Dumont wrote: On 30/07/2015 12:30, Jonathan Wakely wrote: On 29/07/15 22:08 +0200, François Dumont wrote: Standard algos signatures are such that there is no guaranty that the operator or predicate to compare the iterator value type will exist. So I had

Re: offload data version number

2015-07-31 Thread Nathan Sidwell
On 07/31/15 08:16, Nathan Sidwell wrote: On 07/24/15 15:26, Nathan Sidwell wrote: Jakub, this version makes the following changes to the earlier version. *) Renames things to FOO_ver, rather than FOO_2 *) No attempt to deal with cross-version plugins and libgomp. *) Adds GOMP_OFFLOAD_version

Re: [PATCH 2/n] OpenMP 4.0 offloading infrastructure: LTO streaming

2015-07-31 Thread Thomas Schwinge
Hi! We had established the use of a boolean flag have_offload in gcc::context to indicate whether during compilation, we've actually seen any code to be offloaded (see cited below the relevant parts of the patch by Ilya et al.). This means that currently, the whole offload machinery will not be

Re: libgomp: plugin for non-shared memory host execution

2015-07-31 Thread Thomas Schwinge
Hi! On Thu, 30 Jul 2015 13:51:17 +0200, Jakub Jelinek ja...@redhat.com wrote: On Thu, Jul 30, 2015 at 01:47:37PM +0200, Thomas Schwinge wrote: Here is such a libgomp plugin plus the infrastructure for initial support of non-shared memory host execution. [...] ... the libgomp plugin

Re: [PATCH 2/n] OpenMP 4.0 offloading infrastructure: LTO streaming

2015-07-31 Thread Ilya Verbin
On Fri, Jul 31, 2015 at 16:08:27 +0200, Thomas Schwinge wrote: We had established the use of a boolean flag have_offload in gcc::context to indicate whether during compilation, we've actually seen any code to be offloaded (see cited below the relevant parts of the patch by Ilya et al.). This

Re: [ARM] implement division using vrecpe/vrecps with -funsafe-math-optimizations

2015-07-31 Thread Charles Baylis
On 31 July 2015 at 10:34, Ramana Radhakrishnan ramana.radhakrish...@foss.arm.com wrote: I've tried this in the past and never been convinced that 2 iterations are enough to get to stability with this given that the results are only precise for 8 bits / iteration. Thus I've always believed you

patch for PR66691 backported to gcc5

2015-07-31 Thread Vladimir Makarov
The following patch was committed to gcc5 branch as rev. 226442. The patch was bootstrapped and tested on x86/x86-64. 2015-07-31 Vladimir Makarov vmaka...@redhat.com PR debug/66691 * lra-int.h (lra_substitute_pseudo): Add a parameter.

Re: offload data version number

2015-07-31 Thread Nathan Sidwell
On 07/24/15 15:26, Nathan Sidwell wrote: Jakub, this version makes the following changes to the earlier version. *) Renames things to FOO_ver, rather than FOO_2 *) No attempt to deal with cross-version plugins and libgomp. *) Adds GOMP_OFFLOAD_version function to plugin. (I went with your

[PATCH][3/2] Remove GENERIC comparison folding from fold_stmt

2015-07-31 Thread Richard Biener
This is the promised 3/2 - it removes simplifying the compare in COND_EXPRs through fold_binary in fold_gimple_assign. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress (testing with an assert in place in progress still as well). Richard. 2015-07-31 Richard Biener

FAIL: 24_iterators/container_access.cc (test for excess errors)

2015-07-31 Thread Kyrill Tkachov
Hi guys, I'm seeing this new test failing on aarch64-none-elf introduced with: commit 0d252ab36fb1a85bcaf8e48a7a49a9727d6fa90d Author: redi redi@138bc75d-0d04-0410-961f-82ee72b054a4 Date: Wed Jul 29 12:55:58 2015 + * testsuite/24_iterators/container_access.cc: New.

Re: Constification of _omp_fn.* argument for target regions

2015-07-31 Thread Nathan Sidwell
On 07/31/15 04:43, Jakub Jelinek wrote: Hi! I wonder if we shouldn't change: TREE_TYPE (ctx-receiver_decl) = build_qualified_type (build_reference_type (type), TYPE_QUAL_RESTRICT); in fixup_child_record_type to add: if (is_gimple_omp_offloaded (ctx-stmt)) type =

[PATCH] Initial (very simple) merging of tails of the match.pd code

2015-07-31 Thread Richard Biener
This implements outlining equivalent tails (ifs, withs and the actual transform) of the decision tree generated by genmatch. The initial implementation is conservative (equivalency is pointer equivalency of the transform IL plus ensuring side-effects are the same). It manages to remove 96

Re: [PATCH][RTL-ifcvt] Improve conditional select ops on immediates

2015-07-31 Thread Jeff Law
On 07/30/2015 07:42 AM, Kyrill Tkachov wrote: Hi Jeff, On 29/07/15 23:38, Jeff Law wrote: On 07/29/2015 07:49 AM, Kyrill Tkachov wrote: Hi all, This patch improves RTL if-conversion on sequences that perform a conditional select on integer constants. Most of the smart logic to do that

Re: [PATCH] Optimize certain end of loop conditions into min/max operation

2015-07-31 Thread Jeff Law
On 07/28/2015 01:41 AM, Richard Biener wrote: The above case is a corner case I think - the number of you can change into (multiple) MIN/MAX is unbound but we might only care about the case where there will be one MIN/MAX operation. I suspect that's going to be the most important/common case.

Re: [PATCH][1/N] Change GET_MODE_INNER to always return a non-void mode

2015-07-31 Thread Jeff Law
On 07/28/2015 03:47 AM, David Sherwood wrote: Sorry, the comment should reflect complex types too. How about this? /* Return the mode of the basic parts of MODE. For vector modes this is the mode of the vector elements. For complex modes it is the mode of the real and imaginary

Re: [Patch, MIPS] MIPS specific optimization for o32 ABI

2015-07-31 Thread Steve Ellcey
On Fri, 2015-07-31 at 00:32 +, Joseph Myers wrote: New command-line options need documenting in invoke.texi. Good point, thanks for catching that. Here is an updated patch with invoke.texi. There are no other changes to the patch. Steve Ellcey sell...@imgtec.com 2015-07-31 Steve

Re: [PATCH] Unswitching outer loops.

2015-07-31 Thread Jeff Law
On 07/31/2015 05:17 AM, Yuri Rumyantsev wrote: Hi Richard, I learned your updated patch for 23825 and it is more general in comparison with my. I'd like to propose you a compromise - let's consider my patch only for force-vectorize outer loop only to allow outer-loop vecctorization. Note that

Re: C++ delayed folding branch review

2015-07-31 Thread Jason Merrill
On 07/31/2015 12:46 PM, Jakub Jelinek wrote: On Fri, Jul 31, 2015 at 06:25:57PM +0200, Kai Tietz wrote: 2015-07-31 18:14 GMT+02:00 Jason Merrill ja...@redhat.com: On 07/30/2015 10:48 PM, Jeff Law wrote: Note, anything outside of the C/C++ front-ends depending on that canonicalization done by

Re: [PATCH 1/3] Refactor entry point to -Wmisleading-indentation

2015-07-31 Thread Jeff Law
On 07/27/2015 05:12 PM, Patrick Palka wrote: The only question in my mind is bootstrap regression testing. From reading the thread for the earlier version of this patch I got the impression you had bootstrapped and regression tested earlier versions. If you could confirm that you've

Commit: M32R: Fix handling of the __model__ attribute

2015-07-31 Thread Nick Clifton
Hi Guys, I am checking in the patch below to fix the M32R port's handling of its __model__ attribute. This attribute takes a parameter identifying the memory model to use, but gcc was not being told to expect this identifier. Cheers Nick gcc/ChangeLog 2015-07-31 Nick Clifton

Re: C++ delayed folding branch review

2015-07-31 Thread Jason Merrill
On 07/30/2015 10:48 PM, Jeff Law wrote: Note, anything outside of the C/C++ front-ends depending on that canonicalization done by shorten_compare is, IMHO, broken. I think the OMP code isn't relying on it being done by shorten_compare; it's trying to do it itself in c_finish_omp_for but is

Re: Regression in target MIC compiler (was: nvptx offloading patches [3/n], RFD)

2015-07-31 Thread Jakub Jelinek
On Fri, Jul 31, 2015 at 07:53:16PM +0300, Ilya Verbin wrote: On Fri, Jul 31, 2015 at 19:27:58 +0300, Ilya Verbin wrote: I've noticed that target MIC compiler from trunk hangs forever in lto_input_mode_table in this loop, even on simple testcases. On Wed, Feb 18, 2015 at 11:00:35 +0100,

Re: [patch] Move symbol_visibility to coretypes.h

2015-07-31 Thread Jeff Law
On 07/30/2015 07:13 AM, Andrew MacLeod wrote: Pretty simple. Both flag-types.h and tree-core.h check to see if the other header has already defined this enumerated type, and defined it if not. Its an unnecessary conditional compilation and dual maintenance of this small enum. This patch puts

Re: C++ delayed folding branch review

2015-07-31 Thread Kai Tietz
2015-07-31 18:14 GMT+02:00 Jason Merrill ja...@redhat.com: On 07/30/2015 10:48 PM, Jeff Law wrote: Note, anything outside of the C/C++ front-ends depending on that canonicalization done by shorten_compare is, IMHO, broken. I think the OMP code isn't relying on it being done by

Re: [PATCH] warn for unsafe calls to __builtin_return_address

2015-07-31 Thread Jeff Law
On 07/28/2015 09:44 AM, Martin Sebor wrote: gcc/ChangeLog 2015-07-27 Martin Sebor mse...@redhat.com * c-family/c.opt (-Wbuiltin-address): New warning option. * doc/invoke.texi (Wbuiltin-address): Document it. * doc/extend.texi (__builtin_frame_addrress,

Re: [PATCH][RTL-ifcvt] Make non-conditional execution if-conversion more aggressive

2015-07-31 Thread Jeff Law
On 07/27/2015 10:40 AM, Kyrill Tkachov wrote: On 27/07/15 17:09, Jeff Law wrote: On 07/27/2015 04:17 AM, Kyrill Tkachov wrote: I experimented with resource.c and the roadblock I hit is that it seems to have an assumption that it operates on hard regs (in fact the struct it uses to describe

Re: [PATCH, loop-invariant] Fix PR67043: -fcompare-debug failure with -O3

2015-07-31 Thread Jeff Law
On 07/31/2015 03:25 AM, Thomas Preud'homme wrote: Hi, Since commit r223113, loop-invariant pass rely on luids to determine if an invariant can be hoisted out of a loop without introducing temporaries. However, nothing is made to ensure luids are up-to-date. This patch adds a DF_LIVE problem

Re: offload data version number

2015-07-31 Thread Jakub Jelinek
Index: libgomp/libgomp.map === --- libgomp/libgomp.map (revision 226039) +++ libgomp/libgomp.map (working copy) @@ -234,6 +234,12 @@ GOMP_4.0.1 { GOMP_offload_unregister; } GOMP_4.0; +GOMP_4.0.2 { +

Regression in target MIC compiler (was: nvptx offloading patches [3/n], RFD)

2015-07-31 Thread Ilya Verbin
Hi! I've noticed that target MIC compiler from trunk hangs forever in lto_input_mode_table in this loop, even on simple testcases. On Wed, Feb 18, 2015 at 11:00:35 +0100, Jakub Jelinek wrote: + /* First search just the GET_CLASS_NARROWEST_MODE to wider modes, +if not found, fallback

Re: C++ delayed folding branch review

2015-07-31 Thread Jakub Jelinek
On Fri, Jul 31, 2015 at 06:25:57PM +0200, Kai Tietz wrote: 2015-07-31 18:14 GMT+02:00 Jason Merrill ja...@redhat.com: On 07/30/2015 10:48 PM, Jeff Law wrote: Note, anything outside of the C/C++ front-ends depending on that canonicalization done by shorten_compare is, IMHO, broken. I

Re: Regression in target MIC compiler (was: nvptx offloading patches [3/n], RFD)

2015-07-31 Thread Ilya Verbin
On Fri, Jul 31, 2015 at 19:27:58 +0300, Ilya Verbin wrote: I've noticed that target MIC compiler from trunk hangs forever in lto_input_mode_table in this loop, even on simple testcases. On Wed, Feb 18, 2015 at 11:00:35 +0100, Jakub Jelinek wrote: + /* First search just the

Re: [RFC, patch] New attribute to create target clones

2015-07-31 Thread Jeff Law
On 07/31/2015 05:50 AM, Evgeny wrote: New ctarget attribute automatically clone function and optimize for corresponding target. For target attribute if you specify avx,sse4 you will get only 1 function optimized for the target with higher priority, while ctarget will generate 2 functions: one

Re: [PATCH][1/N] Change GET_MODE_INNER to always return a non-void mode

2015-07-31 Thread Jeff Law
On 07/28/2015 03:35 AM, David Sherwood wrote: On 07/27/2015 04:25 AM, David Sherwood wrote: Hi, Part 1 of this change is a clean-up. I have changed calls to GET_MODE_INNER (m) so that it returns m in cases where there is no inner mode. This simplifies some of the calling code by removing the

[gomp4.1] Start of structure element mapping support

2015-07-31 Thread Jakub Jelinek
Hi! This patch is the start of implementation of struct element mapping. I'm not handling structure element based array sections (neither array based, nor pointer/reference based) yet, nor C++. If the whole struct is already mapped, then that mapping is used, otherwise we require that either all

Re: [PATCH, PR 66521] Fix bootstrap segfault with vtable verification enabled

2015-07-31 Thread Jeff Law
On 07/28/2015 11:11 AM, Caroline Tice wrote: I believe the following patch fixes a problem with bootstrap failures on some architectures with vtable verification enabled. The problem was related to a change in name mangling, where classes with anonymous namespaces get anon as their

Go patch committed: Don't allow builtin function values that are not called

2015-07-31 Thread Ian Lance Taylor
The Go spec says that builtin functions may not be referenced other than being called. This patch from Chris Manghane implements that restriction in the Go frontend. This fixes https://golang.org/issue/11570 . Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to

Re: [PATCH][RTL-ifcvt] Make non-conditional execution if-conversion more aggressive

2015-07-31 Thread Jeff Law
On 07/28/2015 04:14 AM, Kyrill Tkachov wrote: [ Snip ] Here's a respin. I've reworked bbs_ok_for_cmove_arith to go over BB_A once and record the set registers then go over BB_B once and look inside the SET_SRC of each insn for those registers. How does this look? Would you like me to

[gomp4] finish_oacc_declare fix

2015-07-31 Thread James Norris
Hi, The attached patch adds a constraint to prevent finish_oacc_declare from being passed thru multiple times when dealing with a template and and instance of a template. Also cleaned up the interface to finish_oacc_declare. Committed to gomp-4_0-branch. Jim diff --git a/gcc/cp/decl.c

Re: [gomp4.1] fold ordered depend(sink) clauses

2015-07-31 Thread Aldy Hernandez
On 07/31/2015 09:38 AM, Jakub Jelinek wrote: On Thu, Jul 30, 2015 at 07:27:51PM -0700, Aldy Hernandez wrote: +static gimple +gimplify_omp_ordered (tree expr, gimple_seq body) +{ + tree c, decls; + int failures = 0; + unsigned int i; + + if (gimplify_omp_ctxp) +for (c =

[PATCH] 2015-07-31 Benedikt Huber benedikt.hu...@theobroma-systems.com Philipp Tomsich philipp.toms...@theobroma-systems.com

2015-07-31 Thread Benedikt Huber
* config/aarch64/aarch64-builtins.c: Builtins for rsqrt and rsqrtf. * config/aarch64/aarch64-opts.h: -mrecip has a default value depending on the core. * config/aarch64/aarch64-protos.h: Declare. * config/aarch64/aarch64-simd.md: Matching expressions

Re: Regression in target MIC compiler (was: nvptx offloading patches [3/n], RFD)

2015-07-31 Thread Ilya Verbin
On Fri, Jul 31, 2015 at 18:59:59 +0200, Jakub Jelinek wrote: On Fri, Jul 31, 2015 at 07:53:16PM +0300, Ilya Verbin wrote: On Fri, Jul 31, 2015 at 19:27:58 +0300, Ilya Verbin wrote: I've noticed that target MIC compiler from trunk hangs forever in lto_input_mode_table in this loop, even on

Re: Another benefit of the new if converter: better performance for half hammocks when running the generated code on a modern high-speed CPU with write-back caching, relative to the code produced by t

2015-07-31 Thread Abe
[Abe wrote:] After I`ve done the SPEC-based analysis, my next planned steps on this work are to disable the code that [in my WIP] currently causes conversion to be enabled by default when autovectorization is enabled, then to re-integrate the old converter and implement the switches that will

Re: [PATCH] Optimize certain end of loop conditions into min/max operation

2015-07-31 Thread Michael Collison
Hi Jeff, Yes I will create a test case. I'm not quite sure what to check for even in the machine dependent test case. It's quite possible for the instructions that are generated to change over time. On 7/31/2015 9:20 AM, Jeff Law wrote: On 07/28/2015 01:41 AM, Richard Biener wrote: The

Re: [PATCH] Optimize certain end of loop conditions into min/max operation

2015-07-31 Thread Jeff Law
On 07/31/2015 12:18 PM, Michael Collison wrote: Hi Jeff, Yes I will create a test case. I'm not quite sure what to check for even in the machine dependent test case. It's quite possible for the instructions that are generated to change over time. I think we're going to want to look at the

Go patch committed: Update Unicode tables

2015-07-31 Thread Ian Lance Taylor
This patch from Chris Manghane updates the Unicode tables in the Go frontend to Unicode 8. This fixes https://golang.org/issue/11569 . Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Ian Index: gcc/go/gofrontend/MERGE

RE: [PATCH][MIPS] Scheduler fix for the 74k 24k.

2015-07-31 Thread Moore, Catherine
-Original Message- From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- ow...@gcc.gnu.org] On Behalf Of Simon Dardis Sent: Tuesday, July 21, 2015 6:39 AM To: gcc-patches@gcc.gnu.org Subject: [PATCH][MIPS] Scheduler fix for the 74k 24k. Hello, This patch fixes a bug with

Re: Add irreflexive comparison debug check

2015-07-31 Thread François Dumont
On 30/07/2015 12:30, Jonathan Wakely wrote: On 29/07/15 22:08 +0200, François Dumont wrote: Hi Here is a patch to add irreflexive debug check. Awesome! You can add PR libstdc++/60519 to the changelog. Sure. Standard algos signatures are such that there is no guaranty that the

Re: C++ delayed folding branch review

2015-07-31 Thread Kai Tietz
- Ursprüngliche Mail - On 07/31/2015 12:46 PM, Jakub Jelinek wrote: On Fri, Jul 31, 2015 at 06:25:57PM +0200, Kai Tietz wrote: 2015-07-31 18:14 GMT+02:00 Jason Merrill ja...@redhat.com: On 07/30/2015 10:48 PM, Jeff Law wrote: Note, anything outside of the C/C++ front-ends

Re: [gomp4.1] fold ordered depend(sink) clauses

2015-07-31 Thread Jakub Jelinek
On Fri, Jul 31, 2015 at 11:48:01AM -0700, Aldy Hernandez wrote: commit 92e33750f31c7954b8a92763d20630f4e1af9b6b Author: Aldy Hernandez al...@redhat.com Date: Wed Jul 29 13:39:06 2015 -0700 * wide-int.h (wi::gcd): New. * gimplify.c (struct gimplify_omp_ctx): Rename iter_vars to

[PATCH 2/2] jit: add timing API

2015-07-31 Thread David Malcolm
This requires and is required by the previous patch; I've split them up to make the earlier patch easier to review. gcc/jit/ChangeLog: * docs/topics/compatibility.rst (LIBGCCJIT_ABI_4): New. * docs/topics/contexts.rst (GCC_JIT_BOOL_OPTION_DUMP_SUMMARY): We no longer show a

[PATCH 1/2] gcc parts of timer refactoring

2015-07-31 Thread David Malcolm
In r223092 (aka dd4d567f4b6b498242097c41d63666bdae320ac1) I moved the state of timevar.c from being global data into a class timer with a global instance g_timer. This followup patch generalizes the timing within toplev so that an external timer instance can (optionally) be passed in; this is

[PATCH 0/2] Refactoring of timevar API

2015-07-31 Thread David Malcolm
The attached two patches correspond to the first patch: [PATCH 01/16] gcc: Generalization of timevar API; add gcc_jit_timer interface https://gcc.gnu.org/ml/gcc-patches/2015-06/msg00122.html of the 16-patch kit I posted in June: https://gcc.gnu.org/ml/gcc-patches/2015-06/msg00116.html For

Go patch committed: Check types in function declarations

2015-07-31 Thread Ian Lance Taylor
This patch to the Go frontend by Chris Manghane checks that the types that appear in function declarations are valid. This fixes https://golang.org/issue/11567. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Ian Index: gcc/go/gofrontend/MERGE

[PATCH v4][aarch64] Implemented reciprocal square root (rsqrt) estimation in -ffast-math

2015-07-31 Thread Benedikt Huber
This fourth revision of the patch: * fixes an error in the docs. * uses gen_rsqrt* functions. * uses extra_tuning_flags. Ok for check in. Benedikt Huber (1): 2015-07-31 Benedikt Huber benedikt.hu...@theobroma-systems.com Philipp Tomsich

Re: [gomp4.1] fold ordered depend(sink) clauses

2015-07-31 Thread Jakub Jelinek
On Thu, Jul 30, 2015 at 07:27:51PM -0700, Aldy Hernandez wrote: +static gimple +gimplify_omp_ordered (tree expr, gimple_seq body) +{ + tree c, decls; + int failures = 0; + unsigned int i; + + if (gimplify_omp_ctxp) +for (c = OMP_ORDERED_CLAUSES (expr); c; c = OMP_CLAUSE_CHAIN (c))

Re: C++ delayed folding branch review

2015-07-31 Thread Kai Tietz
- Ursprüngliche Mail - On 07/30/2015 05:00 PM, Kai Tietz wrote: 2015-07-30 18:52 GMT+02:00 Jason Merrill ja...@redhat.com: On 07/29/2015 06:56 PM, Kai Tietz wrote: @@ -13078,6 +13042,8 @@ build_enumerator (tree name, tree value, tree enumtype, tree attributes, if

[PATCH] Remove GENERIC folding of binary RHS from fold_stmt

2015-07-31 Thread Richard Biener
This removes dispatching to fold_binary from fold_gimple_assign with GIMPLE_BINARY_RHS. As usual tested that it doesn't trigger anymore on a bootstrap regtest on x86_64-unknown-linux-gnu. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2015-07-31 Richard Biener

Possible patch for 62242

2015-07-31 Thread Louis Krupp
As far as I can tell, the problem in 62242 (and possibly 62246) is with a string array constructor trying to deal with an array element whose value is a character function that is described in an interface block and which has an assumed-length result. I can't claim more than a superficial

Use cmpstr and cmpstrn optabs

2015-07-31 Thread Richard Sandiford
expand_builtin_strcmp has: if (direct_optab_handler (cmpstr_optab, SImode) != CODE_FOR_nothing || direct_optab_handler (cmpstrn_optab, SImode) != CODE_FOR_nothing) { ... machine_mode insn_mode = insn_data[(int) CODE_FOR_cmpstrsi].operand[0].mode;

[wwwdocs] Update re C++ moved to gnu++14

2015-07-31 Thread Marek Polacek
Applied. Index: changes.html === RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-6/changes.html,v retrieving revision 1.18 diff -u -r1.18 changes.html --- changes.html27 Jul 2015 14:36:20 - 1.18 +++ changes.html31 Jul

Patch for fortran/62536 and fortran/66175

2015-07-31 Thread Louis Krupp
This patch cleans up nested blocks when there's an unexpected end of a compilation unit (66175), and it handles cleaned-up blocks gracefully (62536). I've run make check-fortran with the attached test cases. Index: ChangeLog ===

RE: [PATCH v4][aarch64] Implemented reciprocal square root (rsqrt) estimation in -ffast-math

2015-07-31 Thread Evandro Menezes
Hi, Benedikt. It looks pretty good. I'd just hesitate to go about defining which cores benefit from this by default, IIUC. Cheers, -- Evandro Menezes Austin, TX -Original Message- From: gcc-patches-ow...@gcc.gnu.org

Go patch committed: Fix error reporting for invalid builtin calls

2015-07-31 Thread Ian Lance Taylor
This patch from Chris Manghane fixes the Go frontend error reporting for invalid builtin calls, by not losing track of whether the call is erroneous. This fixes https://golang.org/issue/11561. Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Ian Index:

[patch committed SH] Fix PR target/67049

2015-07-31 Thread Kaz Kojima
I've committed the one liner below to fix PR target/67049 which causes build failures for sh64-elf on 5/6. There is a typo in GOTaddr2picreg, which is my bad. Tested on sh64-unknown-elf. Regards, kaz -- 2015-07-31 Kaz Kojima kkoj...@gcc.gnu.org PR target/67049 *

[hsa] Add support for kernel from kernel dispatching

2015-07-31 Thread Martin Liška
Hello. Following patch implements $subject, however to fully enable the functionality, omp-low.c must be reverted. That planned operation will be sent soon. Thanks, Martin From 7833b863218c35479fe40af2dff2e6fde1bd3a48 Mon Sep 17 00:00:00 2001 From: mliska mli...@suse.cz Date: Thu, 30 Jul 2015

Constification of _omp_fn.* argument for target regions

2015-07-31 Thread Jakub Jelinek
Hi! I wonder if we shouldn't change: TREE_TYPE (ctx-receiver_decl) = build_qualified_type (build_reference_type (type), TYPE_QUAL_RESTRICT); in fixup_child_record_type to add: if (is_gimple_omp_offloaded (ctx-stmt)) type = build_qualified_type (type, TYPE_QUAL_CONST); before it

Re: [PATCH] Fix PR66870 ppc64le, ppc64 split stack

2015-07-31 Thread David Edelsohn
On Fri, Jul 31, 2015 at 12:00 AM, Alan Modra amo...@gmail.com wrote: On Thu, Jul 30, 2015 at 03:30:12PM -0500, Lynn A. Boger wrote: PR66870 * gcc/config/rs6000/rs6000.c: Add check for no_split_stack function attribute along with flag_split_stack

Re: Constification of _omp_fn.* argument for target regions

2015-07-31 Thread Richard Biener
On Fri, Jul 31, 2015 at 10:43 AM, Jakub Jelinek ja...@redhat.com wrote: Hi! I wonder if we shouldn't change: TREE_TYPE (ctx-receiver_decl) = build_qualified_type (build_reference_type (type), TYPE_QUAL_RESTRICT); in fixup_child_record_type to add: if (is_gimple_omp_offloaded

Re: Constification of _omp_fn.* argument for target regions

2015-07-31 Thread Jakub Jelinek
On Fri, Jul 31, 2015 at 11:22:30AM +0200, Richard Biener wrote: On Fri, Jul 31, 2015 at 10:43 AM, Jakub Jelinek ja...@redhat.com wrote: Hi! I wonder if we shouldn't change: TREE_TYPE (ctx-receiver_decl) = build_qualified_type (build_reference_type (type), TYPE_QUAL_RESTRICT);

Re: [ARM] implement division using vrecpe/vrecps with -funsafe-math-optimizations

2015-07-31 Thread Ramana Radhakrishnan
On 29/07/15 11:09, Prathamesh Kulkarni wrote: Hi, This patch tries to implement division with multiplication by reciprocal using vrecpe/vrecps with -funsafe-math-optimizations and -freciprocal-math enabled. Tested on arm-none-linux-gnueabihf using qemu. OK for trunk ? Thank you,

Re: [PATCH][AArch64][1/3] Expand signed mod by power of 2 using CSNEG

2015-07-31 Thread Andrew Pinski
On Fri, Jul 24, 2015 at 3:55 AM, Kyrill Tkachov kyrylo.tkac...@arm.com wrote: Hi all, This patch implements an aarch64-specific expansion of the signed modulo by a power of 2. The proposed sequence makes use of the conditional negate instruction CSNEG. For a power of N, x % N can be

Re: [PATCH 1/4][ARM][PR target/65697][5.1] Backport stronger barriers for __sync fetch-op builtins.

2015-07-31 Thread Ramana Radhakrishnan
On 27/07/15 11:29, Matthew Wahab wrote: Ping. Updated patch attached. Also, retested for arm-none-linux-gnueabihf with native bootstrap and make check and for arm-none-eabi with cross compiled make check. On 02/07/15 14:12, Matthew Wahab wrote: The __sync builtins are implemented using

Re: [PATCH 4/15][ARM] float16x8_t intrinsics in arm_neon.h

2015-07-31 Thread Kyrill Tkachov
On 28/07/15 12:24, Alan Lawrence wrote: This is a respin of https://gcc.gnu.org/ml/gcc-patches/2015-07/msg00478.html , again making the intrinsics available only if we have a scalar __fp16 type. (This covers the intrinsics whose implementation is entirely within arm_neon.h; those requiring .md

Re: Constification of _omp_fn.* argument for target regions

2015-07-31 Thread Richard Biener
On Fri, Jul 31, 2015 at 11:31 AM, Jakub Jelinek ja...@redhat.com wrote: On Fri, Jul 31, 2015 at 11:22:30AM +0200, Richard Biener wrote: On Fri, Jul 31, 2015 at 10:43 AM, Jakub Jelinek ja...@redhat.com wrote: Hi! I wonder if we shouldn't change: TREE_TYPE (ctx-receiver_decl) =

Possible patch for fortran/65766

2015-07-31 Thread Louis Krupp
The problem is with substrings of allocatable string components of derived types. The code seems to be trying to get the string length from typespec of the derived type variable instead of from the component. The attached patch gets the component typespec from the reference chain. I don't

Re: [PATCH][ARM][3/3] Expand mod by power of 2

2015-07-31 Thread Kyrill Tkachov
Ping. https://gcc.gnu.org/ml/gcc-patches/2015-07/msg02037.html Thanks, Kyrill On 24/07/15 11:55, Kyrill Tkachov wrote: Hi all, This third patch implements the same algorithm as patch 1/3 but for arm. That is, for X % N where N is a power of 2 we do: rsbsr1, r0, #0 and r0, r0,

Re: [PATCH][AArch64][1/3] Expand signed mod by power of 2 using CSNEG

2015-07-31 Thread Kyrill Tkachov
Ping. https://gcc.gnu.org/ml/gcc-patches/2015-07/msg02036.html Thanks, Kyrill On 24/07/15 11:55, Kyrill Tkachov wrote: Hi all, This patch implements an aarch64-specific expansion of the signed modulo by a power of 2. The proposed sequence makes use of the conditional negate instruction

Re: [PATCH][ARM][2/3] Make if_neg_move and if_move_neg into insn_and_split

2015-07-31 Thread Kyrill Tkachov
Ping. https://gcc.gnu.org/ml/gcc-patches/2015-07/msg02038.html This is a prerequisite for patch 3/3 but is a useful cleanup in its own right. Thanks, Kyrill On 24/07/15 11:55, Kyrill Tkachov wrote: Hi all, As part of patch 3/3 I want to expand to an if_then_else form of a conditional negate

[PATCH, loop-invariant] Fix PR67043: -fcompare-debug failure with -O3

2015-07-31 Thread Thomas Preud'homme
Hi, Since commit r223113, loop-invariant pass rely on luids to determine if an invariant can be hoisted out of a loop without introducing temporaries. However, nothing is made to ensure luids are up-to-date. This patch adds a DF_LIVE problem and mark all blocks as dirty before using luids to

Re: [PATCH 3/4][ARM][PR target/65697][5.1] Add tests for __sync_builtins.

2015-07-31 Thread Ramana Radhakrishnan
On 27/07/15 11:31, Matthew Wahab wrote: Ping. Updated patch attached. Also, retested for arm-none-linux-gnueabihf with native bootstrap and make check and for arm-none-eabi with cross compiled make check. On 02/07/15 14:17, Matthew Wahab wrote: This patch backports the tests added for

Re: [PATCH 2/4][ARM][PR target/65697][5.1] Backport stronger barriers for __sync,compare-and-swap builtins.

2015-07-31 Thread Ramana Radhakrishnan
On 27/07/15 11:31, Matthew Wahab wrote: Ping. Updated patch attached. Also, retested for arm-none-linux-gnueabihf with native bootstrap and make check and for arm-none-eabi with cross compiled make check. On 02/07/15 14:15, Matthew Wahab wrote: This patch backports the changes made to

Re: [PATCH 4/4][ARM][PR target/65697][5.1] Fix tests for __sync_builtins.

2015-07-31 Thread Ramana Radhakrishnan
On 27/07/15 11:32, Matthew Wahab wrote: Ping. Updated patch attached. Also, retested for arm-none-linux-gnueabihf with native bootstrap and make check and for arm-none-eabi with cross compiled make check. On 02/07/15 14:18, Matthew Wahab wrote: This patch backports fixes for the __sync

Re: Constification of _omp_fn.* argument for target regions

2015-07-31 Thread Jakub Jelinek
On Fri, Jul 31, 2015 at 11:41:47AM +0200, Richard Biener wrote: Const qualification of a pointer or reference doesn't result in any optimization. The decl you refer to has to be constant. Even if the pointer would be addressable? Yes, it's the decls readonly setting that matters, not

Re: [PATCH GCC]By pass following iterations if expr has already been simplified into const.

2015-07-31 Thread Richard Biener
On Tue, Jul 28, 2015 at 11:09 AM, Bin Cheng bin.ch...@arm.com wrote: Hi, This is an obvious change to bypass following iterations if expr has already been simplified into constant in function simplify_using_loop_initial_conditions. Is it OK? Ok. Thanks, Richard. Thanks, bin 2015-07-28

[PATCH] [AVX512F] Add scatter support for vectorizer

2015-07-31 Thread Petr Murzin
Hello, This patch adds scatter support for vectorizer (for AVX512F instructions). Please have a look. Is it OK for trunk? Thanks, Petr 2015-07-31 Andrey Turetskiy andrey.turets...@intel.com Petr Murzin petr.mur...@intel.com gcc/ * config/i386/i386-builtin-types.def

Re: [PATCH][ARM][2/3] Make if_neg_move and if_move_neg into insn_and_split

2015-07-31 Thread Ramana Radhakrishnan
On 31/07/15 11:49, Kyrill Tkachov wrote: On 31/07/15 11:34, Ramana Radhakrishnan wrote: So, we have a predicate that doesn't cover all the constraints - in this case aren't we forcing everything into operand0. What happens if we just delete this pattern instead of turning it into an

Re: ira.c update_equiv_regs patch causes gcc/testsuite/gcc.target/arm/pr43920-2.c regression

2015-07-31 Thread Alex Velenko
On 29/07/15 23:14, Jeff Law wrote: On 07/28/2015 12:18 PM, Alex Velenko wrote: On 21/04/15 06:27, Jeff Law wrote: On 04/20/2015 01:09 AM, Shiva Chen wrote: Hi, Jeff Thanks for your advice. can_replace_by.patch is the new patch to handle both cases. pr43920-2.c.244r.jump2.ori is the

Re: [PATCHES, PING*2] Enhance standard DWARF for Ada

2015-07-31 Thread Pierre-Marie de Rodat
On 07/31/2015 12:54 PM, Pierre-Marie de Rodat wrote: On 07/16/2015 10:34 AM, Pierre-Marie de Rodat wrote: This patch series aims at enhancing GCC to emit standard DWARF in place of the current GNAT encodings (non-standard DWARF) for a set of basic types: dynamic arrays, variable-length records,

Re: [PATCH][ARM][2/3] Make if_neg_move and if_move_neg into insn_and_split

2015-07-31 Thread Kyrill Tkachov
On 31/07/15 12:04, Ramana Radhakrishnan wrote: On 31/07/15 11:49, Kyrill Tkachov wrote: On 31/07/15 11:34, Ramana Radhakrishnan wrote: So, we have a predicate that doesn't cover all the constraints - in this case aren't we forcing everything into operand0. What happens if we just delete

Re: [PATCH] Fix uninitialized variable with ubsan on ARM (PR sanitizer/66977)

2015-07-31 Thread Marek Polacek
On Tue, Jul 28, 2015 at 03:13:41PM +0200, Marek Polacek wrote: This fixes a problem where on ARM ubsan can introduce an uninitialized variable. It's ARM only since the ARM C++ ABI says that when creating a pointer to member function, the LSB of ptr discriminates between the address of a

Re: [PATCH] Unswitching outer loops.

2015-07-31 Thread Yuri Rumyantsev
Hi Richard, I learned your updated patch for 23825 and it is more general in comparison with my. I'd like to propose you a compromise - let's consider my patch only for force-vectorize outer loop only to allow outer-loop vecctorization. Note that your approach will not hoist invariant guards if

Re: [PATCH][ARM][2/3] Make if_neg_move and if_move_neg into insn_and_split

2015-07-31 Thread Ramana Radhakrishnan
As mentioned earlier I'll change operand 1 to be use the s_register_operand predicate and re-test. Is that change ok as well? Yes that's ok . Ramana Thanks, Kyrill regards Ramana

Re: [PATCH][ARM][2/3] Make if_neg_move and if_move_neg into insn_and_split

2015-07-31 Thread Ramana Radhakrishnan
Hmmm, not sure if this is that straightforward just looking at this.. 2015-07-24 Kyrylo Tkachov kyrylo.tkac...@arm.com * config/arm/arm.md (*if_neg_move): Convert to insn_and_split. Enable for TARGET_32BIT. (*if_move_neg): Likewise. commit

Re: [PATCH] Allow non-overflow ops in vect_is_simple_reduction_1

2015-07-31 Thread Richard Biener
On Wed, Jul 29, 2015 at 7:18 PM, Tom de Vries tom_devr...@mentor.com wrote: On 29/07/15 14:00, Richard Biener wrote: On Wed, Jul 29, 2015 at 1:22 PM, Tom de Vries tom_devr...@mentor.com wrote: On 29/07/15 10:09, Richard Biener wrote: On Tue, Jul 28, 2015 at 2:08 PM, Tom de Vries

Re: Constification of _omp_fn.* argument for target regions

2015-07-31 Thread Richard Biener
On Fri, Jul 31, 2015 at 11:51 AM, Jakub Jelinek ja...@redhat.com wrote: On Fri, Jul 31, 2015 at 11:41:47AM +0200, Richard Biener wrote: Const qualification of a pointer or reference doesn't result in any optimization. The decl you refer to has to be constant. Even if the pointer would

Re: Another benefit of the new if converter: better performance for half hammocks when running the generated code on a modern high-speed CPU with write-back caching, relative to the code produced by t

2015-07-31 Thread Richard Biener
On Wed, Jul 29, 2015 at 6:25 PM, Abe abe_skol...@yahoo.com wrote: Well. We don't generally introduce regressions with changes. Understood. Regressions are bad, of course. TTBOMK the regressions in question are temporary. Once they are gone, I think we can then look at whether or not we

Re: [PATCH][ARM][2/3] Make if_neg_move and if_move_neg into insn_and_split

2015-07-31 Thread Kyrill Tkachov
On 31/07/15 11:18, Ramana Radhakrishnan wrote: Hmmm, not sure if this is that straightforward just looking at this.. 2015-07-24 Kyrylo Tkachov kyrylo.tkac...@arm.com * config/arm/arm.md (*if_neg_move): Convert to insn_and_split. Enable for TARGET_32BIT. (*if_move_neg):

[hsa] C++ification

2015-07-31 Thread Martin Liška
Hello. This patch transforms couple of static functions to newly introduced member functions. Martin From caeddc48345a74a6b4c75e01cc68fda511655b3a Mon Sep 17 00:00:00 2001 From: mliska mli...@suse.cz Date: Wed, 29 Jul 2015 23:05:55 +0200 Subject: [PATCH 1/2] HSA: C++ification. gcc/ChangeLog:

[hsa] Fix issue spotted by valgrind

2015-07-31 Thread Martin Liška
Hello. Following small patch removes write of uninitialized memory to BRIG insn stream. Martin From 533041ecb00f69226ba44c45c6c69d349e05413d Mon Sep 17 00:00:00 2001 From: mliska mli...@suse.cz Date: Fri, 31 Jul 2015 12:08:34 +0200 Subject: [PATCH 2/2] HSA: fix write of uninitialized memory.

Re: [PATCH][ARM][2/3] Make if_neg_move and if_move_neg into insn_and_split

2015-07-31 Thread Ramana Radhakrishnan
So, we have a predicate that doesn't cover all the constraints - in this case aren't we forcing everything into operand0. What happens if we just delete this pattern instead of turning it into an insn_and_split - after all we have other parts of the backend where conditional negates and

  1   2   >