Re: PR 70687: Use wide_int in combine.c:change_zero_ext

2016-05-03 Thread Bernd Schmidt
On 05/03/2016 11:11 AM, Richard Sandiford wrote: PR 70687 reports a case where combine.c mishandles integer modes wider than unsigned HOST_WIDE_INT. I don't have a testcase since the PR is just pointing out the hole. Also, I think a ZERO_EXTEND of a vector mode could in principle satisfy the

Re: Splitting up gcc/omp-low.c?

2016-05-03 Thread Thomas Schwinge
Hi! On Wed, 13 Apr 2016 18:01:09 +0200, I wrote: > On Fri, 08 Apr 2016 11:36:03 +0200, I wrote: > > On Thu, 10 Dec 2015 09:08:35 +0100, Jakub Jelinek wrote: > > > On Wed, Dec 09, 2015 at 06:23:22PM +0100, Bernd Schmidt wrote: > > > > On 12/09/2015 05:24 PM, Thomas Schwinge

Re: [PATCH 0/3] IVOPTS: support profiling

2016-05-03 Thread Bin.Cheng
On Fri, Apr 29, 2016 at 12:56 PM, marxin wrote: > Hello. > > As profile-guided optimization can provide very useful information > about basic block frequencies within a loop, following patch set leverages > that information. It speeds up a single benchmark from upcoming SPECv6 >

PR 70687: Use wide_int in combine.c:change_zero_ext

2016-05-03 Thread Richard Sandiford
PR 70687 reports a case where combine.c mishandles integer modes wider than unsigned HOST_WIDE_INT. I don't have a testcase since the PR is just pointing out the hole. Also, I think a ZERO_EXTEND of a vector mode could in principle satisfy the subreg condition but wouldn't be equivalent to an

Re: [PATCH GCC]Do more tree if-conversions by handlding PHIs with more than two arguments.

2016-05-03 Thread Bin.Cheng
On Mon, May 2, 2016 at 10:02 AM, Richard Biener wrote: > On Fri, Apr 29, 2016 at 5:51 PM, Bin.Cheng wrote: >> On Thu, Apr 28, 2016 at 10:18 AM, Richard Biener >> wrote: >>> On Wed, Apr 27, 2016 at 5:49 PM, Bin Cheng

Re: fix libsanitizer build on ppc-linux

2016-05-03 Thread Olivier Hainque
> On 29 Apr 2016, at 12:42, Olivier Hainque wrote: > > I'll discuss with the compiler-rt folks. The change just went in upstream. http://reviews.llvm.org/D19799. Olivier

Re: [PATCH][GCC7] Remove scaling of COMPONENT_REF/ARRAY_REF ops 2/3

2016-05-03 Thread Eric Botcazou
> It seems to me that the issue in the end is that where we compute > alignment from is the pieces gathered by get_inner_reference > instead of computing it alongside of that information in > get_inner_reference, taking advantage of DECL_OFFSET_ALIGN > and the array element type alignment there.

Re: [PATCH] Re-use cc1-checksum.c for stage-final

2016-05-03 Thread Richard Biener
On Mon, 2 May 2016, Jeff Law wrote: > On 04/29/2016 05:36 AM, Richard Biener wrote: > > On Thu, 28 Apr 2016, Jeff Law wrote: > > > > > On 04/28/2016 02:49 AM, Richard Biener wrote: > > > > > > > > The following prototype patch re-uses cc1-checksum.c from the > > > > previous stage when

Re: [PATCH][RFC] Gimplify "into SSA"

2016-05-03 Thread Richard Biener
On Wed, 27 Apr 2016, Jeff Law wrote: > On 04/21/2016 06:55 AM, Richard Biener wrote: > > > > The following patch makes us not allocate decls but SSA names for > > temporaries required during gimplification. This is basically the > > same thing as we do when calling the gimplifier on GENERIC

Re: Inline across -ffast-math boundary

2016-05-03 Thread Richard Biener
On Tue, 3 May 2016, Christophe Lyon wrote: > On 2 May 2016 at 19:01, Jan Hubicka wrote: > >> On Thu, 21 Apr 2016, Jan Hubicka wrote: > >> > >> > Hi, > >> > this patch implements the long promised logic to inline across > >> > -ffast-math > >> > boundary when eitehr caller or

Re: Inline across -ffast-math boundary

2016-05-03 Thread Christophe Lyon
On 2 May 2016 at 19:01, Jan Hubicka wrote: >> On Thu, 21 Apr 2016, Jan Hubicka wrote: >> >> > Hi, >> > this patch implements the long promised logic to inline across -ffast-math >> > boundary when eitehr caller or callee has no fp operations in it. This is >> > needed to resolve

[PATCH 1/3] cfgcleanup: Bugfix in try_simplify_condjump

2016-05-03 Thread Segher Boessenkool
If the jump_block here contains just a return, we will crash later in invert_jump. Don't allow that case. 2016-05-03 Segher Boessenkool * cfgcleanup.c (try_simplify_condjump): Don't try to simplify a branch to a return. --- gcc/cfgcleanup.c | 1

[PATCH 0/3] Simplify the simple_return handling

2016-05-03 Thread Segher Boessenkool
This series teaches cfgcleanup how to optimize jumps and branches to and around return statements, after which the shrink-wrap code doesn't have to deal with it anymore. The simplified code also catches a few more cases. Tested on powerpc64-linux (-m32 and -m64, all languages), and also on

[PATCH 3/3] shrink-wrap: Remove complicated simple_return manipulations

2016-05-03 Thread Segher Boessenkool
Now that cfgcleanup knows how to optimize with return statements, the epilogue insertion code doesn't have to deal with it itself anymore. 2016-05-03 Segher Boessenkool * function.c (emit_use_return_register_into_block): Delete.

[PATCH 2/3] cfgcleanup: Fold jumps and conditional branches with returns

2016-05-03 Thread Segher Boessenkool
This patch makes cfgcleanup optimize jumps to returns. There are three cases this handles: -- A jump to a return; this is simplified to just that return. -- A conditional branch to a return; simplified to a conditional return. -- A conditional branch that falls through to a return. This is

[SH][committed] Cleanup div and mul patterns

2016-05-03 Thread Oleg Endo
Hi, The attached patch cleans up the SH div and mul patterns a bit. Almost no changes in CSiBE, except for a few minor improvements. Tested on sh-elf with make -k check RUNTESTFLAGS="--target_board=sh-sim\{-m2/-ml,-m2/-mb, -m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb}" Committed as r235803.

Re: Canonicalize X u< X to UNORDERED_EXPR

2016-05-03 Thread Marc Glisse
This removes the duplication. I also removed the case (A)&(A) which is handled by reassoc. And I need 2 NOP checks, for the case where @0 is a constant (that couldn't happen before my patch because canonicalization would put the constant as second operand). Bootstrap+regtest on

Re: [patch] cleanup *finish_omp_clauses

2016-05-03 Thread Marek Polacek
This patch introduced /home/marek/src/gcc/gcc/c-family/c-common.h:1270:58: warning: comma at end of enumerator list [-Wpedantic] C_ORT_OMP_DECLARE_SIMD = C_ORT_OMP | C_ORT_DECLARE_SIMD, ^ I'm fixing that with 2016-05-03 Marek Polacek

<    1   2