Re: [PATCH, committed] libstdc++-v3/fragment.am (AM_CPPFLAGS): Add CPPFLAGS

2015-07-24 Thread Michael Haubenwallner
On 07/07/2015 04:48 PM, Michael Haubenwallner wrote: Hi build machinery maintainers, when the host system does not have the iconv-devel package installed, but the target-prefix does contain iconv.h, in libstdc++/include the creation of the precompiled headers fails with iconv.h not found.

Re: Fold some equal to and not equal to patterns in match.pd

2015-07-24 Thread Kai Tietz
2015-07-24 7:54 GMT+02:00 Jeff Law l...@redhat.com: On 07/23/2015 10:33 AM, Segher Boessenkool wrote: On Thu, Jul 23, 2015 at 10:09:49AM -0600, Jeff Law wrote: It seems to me in these kind of cases that selection of the canonical form should be driven by factors outside of which is better

[PATCH][RFC][match.pd] optimize (X C) == N when C is power of 2

2015-07-24 Thread Kyrill Tkachov
Hi all, This transformation folds (X % C) == N into X ((1 (size - 1)) | (C - 1))) == N for constants C and N where N is positive and C is a power of 2. The idea is similar to the existing X % C - X (C - 1) transformation for unsigned values but this time when we have the comparison we use

[Patch] C++/64079

2015-07-24 Thread Paolo Carlini
Hi, I think this can go in, given Jason's feedback in the audit trail of the bug. I'm going to wait until the end of the day, anyway. Tested x86_64-linux. Thanks, Paolo. 2015-07-24 Manuel López-Ibáñez m...@gcc.gnu.org PR c++/64079 * toplev.c

Re: [PATCH][AArch64][11/14] Re-layout SIMD builtin types on builtin expansion

2015-07-24 Thread Kyrill Tkachov
On 22/07/15 10:11, James Greenhalgh wrote: On Tue, Jul 21, 2015 at 05:59:39PM +0100, Kyrill Tkachov wrote: Sorry, here's the correct version, which uses initialized instead of inited in one of the variable names. Some nits below. Kyrill 2015-07-21 Kyrylo Tkachov kyrylo.tkac...@arm.com

Re: [PATCH] Simple optimization for MASK_STORE.

2015-07-24 Thread Richard Biener
On Thu, Jul 23, 2015 at 10:03 PM, Jeff Law l...@redhat.com wrote: On 07/20/2015 09:05 AM, Yuri Rumyantsev wrote: Hi Jeff! Thanks for your details comments. You asked: How are conditionals on vectors usually handled? You should try to mimick that and report, with detail, why that's not

Re: Fold some equal to and not equal to patterns in match.pd

2015-07-24 Thread Richard Biener
On Fri, Jul 24, 2015 at 9:48 AM, Kai Tietz ktiet...@googlemail.com wrote: 2015-07-24 7:54 GMT+02:00 Jeff Law l...@redhat.com: On 07/23/2015 10:33 AM, Segher Boessenkool wrote: On Thu, Jul 23, 2015 at 10:09:49AM -0600, Jeff Law wrote: It seems to me in these kind of cases that selection of

Re: [Bug fortran/52846] [F2008] Support submodules - part 3/3

2015-07-24 Thread Damian Rouson
I love this idea and had similar thoughts as well. :D Sent from my iPhone On Jul 24, 2015, at 1:06 AM, Paul Richard Thomas paul.richard.tho...@gmail.com wrote: Dear Mikael, It had crossed my mind also that a .mod and a .smod file could be written. Normally, the .smod files are

Re: [PATCH][AArch64][3/14] Refactor option override code

2015-07-24 Thread Kyrill Tkachov
On 20/07/15 17:44, James Greenhalgh wrote: On Thu, Jul 16, 2015 at 04:20:37PM +0100, Kyrill Tkachov wrote: Hi all, This one is more meaty than the previous ones. It buffs up the parsing functions for the mcpu, march, mtune options, decouples them and makes them return an enum describing the

Re: [PATCH][RFC][match.pd] optimize (X C) == N when C is power of 2

2015-07-24 Thread Jakub Jelinek
On Fri, Jul 24, 2015 at 09:09:39AM +0100, Kyrill Tkachov wrote: This transformation folds (X % C) == N into X ((1 (size - 1)) | (C - 1))) == N for constants C and N where N is positive and C is a power of 2. The idea is similar to the existing X % C - X (C - 1) transformation for

[PATCH] Return true when gimple_simplify valueizes

2015-07-24 Thread Richard Biener
The stmt interface for gimple_simplify currently does not return changed when valueization would change it (it does if canonicalization does). This causes missed optimizations compared to the fold based code in fold_stmt. Fixed as follows which runs into the issue that for variadic builtins

Re: [PATCH][doc][13/14] Document AArch64 target attributes and pragmas

2015-07-24 Thread Kyrill Tkachov
On 17/07/15 20:45, Sandra Loosemore wrote: On 07/17/2015 06:37 AM, Kyrill Tkachov wrote: Hi Sandra, On 17/07/15 04:21, Sandra Loosemore wrote: On 07/16/2015 09:21 AM, Kyrill Tkachov wrote: Hi all, This patch adds the documentation for the AArch64 target attributes and pragmas. Ok for

Re: s390-linux fails to build

2015-07-24 Thread Dominik Vogt
On Thu, Jul 23, 2015 at 03:03:29PM +0200, Ulrich Weigand wrote: Oh, I agree this will not be *used*. I just wanted to point out that it will not *break* cross-compilers as is. I've just verified that cross compilation *does* work at the moment with the patches quoted in some earlier post.

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

2015-07-24 Thread Richard Biener
I have to re-test the following because of an exposed bug in the C++ frontend which fed fold_binary with a signed long sizetype compare with mismatched types. The patch moves canonicalization of comparison codes to minimize an involved constant, like X = 5 to X 4, to match.pd. The C++ part I

Re: [PATCH][RFC][match.pd] optimize (X C) == N when C is power of 2

2015-07-24 Thread Kyrill Tkachov
On 24/07/15 10:00, Richard Biener wrote: On Fri, 24 Jul 2015, Kyrill Tkachov wrote: On 24/07/15 09:23, Jakub Jelinek wrote: On Fri, Jul 24, 2015 at 09:09:39AM +0100, Kyrill Tkachov wrote: This transformation folds (X % C) == N into X ((1 (size - 1)) | (C - 1))) == N for constants C and N

Re: [PATCH][RFC][match.pd] optimize (X C) == N when C is power of 2

2015-07-24 Thread Ramana Radhakrishnan
On Fri, Jul 24, 2015 at 10:04 AM, Kyrill Tkachov kyrylo.tkac...@arm.com wrote: It arrives as SSA_NAME == N and you can use get_gimple_for_ssa_name or get_def_for_expr to get at the defining stmt if that is possible (it's still unexpanded and thus TERed) and expand a different expression.

Re: [PATCH][RFC][match.pd] optimize (X C) == N when C is power of 2

2015-07-24 Thread Jakub Jelinek
On Fri, Jul 24, 2015 at 10:23:59AM +0100, Kyrill Tkachov wrote: On 24/07/15 10:09, Jakub Jelinek wrote: On Fri, Jul 24, 2015 at 09:48:30AM +0100, Kyrill Tkachov wrote: Bootstrapped and tested on arm, aarch64, x86_64. I think this is another case that, if at all, should be done during or

Re: [PATCH][RFC][match.pd] optimize (X C) == N when C is power of 2

2015-07-24 Thread Ramana Radhakrishnan
In expr.c, with TER you can detect such patterns, in this case when expanding the comparison, but perhaps we want a *.pd file that would have rules that would be only GIMPLE and only enabled in a special pass right before (or very close to) expansion, that would perform such instruction

Re: [PATCH 3/4] Add libgomp plugin for Intel MIC

2015-07-24 Thread Jakub Jelinek
On Thu, Jul 23, 2015 at 09:50:55PM +0300, Ilya Verbin wrote: Here, I note that the xxd tool is being used, which in my distribution is part of the Vim editor's package, which -- as far as I know -- is not currently declared as a build dependency of GCC? We have a patch, which checks for

Re: [PATCH][AArch64][12/14] Target attributes and target pragmas tests

2015-07-24 Thread Kyrill Tkachov
On 21/07/15 18:14, James Greenhalgh wrote: On Thu, Jul 16, 2015 at 04:21:15PM +0100, Kyrill Tkachov wrote: Hi all, These are the tests for target attributes and pragmas. I've tried to test for the inlining rules, some of the possible errors and the preprocessor macros changed from target

Re: [PATCH] Simple optimization for MASK_STORE.

2015-07-24 Thread Yuri Rumyantsev
Jeff, The goal of this transformation is to not execute masked store if possible,i.e. when is is equal to zero-vector. and conditional expression is not suitable for it - we must generate semi-hammock with conditional branch. Yuri. 2015-07-23 23:03 GMT+03:00 Jeff Law l...@redhat.com: On

Re: [PATCH][RFC][match.pd] optimize (X C) == N when C is power of 2

2015-07-24 Thread Richard Biener
On Fri, 24 Jul 2015, Kyrill Tkachov wrote: On 24/07/15 09:23, Jakub Jelinek wrote: On Fri, Jul 24, 2015 at 09:09:39AM +0100, Kyrill Tkachov wrote: This transformation folds (X % C) == N into X ((1 (size - 1)) | (C - 1))) == N for constants C and N where N is positive and C is a

Re: [PATCH][RFC][match.pd] optimize (X C) == N when C is power of 2

2015-07-24 Thread Jakub Jelinek
On Fri, Jul 24, 2015 at 09:48:30AM +0100, Kyrill Tkachov wrote: Bootstrapped and tested on arm, aarch64, x86_64. I think this is another case that, if at all, should be done during or right before RTL expansion and should test rtx costs. Hmm, where would that be? That is up to discussions,

Re: [PR64164] drop copyrename, integrate into expand

2015-07-24 Thread Richard Biener
On Fri, Jul 24, 2015 at 1:19 AM, H.J. Lu hjl.to...@gmail.com wrote: On Thu, Jul 23, 2015 at 4:14 PM, David Edelsohn dje@gmail.com wrote: On Thu, Jul 23, 2015 at 5:59 PM, H.J. Lu hjl.to...@gmail.com wrote: On Thu, Jul 23, 2015 at 1:57 PM, H.J. Lu hjl.to...@gmail.com wrote: On Thu, Jul 23,

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

2015-07-24 Thread Kyrill Tkachov
On 23/07/15 21:38, Jeff Law wrote: On 07/13/2015 08:03 AM, Kyrill Tkachov wrote: 2015-07-13 Kyrylo Tkachov kyrylo.tkac...@arm.com * ifcvt.c (struct noce_if_info): Add then_simple, else_simple, then_cost, else_cost fields. Change branch_cost field to unsigned int.

Re: [PATCH][RFC][match.pd] optimize (X C) == N when C is power of 2

2015-07-24 Thread Richard Biener
On Fri, 24 Jul 2015, Kyrill Tkachov wrote: On 24/07/15 10:09, Jakub Jelinek wrote: On Fri, Jul 24, 2015 at 09:48:30AM +0100, Kyrill Tkachov wrote: Bootstrapped and tested on arm, aarch64, x86_64. I think this is another case that, if at all, should be done during or right

Re: [PATCH][AArch64][8/14] Implement TARGET_OPTION_VALID_ATTRIBUTE_P

2015-07-24 Thread Marcus Shawcroft
On 21 July 2015 at 16:37, James Greenhalgh james.greenha...@arm.com wrote: On Thu, Jul 16, 2015 at 04:20:59PM +0100, Kyrill Tkachov wrote: +static bool +aarch64_process_one_target_attr (char *arg_str, const char* pragma_or_attr) +{ + bool ret; + bool invert = false; + + int len =

Re: [Bug fortran/52846] [F2008] Support submodules - part 3/3

2015-07-24 Thread Paul Richard Thomas
Dear Mikael, It had crossed my mind also that a .mod and a .smod file could be written. Normally, the .smod files are produced by the submodules themselves, so that their descendants can pick up the symbols that they generate. There is no reason at all why this could not be implemented; early on

Re: PR c/16351 Extend Wnonnull for returns_nonnull

2015-07-24 Thread Bernhard Reutner-Fischer
On July 24, 2015 7:30:03 AM GMT+02:00, Jeff Law l...@redhat.com wrote: On 07/23/2015 04:44 PM, Bernhard Reutner-Fischer wrote: On July 23, 2015 7:43:51 PM GMT+02:00, Jeff Law l...@redhat.com wrote: On 07/22/2015 09:29 AM, Manuel López-Ibáñez wrote: While looking at PR c/16351, I noticed that

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

2015-07-24 Thread Richard Biener
This moves some points-to related comparison simplification. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2015-07-24 Richard Biener rguent...@suse.de * genmatch.c (add_operator): Allow SSA_NAME as predicate. * fold-const.c

Re: [PATCH][AArch64][10/14] Implement target pragmas

2015-07-24 Thread Kyrill Tkachov
On 21/07/15 17:52, James Greenhalgh wrote: On Thu, Jul 16, 2015 at 04:21:05PM +0100, Kyrill Tkachov wrote: Hi all, This patch implements target pragmas for aarch64. The pragmas accepted are the same as for target attributes (as required). In addition pragmas will need to redefine the

Re: [PATCH][RFC][match.pd] optimize (X C) == N when C is power of 2

2015-07-24 Thread Kyrill Tkachov
On 24/07/15 09:23, Jakub Jelinek wrote: On Fri, Jul 24, 2015 at 09:09:39AM +0100, Kyrill Tkachov wrote: This transformation folds (X % C) == N into X ((1 (size - 1)) | (C - 1))) == N for constants C and N where N is positive and C is a power of 2. The idea is similar to the existing X % C -

[Revert][AArch64] PR 63521 Define REG_ALLOC_ORDER/HONOR_REG_ALLOC_ORDER

2015-07-24 Thread Jiong Wang
James Greenhalgh writes: On Wed, May 20, 2015 at 01:35:41PM +0100, Jiong Wang wrote: Current IRA still use both target macros in a few places. Tell IRA to use the order we defined rather than with it's own cost calculation. Allocate caller saved first, then callee saved. This is

Re: [PATCH][RFC][match.pd] optimize (X C) == N when C is power of 2

2015-07-24 Thread Kyrill Tkachov
On 24/07/15 10:09, Jakub Jelinek wrote: On Fri, Jul 24, 2015 at 09:48:30AM +0100, Kyrill Tkachov wrote: Bootstrapped and tested on arm, aarch64, x86_64. I think this is another case that, if at all, should be done during or right before RTL expansion and should test rtx costs. Hmm, where

[PATCH][RFT] Reduce gimple-match.c compile-time(?)

2015-07-24 Thread Richard Biener
The following patch implements the simplest approach of splitting the huge functions in gimple-match.c (not yet generic-match.c). In my dev tree it does: build/genmatch --gimple /space/rguenther/tramp3d/trunk/gcc/match.pd \ tmp-gimple-match.c GIMPLE decision tree has 696 leafs, maximum

Re: [PATCH][AArch64] Fix LINUX_TARGET_LINK_SPEC to be consistent with ARM

2015-07-24 Thread Marcus Shawcroft
On 22 July 2015 at 18:13, Szabolcs Nagy szabolcs.n...@arm.com wrote: Same as https://gcc.gnu.org/ml/gcc-patches/2015-04/msg01387.html but for AArch64. -dynamic-linker is only passed to the linker if !static !shared. -rdynamic handling is changed too to be consistent with arm: only pass

Re: [PATCH][AArch64][8/14] Implement TARGET_OPTION_VALID_ATTRIBUTE_P

2015-07-24 Thread Kyrill Tkachov
On 21/07/15 16:37, James Greenhalgh wrote: On Thu, Jul 16, 2015 at 04:20:59PM +0100, Kyrill Tkachov wrote: Hi all, This patch implements target attribute support via the TARGET_OPTION_VALID_ATTRIBUTE_P hook. The aarch64_handle_option function in common/config/aarch64/aarch64-common.c is

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

2015-07-24 Thread Kyrill Tkachov
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, #(N - 1) and r1, r1, #(N - 1) rsbpl r0, r1, #0 For the special case where N is 2 we do the shorter: cmp r0, #0

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

2015-07-24 Thread Kyrill Tkachov
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 calculated with: negs x1, x0 andx0, x0, #(N - 1) andx1, x1, #(N - 1) csneg x0,

Re: [PATCH PR66388]Compute use with cand of smaller precision by further exercising scev overflow info.

2015-07-24 Thread Richard Biener
On Fri, Jul 24, 2015 at 1:09 PM, Bin.Cheng amker.ch...@gmail.com wrote: On Thu, Jul 23, 2015 at 10:06 PM, Richard Biener richard.guent...@gmail.com wrote: On Fri, Jul 17, 2015 at 8:27 AM, Bin Cheng bin.ch...@arm.com wrote: Hi, This patch is to fix PR66388. It's an old issue but recently

Re: [PATCH 0/4] S390 -march=native related fixes

2015-07-24 Thread Andreas Krebbel
On 07/17/2015 06:00 PM, Dominik Vogt wrote: The following series of patches contains fixes, and cleanup work related to -march=native (and -mtune=native) for S390. * 0001 Fix cross compilation for S390 targets that was broken with the original -march=native aptch. * 0002 Fix

Re: [PATCH, PR66846] Mark inner loop for fixup in parloops

2015-07-24 Thread Tom de Vries
On 20/07/15 15:04, Tom de Vries wrote: On 16/07/15 12:15, Richard Biener wrote: On Thu, Jul 16, 2015 at 11:39 AM, Tom de Vries tom_devr...@mentor.com wrote: On 16/07/15 10:44, Richard Biener wrote: On Wed, Jul 15, 2015 at 9:36 PM, Tom de Vries tom_devr...@mentor.com wrote: Hi, I. In

[committed] Remove xfail in autopar/uns-outer-4.c

2015-07-24 Thread Tom de Vries
[ was: Re: [PATCH] Check TYPE_OVERFLOW_WRAPS for parloops reductions ] On 22/07/15 18:13, Tom de Vries wrote: 0003-Check-TYPE_OVERFLOW_WRAPS-for-parloops-reductions.patch Check TYPE_OVERFLOW_WRAPS for parloops reductions 2015-07-21 Tom de Vriest...@codesourcery.com *

[PATCH][ARM] PR target/66731 Fix vnmul insn with -frounding-math

2015-07-24 Thread Szabolcs Nagy
(-a)*b should not be compiled to vnmul a,b with -frounding-math. Added a new -(a*b) pattern for vnmul and the old one is only used if !flag_rounding_math. Updated the costs too. This is the ARM version of https://gcc.gnu.org/ml/gcc-patches/2015-07/msg00300.html Tested with

Re: [PATCH][ARM] PR target/66731 Fix vnmul insn with -frounding-math

2015-07-24 Thread Kyrill Tkachov
Hi Szabolcs, On 24/07/15 12:10, Szabolcs Nagy wrote: (-a)*b should not be compiled to vnmul a,b with -frounding-math. Added a new -(a*b) pattern for vnmul and the old one is only used if !flag_rounding_math. Updated the costs too. This is the ARM version of

Re: [PATCH 1/4][ARM] Make room for more CPU feature flags.

2015-07-24 Thread Matthew Wahab
Ping. Updated patch attached. Also, retested the series for arm-none-linux-gnueabihf with native bootstrap and make check and arm-none-abi with cross-compiled make check. On 22/06/15 16:41, Matthew Wahab wrote: Hello, The ARM backend uses an unsigned long to record CPU feature flags and there

[PING][PATCH, PR66851] Handle double reduction in parloops

2015-07-24 Thread Tom de Vries
On 13/07/15 16:55, Tom de Vries wrote: Hi, this patch fixes PR66851. In parloops, we manage to parallelize outer loops, but not if the inner loop contains a reduction. There is an xfail in autopar/outer-4.c for this: ... /* { dg-final { scan-tree-dump-times parallelizing outer loop 1 parloops

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

2015-07-24 Thread Kyrill Tkachov
Hi all, As part of patch 3/3 I want to expand to an if_then_else form of a conditional negate operation. It seems we already have patterns for that, but they are ancient and only enabled for TARGET_ARM. Doing a bit of archaeology I see that they were added in 1997 before Thumb and before

Re: [PATCH PR66388]Compute use with cand of smaller precision by further exercising scev overflow info.

2015-07-24 Thread Bin.Cheng
On Thu, Jul 23, 2015 at 10:06 PM, Richard Biener richard.guent...@gmail.com wrote: On Fri, Jul 17, 2015 at 8:27 AM, Bin Cheng bin.ch...@arm.com wrote: Hi, This patch is to fix PR66388. It's an old issue but recently became worse after my scev overflow change. IVOPT now can only compute iv

Re: [PATCH 2/4][ARM] Add feature set definitions.

2015-07-24 Thread Matthew Wahab
Ping. Updated patch attached. Also, retested the series for arm-none-linux-gnueabihf with native bootstrap and make check and arm-none-eabi with cross-compiled make check. On 22/06/15 16:45, Matthew Wahab wrote: Hello, The ARM backend uses an unsigned long to record CPU feature flags and

Re: [gomp4] acc routines bugfix

2015-07-24 Thread Ilya Verbin
On Fri, Jul 24, 2015 at 08:05:00 -0700, Cesar Philippidis wrote: The second point is interesting. Offloaded functions require the omp target attribute or that function won't reach the lto compiler. That's fine because not all targets can handle general code. The problem occurs when a user

[gomp4] acc routines bugfix

2015-07-24 Thread Cesar Philippidis
Jim ran into an ICE in a fortran program which contains an acc vector loop with a call to a subroutine. There are two things going on in here. First, a couple of functions in tree-nested.c weren't considering the _GANG, _WORKER, _VECTOR, and _SEQ omp clause codes. Second, the target lto compiler

Re: [gomp4] acc routines bugfix

2015-07-24 Thread Jakub Jelinek
On Fri, Jul 24, 2015 at 06:21:34PM +0300, Ilya Verbin wrote: On Fri, Jul 24, 2015 at 08:05:00 -0700, Cesar Philippidis wrote: The second point is interesting. Offloaded functions require the omp target attribute or that function won't reach the lto compiler. That's fine because not all

[PATCH] Fix PR middle-end/66984 - mis-optimization of CEIL_DIV_EXPR and FLOOR_DIV_EXPR

2015-07-24 Thread Gary Funck
See: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66984 Confirmed that GCC trunk bootstraps without issue and that this patch fixes the issue noted in the GUPC branch. 2015-07-24 Gary Funck g...@intrepid.com PR middle-end/66984 * fold-const.c (fold_binary_loc): Call

Re: [PATCH] Fix PR middle-end/66984 - mis-optimization of CEIL_DIV_EXPR and FLOOR_DIV_EXPR

2015-07-24 Thread Gary Funck
On 07/24/15 08:43:05, Gary Funck wrote: See: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66984 Confirmed that GCC trunk bootstraps without issue and that this patch fixes the issue noted in the GUPC branch. 2015-07-24 Gary Funck g...@intrepid.com PR middle-end/66984

Re: offload data version number

2015-07-24 Thread Jakub Jelinek
On Fri, Jul 24, 2015 at 09:32:04AM -0400, Nathan Sidwell wrote: On 07/21/15 11:21, Nathan Sidwell wrote: On 07/21/15 09:25, Nathan Sidwell wrote: This trunk patch implements new register and unregister entry points to allow specifying data version information. (I'll shortly be posting

Re: __atomic_futex_unsigned::_M_load_when_not_equal has a 'return' statement with no value, in function returning unsigned int

2015-07-24 Thread Jonathan Wakely
On 23/07/15 23:54 +0200, Torvald Riegel wrote: On Thu, 2015-07-23 at 09:21 +0100, Jonathan Wakely wrote: On 22/07/15 22:30 -0400, Patrick Palka wrote: Specifically, line 149 of atomix_futex.h has a bare return; statement, but the function is marked as returning non-void. This was caught while

[PATCH] Allow non-overflow ops in vect_is_simple_reduction_1

2015-07-24 Thread Tom de Vries
Hi, this patch allows parallelization and vectorization of reduction operators that are guaranteed to not overflow (such as min and max operators), independent of the overflow behaviour of the type. Bootstrapped and reg-tested on x86_64. OK for trunk? Thanks, - Tom Allow non-overflow ops

[PATCH] S390: Clean up cross-compile for S390.

2015-07-24 Thread Dominik Vogt
The attached patch cleans up cross compilation as discussed here: https://gcc.gnu.org/ml/gcc-patches/2015-07/msg01929.html on top of the fixes that have already been committed; see here: https://gcc.gnu.org/ml/gcc-patches/2015-07/msg01545.html This is only cleanup work, there is no compile

PATCH: PR bootstrap/66978: [6 Regression] bootstrap failure with --with-multilib-list=m32,m64,mx32

2015-07-24 Thread H.J. Lu
Hi, Static chain returned from get_rtl_for_parm_ssa_default_def may not have Pmode. This patch converts static chain to Pmode if needed. Tested on Linux/x86-64. OK for trunk? Thanks. H.J. --- 2015-07-24 H.J. Lu hongjiu...@intel.com PR bootstrap/66978 * function.c

[Patch AArch64] Remove separate movtf pattern - Use an iterator for all FP modes.

2015-07-24 Thread Ramana Radhakrishnan
Hi, movtf is unnecessary as a separate expander. Move this to be with the standard scalar floating point expanders. Achieved by adding a new iterator and then using the same. Tested cross aarch64-none-elf and no regressions. Ramana * config/aarch64/aarch.md (movmode:GPF): Use ALLTF.

[patch] [testsuite, arm] Missing test case for thumb2 pop single

2015-07-24 Thread Joey Ye
Find a missing test case for https://gcc.gnu.org/ml/gcc-patches/2015-01/msg00789.html left at the corner. Merged with the latest trunk. New test case does not fail on thumb1/thumb2/arm targets. ChangeLog: 2015-07-24: Joey Ye joey...@arm.com * gcc.target/arm/thumb2-pop-single.c: New

Re: default omp clause

2015-07-24 Thread Nathan Sidwell
On 07/24/15 11:22, Jakub Jelinek wrote: On Fri, Jul 24, 2015 at 11:10:59AM -0400, Nathan Sidwell wrote: +case OMP_CLAUSE_DEFAULT_NONE: + { + const char *accn; Can you rename this variable to something that makes sense? kind, or construct, or name, or directive? Hm, yeah,

Re: offload data version number

2015-07-24 Thread Ilya Verbin
On Fri, Jul 24, 2015 at 18:30:16 +0200, Jakub Jelinek wrote: On Fri, Jul 24, 2015 at 09:32:04AM -0400, Nathan Sidwell wrote: On 07/21/15 11:21, Nathan Sidwell wrote: On 07/21/15 09:25, Nathan Sidwell wrote: This trunk patch implements new register and unregister entry points to allow

Re: [PATCH 0/4] S390 -march=native related fixes

2015-07-24 Thread Dominik Vogt
With that problem fixed I still see one minor glitch. Maybe someone knows how to fix the following: * With a cross compiler that generates i686 binaries on s390x: $ i686-elf-gcc -c ~/foo.c -march=native /home/vogt/foo.c:1:0: error: bad value (native) for -march= switch This is all

Re: [patch] PR66714 -- Re: Re: [RFC] two-phase marking in gt_cleare_cache

2015-07-24 Thread Jakub Jelinek
On Fri, Jul 24, 2015 at 07:21:07AM -0700, Cesar Philippidis wrote: This patch the check for IS_TYPE_OF_DECL_P in this patch. Is this ok for trunk? 2015-07-24 Cesar Philippidis ce...@codesourcery.com gcc/ * tree-cfg.c (struct replace_decls_d): New struct.

Re: [PATCH] S390: Clean up cross-compile for S390.

2015-07-24 Thread Ulrich Weigand
Dominik Vogt wrote: gcc/ChangeLog * config.hosto_plugin_soname): Include driver-native.c only when building with s390* as host and target. (There seems to be a typo in the log entry ...) This is OK. Thanks, Ulrich -- Dr. Ulrich Weigand GNU/Linux compilers and toolchain

Re: [PATCH][AArch64] Fix LINUX_TARGET_LINK_SPEC to be consistent with ARM

2015-07-24 Thread Szabolcs Nagy
On 24/07/15 13:50, Marcus Shawcroft wrote: On 22 July 2015 at 18:13, Szabolcs Nagy szabolcs.n...@arm.com wrote: Same as https://gcc.gnu.org/ml/gcc-patches/2015-04/msg01387.html but for AArch64. -dynamic-linker is only passed to the linker if !static !shared. -rdynamic handling is changed

[fortran, committed] Fix PR64986 class_to_type_4.f90 test failure

2015-07-24 Thread Mikael Morin
Hello, I committed the patch for PR64984 that I had posted on bugzilla. It was approved by Paul: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64986#c13 Mikael

Re: [patch] PR66714 -- Re: Re: [RFC] two-phase marking in gt_cleare_cache

2015-07-24 Thread Cesar Philippidis
On 07/23/2015 03:11 PM, Jakub Jelinek wrote: On Thu, Jul 23, 2015 at 03:01:25PM -0700, Cesar Philippidis wrote: On 07/23/2015 08:32 AM, Jakub Jelinek wrote: On Thu, Jul 23, 2015 at 08:20:50AM -0700, Cesar Philippidis wrote: The attached patch does just that; it teaches

[committed] Add transform_to_exit_first_loop_alt dump success message

2015-07-24 Thread Tom de Vries
Hi, this patch adds a message to the parloops dump file when transform_to_exit_first_loop_alt is successful. In the relevant testcases, we scan for this message, instead of for code patterns, making the tests more stable. Committed as trivial. Thanks, - Tom Add

Re: [gomp4] acc routines bugfix

2015-07-24 Thread Cesar Philippidis
On 07/24/2015 08:21 AM, Ilya Verbin wrote: On Fri, Jul 24, 2015 at 08:05:00 -0700, Cesar Philippidis wrote: The second point is interesting. Offloaded functions require the omp target attribute or that function won't reach the lto compiler. That's fine because not all targets can handle

Re: [PATCH][AArch64] elf toolchain does not pass -shared linker option

2015-07-24 Thread Szabolcs Nagy
On 24/07/15 14:20, Marcus Shawcroft wrote: On 22 July 2015 at 18:22, Szabolcs Nagy szabolcs.n...@arm.com wrote: 2015-07-22 Szabolcs Nagy szabolcs.n...@arm.com * config/aarch64/aarch64-elf-raw.h (LINK_SPEC): Handle -h, -static, -shared, -symbolic, -rdynamic. OK, this

Re: [C/C++ PATCH] Implement -Wtautological-compare (PR c++/66555, c/54979)

2015-07-24 Thread Jeff Law
On 07/22/2015 02:02 PM, Marek Polacek wrote: On Wed, Jul 22, 2015 at 01:48:03PM -0600, Martin Sebor wrote: On 07/22/2015 01:06 PM, Marek Polacek wrote: On Wed, Jul 22, 2015 at 12:43:53PM -0600, Martin Sebor wrote: On 07/14/2015 09:18 AM, Marek Polacek wrote: Code such as if (i == i) is

Re: [PATCH] Don't allow unsafe reductions in graphite

2015-07-24 Thread Sebastian Pop
Richard Biener wrote: On Wed, Jul 22, 2015 at 6:00 PM, Tom de Vries tom_devr...@mentor.com wrote: Currently bootstrapping and reg-testing on x86_64. OK for trunk? OK 5 and 4.9 release branches? Ok if Sebastian is fine with it. Ok to backport as well. Thanks Tom for the patches.

Re: [PR64164] drop copyrename, integrate into expand

2015-07-24 Thread Alexandre Oliva
On Jul 24, 2015, David Edelsohn dje@gmail.com wrote: Did you commit the final, complete version of the patches? Yes, I have double-checked that reverting the patch I posted on the r225979 tree I used for testing reverts it to the base revision, except for unrelated libgfortran configury

Re: [PR64164] drop copyrename, integrate into expand

2015-07-24 Thread Alexandre Oliva
On Jul 24, 2015, H.J. Lu hjl.to...@gmail.com wrote: On Fri, Jul 24, 2015 at 11:43 AM, Alexandre Oliva aol...@redhat.com wrote: On Jul 23, 2015, H.J. Lu hjl.to...@gmail.com wrote: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66983 My test logs with the patch have: PASS:

[gomp4] Additional tests for routine directive

2015-07-24 Thread James Norris
Hi, The attached patch adds additional test for the routine directive for C/C++/Fortran. Committed to gomp-4_0-branch. Jim diff --git a/libgomp/testsuite/libgomp.oacc-c-c++-common/routine-3.c b/libgomp/testsuite/libgomp.oacc-c-c++-common/routine-3.c new file mode 100644 index 000..73ca528

Re: [PR64164] drop copyrename, integrate into expand

2015-07-24 Thread H.J. Lu
On Fri, Jul 24, 2015 at 1:36 PM, Alexandre Oliva aol...@redhat.com wrote: On Jul 24, 2015, H.J. Lu hjl.to...@gmail.com wrote: On Fri, Jul 24, 2015 at 11:43 AM, Alexandre Oliva aol...@redhat.com wrote: On Jul 23, 2015, H.J. Lu hjl.to...@gmail.com wrote:

Re: [PATCH 3/4] Add libgomp plugin for Intel MIC

2015-07-24 Thread David Malcolm
On Fri, 2015-07-24 at 10:01 +0200, Jakub Jelinek wrote: #!/usr/bin/python import sys with open(sys.argv[1],rb) as f: nextblock = f.read(12) while 1: block = nextblock nextblock = f.read(12) if block == : break str = for ch in

default omp clause

2015-07-24 Thread Nathan Sidwell
Jakub, in working on openacc default clause handling, I found the logic in omp_notice_variable a little hard to follow, due to the size of function and depth of nesting. I broke out the existing default handling to a separate function, and made the control flow a bit clearer (IMHO). ok for

[PATCH, i386]: Fix PR 64003, valgrind complains about get_attr_length_nobnd in insn-attrtab.c from i386.md

2015-07-24 Thread Uros Bizjak
This patch introduces ADJUST_INSN_LENGTH define to i386.h to increase the length of the insn when bnd prefix is used. 2015-07-24 Uros Bizjak ubiz...@gmail.com PR target/64003 * config/i386/i386.h (ADJUST_INSN_LENGTH): New define. * config/i386/i386.md (maybe_prefix_bnd): New

Go patch committed: Don't move constant expressions for ordering

2015-07-24 Thread Ian Lance Taylor
This patch by Chris Manghane fixes the Go frontend so that when moving expressions to ensure that they are evaluated in the correct order, it does not bother to move a constant expression. This fixes https://golang.org/issue/11039 . Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu.

Re: [PATCH] Fixes combined gcc-binutils builds.

2015-07-24 Thread Jeff Law
On 07/16/2015 06:26 PM, Michael Darling wrote: Ping. I don't have write access. **Updated patch ATTACHED**, modified so the commits during the past two months don't cause conflicts. Minor other updating (i.e. Likewise rather than repeating in ChangeLogs.) Binutils **updated patch also

Go patch committed: Don't accept rune literals with \X

2015-07-24 Thread Ian Lance Taylor
The Go spec says that rune hex literals should start with \x. The Go frontend was incorrectly accepting \X as well. This patch by Chris Manghane fixes the problem. This is https://golang.org/issue/11575 . Bootstrapped and ran Go testsuite on x86_64-unknown-linux-gnu. Committed to mainline. Ian

Re: [PATCH][AArch64] Improve csinc/csneg/csinv opportunities on immediates

2015-07-24 Thread Kyrill Tkachov
On 17/07/15 20:00, pins...@gmail.com wrote: On Jul 17, 2015, at 9:58 PM, Kyrill Tkachov kyrylo.tkac...@arm.com wrote: On 10/07/15 14:45, Kyrill Tkachov wrote: On 10/07/15 10:00, pins...@gmail.com wrote: On Jul 10, 2015, at 1:47 AM, Kyrill Tkachov kyrylo.tkac...@arm.com wrote: Hi

[PATCH][obvious] Use std::swap instead of manually swapping in a few more places

2015-07-24 Thread Kyrill Tkachov
Hi all, This patch uses std::swap in a few places in the midend, replacing the manual approach, and removing a few, now unused, local variables in the process. Bootstrapped on x86_64. Committed as obvious with r226179. Thanks, Kyrill 2015-07-24 Kyrylo Tkachov kyrylo.tkac...@arm.com *

Re: PATCH: PR bootstrap/66978: [6 Regression] bootstrap failure with --with-multilib-list=m32,m64,mx32

2015-07-24 Thread Alexandre Oliva
On Jul 24, 2015, H.J. Lu hongjiu...@intel.com wrote: Static chain returned from get_rtl_for_parm_ssa_default_def may not have Pmode. This patch converts static chain to Pmode if needed. Tested on Linux/x86-64. OK for trunk? Yeah, this looks good to me, thanks. Even the static chain

Re: PATCH: PR bootstrap/66978: [6 Regression] bootstrap failure with --with-multilib-list=m32,m64,mx32

2015-07-24 Thread H.J. Lu
On Fri, Jul 24, 2015 at 10:53 AM, Alexandre Oliva aol...@redhat.com wrote: On Jul 24, 2015, H.J. Lu hongjiu...@intel.com wrote: Static chain returned from get_rtl_for_parm_ssa_default_def may not have Pmode. This patch converts static chain to Pmode if needed. Tested on Linux/x86-64. OK for

[gomp4] Fix variable initialization

2015-07-24 Thread James Norris
Hi, The attached patch fixes a couple of missing variable initializations. Committed to gomp-4_0-branch. Jim diff --git a/libgomp/target.c b/libgomp/target.c index 16283ad..0470d3b 100644 --- a/libgomp/target.c +++ b/libgomp/target.c @@ -1130,7 +1130,7 @@ gomp_load_plugin_for_device (struct

Re: [PATCH][RFC][match.pd] optimize (X C) == N when C is power of 2

2015-07-24 Thread Jeff Law
On 07/24/2015 03:44 AM, Ramana Radhakrishnan wrote: In expr.c, with TER you can detect such patterns, in this case when expanding the comparison, but perhaps we want a *.pd file that would have rules that would be only GIMPLE and only enabled in a special pass right before (or very close to)

Re: default omp clause

2015-07-24 Thread Jakub Jelinek
On Fri, Jul 24, 2015 at 11:10:59AM -0400, Nathan Sidwell wrote: 2015-07-24 Nathan Sidwell nat...@codesourcery.com * gimplify.c (omp_default_clause): New function. Reorganize flow for clarity. Broken out of ... (omp_notice_variable): ... here. Ok, except: +case

Re: [gomp4] acc routines bugfix

2015-07-24 Thread Ilya Verbin
On Fri, Jul 24, 2015 at 17:24:55 +0200, Jakub Jelinek wrote: On Fri, Jul 24, 2015 at 06:21:34PM +0300, Ilya Verbin wrote: On Fri, Jul 24, 2015 at 08:05:00 -0700, Cesar Philippidis wrote: The second point is interesting. Offloaded functions require the omp target attribute or that function

Re: [PATCH] gcc: fix building w/isl-0.15

2015-07-24 Thread Sebastian Pop
Jeff Law wrote: On 07/21/2015 02:32 PM, Sebastian Pop wrote: Could somebody with access to sourceware.org upload a tar.bz2 of the required version of isl from http://isl.gforge.inria.fr/isl-0.15.tar.bz2? Also, once that is done, I will commit the following patch updating the

Re: PR c/16351 Extend Wnonnull for returns_nonnull

2015-07-24 Thread Manuel López-Ibáñez
On 24 July 2015 at 21:30, Jeff Law l...@redhat.com wrote: On 07/24/2015 07:45 AM, Manuel López-Ibáñez wrote: On 23 July 2015 at 19:43, Jeff Law l...@redhat.com wrote: Warning in the front-ends like this can generate false positives (such as a NULL return in an unreachable path and miss

Re: Fix PR43404, PR48470, PR64744 ICE on naked functions

2015-07-24 Thread Jeff Law
On 06/26/2015 12:33 AM, Alexander Basov wrote: 2015-06-25 21:47 GMT+03:00 Jeff Law l...@redhat.com: On 06/03/2015 02:15 PM, Alexander Basov wrote: Hello Jeff, please find updated patch attached diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c index b190f91..c6db8a9 100644 ---

Re: [PATCH, i386]: Fix PR 64003, valgrind complains about get_attr_length_nobnd in insn-attrtab.c from i386.md

2015-07-24 Thread Tom de Vries
On 24/07/15 18:29, Uros Bizjak wrote: This patch introduces ADJUST_INSN_LENGTH define to i386.h to increase the length of the insn when bnd prefix is used. 2015-07-24 Uros Bizjak ubiz...@gmail.com PR target/64003 * config/i386/i386.h (ADJUST_INSN_LENGTH): New define. *

Re: [PATCH] gcc: fix building w/isl-0.15

2015-07-24 Thread Jeff Law
On 07/24/2015 03:53 PM, Sebastian Pop wrote: Jeff Law wrote: On 07/21/2015 02:32 PM, Sebastian Pop wrote: Could somebody with access to sourceware.org upload a tar.bz2 of the required version of isl from http://isl.gforge.inria.fr/isl-0.15.tar.bz2? Also, once that is done, I will commit the

[PATCH, i386]: Remove a couple of unneeded !TARGET_64BIT checks from va_arg handling functions

2015-07-24 Thread Uros Bizjak
These checks are already present in is_va_list_char_pointer. 2015-07-25 Uros Bizjak ubiz...@gmail.com * config/i386/i386.c (ix86_va_start): Remove unneeded !TARGET_64BIT check. (ix86_gimplify_va_arg): Ditto. Bootstrapped and regression tested on x86_64-linux-gnu {,-m32}.

[PATCH] [graphite] dump reasons why graphite failed to detect a scop

2015-07-24 Thread Sebastian Pop
When trying to analyze why Graphite does not handle a loop nest, it is easy to look in the dumps of -fdump-tree-graphite-all to guess what has to be changed to catch the loop. This patch makes the dumps a bit more verbose and useful. --- gcc/graphite-scop-detection.c | 72

  1   2   >