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 " 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 : > 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 for

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 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 = strlen (arg_str

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 check

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 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 >wrote: >>> On 07/22/2015 09:29 AM, Manuel López-Ibáñez wrote: While looking at PR c/16351, I noticed that all tests proposed for

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 i

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 > wrote: > > 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

[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 us

[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 PR c++/64079 * toplev.c (check_global_declaration): Us

[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][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 > f

[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 * genmatch.c (add_operator): Allow SSA_NAME as predicate. * fold-const.c (fold_comparison): Move parameter d

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 target-sp

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 * config/aarch64/

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 pragm

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. (A

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 trunk

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

[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

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 : > On 07/20/2015 09:05 AM,

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 positiv

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

[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. >> >> Thi

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 discu

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 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. > > > Thanks, so it'

Re: [PATCH] Simple optimization for MASK_STORE.

2015-07-24 Thread Richard Biener
On Thu, Jul 23, 2015 at 10:03 PM, Jeff Law 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 w

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 wrote: > On Thu, Jul 23, 2015 at 4:14 PM, David Edelsohn wrote: >> On Thu, Jul 23, 2015 at 5:59 PM, H.J. Lu wrote: >>> On Thu, Jul 23, 2015 at 1:57 PM, H.J. Lu wrote: On Thu, Jul 23, 2015 at 1:31 PM, Segher Boessenkool wrote: > On Thu, Jul

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 woul

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 wrote: > 2015-07-24 7:54 GMT+02:00 Jeff Law : >> 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

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 * ifcvt.c (struct noce_if_info): Add then_simple, else_simple, then_cost, else_cost fields. Change branch_cost field to unsigned int. (end_ifcvt_sequence): Call set_u

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 > >

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 durin

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 instruct

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 wrote: On 16/07/15 10:44, Richard Biener wrote: On Wed, Jul 15, 2015 at 9:36 PM, Tom de Vries wrote: Hi, I. In openmp expansion of loops, we do some effort to t

[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 Vries * tree-parloops.c (gather_scalar_reduc

[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 "parloop

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 expo

[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 defin

[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,

[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

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 wrote: > On Fri, Jul 17, 2015 at 8:27 AM, Bin Cheng 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 use with >> candidate which has at leas

[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 arm-none-linux-gnueabi

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 wrote: > On Thu, Jul 23, 2015 at 10:06 PM, Richard Biener > wrote: >> On Fri, Jul 17, 2015 at 8:27 AM, Bin Cheng wrote: >>> Hi, >>> This patch is to fix PR66388. It's an old issue but recently became worse >>> after my scev overflow change. IVOPT now

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 https://gcc.gnu.org/ml/gcc-patches/2

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

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 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 ther

Re: [PATCH 3/4][ARM] Use new feature set representation.

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:52, Matthew Wahab wrote: Hello, The ARM backend uses an unsigned long to record CPU feature flags and ther

Re: [PATCH 4/4][ARM] Move initializer into arm-cores.def and arm-arches.def

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:54, Matthew Wahab wrote: Hello, The ARM backend uses an unsigned long to record CPU feature flags and ther

[PATCH] Compute and print statistics about match.pd generated code

2015-07-24 Thread Richard Biener
This calculates size estimates for the decision (sub-)trees and dumps info to stderr. My dev tree says: build/genmatch --gimple /space/rguenther/tramp3d/trunk/gcc/match.pd \ > tmp-gimple-match.c GIMPLE decision tree has 696 leafs, maximum depth 10 and a total number of 2786 nodes build/genm

[PATCH] Add FIXED_POINT_TYPE_OVERFLOW_WRAPS_P

2015-07-24 Thread Tom de Vries
[ was: [RFC, PR66873] Use graphite for parloops ] On 22/07/15 13:02, Richard Biener wrote: +#define FIXED_POINT_TYPE_OVERFLOW_WRAPS_P(TYPE) \ + (NON_SAT_FIXED_POINT_TYPE_P (TYPE)) somebody with knowledge about fixed-point types needs to review this. In vect_is_simple_reduction_1 I noticed: .

[PATCH] Fix genmatch wrong-code for GENERIC simplifications

2015-07-24 Thread Richard Biener
This fixes wrong-code when GENERIC code generation is faced with collapsed captures from conditional converts. In this case it gets confused when looking for omitted operands. Fixed with the following. It does affect quite a number of cases on trunk - I will have a look at the branch next to se

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

2015-07-24 Thread Bin.Cheng
On Fri, Jul 24, 2015 at 7:23 PM, Richard Biener wrote: > On Fri, Jul 24, 2015 at 1:09 PM, Bin.Cheng wrote: >> On Thu, Jul 23, 2015 at 10:06 PM, Richard Biener >> wrote: >>> On Fri, Jul 17, 2015 at 8:27 AM, Bin Cheng wrote: Hi, This patch is to fix PR66388. It's an old issue but recen

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

2015-07-24 Thread Paul Richard Thomas
Dear All, In the words of Jean-Luc Picard, "I will make it so " Paul On 24 July 2015 at 10:08, Damian Rouson wrote: > 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 >> wrote: >> >> Dear Mikael, >> >>

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

2015-07-24 Thread Richard Biener
This moves simplifying of comparisons against the highest or lowest possible integer. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. This needs the GENERIC code-gen fix, otherwise we miscompile GCC. Richard. 2015-07-24 Richard Biener * fold-const.c (fold_binary_loc

Re: [PR64164] drop copyrename, integrate into expand

2015-07-24 Thread H.J. Lu
On Fri, Jul 24, 2015 at 2:22 AM, Richard Biener wrote: > On Fri, Jul 24, 2015 at 1:19 AM, H.J. Lu wrote: >> On Thu, Jul 23, 2015 at 4:14 PM, David Edelsohn wrote: >>> On Thu, Jul 23, 2015 at 5:59 PM, H.J. Lu wrote: On Thu, Jul 23, 2015 at 1:57 PM, H.J. Lu wrote: > On Thu, Jul 23, 2015

[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 dep

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 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 -export-dynami

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

2015-07-24 Thread Marcus Shawcroft
On 22 July 2015 at 18:22, Szabolcs Nagy wrote: > 2015-07-22 Szabolcs Nagy > > * config/aarch64/aarch64-elf-raw.h (LINK_SPEC): Handle -h, -static, > -shared, -symbolic, -rdynamic. OK, this should be back ported to 5 and 4.9 aswell. Thanks /Marcus

Re: offload data version number

2015-07-24 Thread Nathan Sidwell
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 patches changing the PTX offload data format.) We now have GOMP_offload_

Re: PR c/16351 Extend Wnonnull for returns_nonnull

2015-07-24 Thread Manuel López-Ibáñez
On 23 July 2015 at 19:43, Jeff Law wrote: > Warning in the front-ends like this can generate false positives (such as a > NULL return in an unreachable path and miss cases where the NULL has to be > propagated into the return by later optimizations. False positives (for the warning as proposed ri

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 replace_bl

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 = "" >

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 right

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 > > gcc/ > * tree-cfg.c (struct replace_decls_d): New struct. > (replace_block_vars_by_duplica

[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 in

[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 problem

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 PR bootstrap/66978 * function.c (expand_function_start): Conve

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

[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 wo

[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 transform_to_exit_first_loop_

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

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 > > * gimplify.c (omp_default_clause): New function. Reorganize flow > for clarity. Broken out of ... > (omp_notice_variable): ... here. Ok, except: > +case OMP_CLAUSE_DEFAULT_NO

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

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

[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 (mov:GPF): Use ALLTF.

[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 PR middle-end/66984 * fold-const.c (fold_binary_loc): Call fold_convert on arguments t

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 handl

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 tha

[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 * gcc.target/arm/thumb2-pop-single.c: New test. diff --git

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, tha

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 > > PR middle-end/66984 > * fold

[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][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 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 t

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 wrote: > >> 2015-07-22 Szabolcs Nagy >> >> * config/aarch64/aarch64-elf-raw.h (LINK_SPEC): Handle -h, -static, >> -shared, -symbolic, -rdynamic. > > OK, this should be back ported to 5 and 4.9

[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 PR target/64003 * config/i386/i386.h (ADJUST_INSN_LENGTH): New define. * config/i386/i386.md (maybe_prefix_bnd): New attribute. (*jcc_1,

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 wh

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 po

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 >

Re: offload data version number

2015-07-24 Thread Nathan Sidwell
On 07/24/15 12:30, Jakub Jelinek wrote: So there is no version anywhere? I remember in the design ideas the plan was that the data section containing the target info (that originally has been meant to be passed as GOMP_target parameter, but later on has been changed to the register/unregister a

[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 * alias.c (nonoverlappin

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: 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" 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 parm_decl undergoes pro

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 wrote: > On Jul 24, 2015, "H.J. Lu" 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

[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 go

Re: [PR64164] drop copyrename, integrate into expand

2015-07-24 Thread Alexandre Oliva
On Jul 23, 2015, Segher Boessenkool wrote: > On Thu, Jul 23, 2015 at 12:29:14PM -0300, Alexandre Oliva wrote: >> Yeah. Thanks, I've tested it with this change, and I'm now checking >> this in (full patch first; adjusted incremental patch at the end): > Unfortunately it causes about a thousand t

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 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 wrote: Hi Andrew, On 10/07/15 09:40, pins...@gmail.com w

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 ATTACHE

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

  1   2   >