Re: RFA: tweak integer type used for memcpy folding

2014-04-22 Thread Richard Sandiford
Richard Sandiford writes: > wide-int fails to build libitm because of a bad interaction between: > > /* Keep the OI and XI modes from confusing the compiler into thinking >that these modes could actually be used for computation. They are >only holders for vectors during data movement. */

RE: [PATCH] Remove "keep_aligning" from get_inner_reference

2014-04-22 Thread Bernd Edlinger
Hi, On Wed, 27 Nov 2013 12:47:19, Richard Biener wrote: > > On Wed, Nov 27, 2013 at 10:43 AM, Eric Botcazou wrote: >>> I think you are right, this flag is no longer necessary, and removing >>> this code path would simplify everything. Therefore I'd like to propose >>> to remove the "keep_alignin

Re: [PATCH, ARM] Trunk build fail

2014-04-22 Thread Ramana Radhakrishnan
On Tue, Apr 22, 2014 at 7:26 AM, Zhenqiang Chen wrote: > Hi, > > ARM trunk build fail from @209484, since it requires the argument of > GET_MODE_SIZE to be "enum machine_mode". > > gcc/gcc/config/arm/arm.c:21433:13: error: invalid conversion from > 'int' to 'machine_mode' [-fpermissive] > ... > >

Re: Inliner heuristics TLC 1/n - let small function inlinng to ignore cold portion of program

2014-04-22 Thread Richard Biener
On Thu, Apr 17, 2014 at 7:52 PM, Jan Hubicka wrote: > Hi, > I think for 4.10 we should revisit inliner behaviour to be more LTO and > LTO+FDO > ready. This is first of small patches I made to sanitize behaviour of current > bounds. > > The main problem LTO brings is that we get way too many inli

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-22 Thread Richard Sandiford
First of all, thanks a lot for doing this. Maybe one day we'll have the same in rtl :-) But... David Malcolm writes: > In doing the checked downcasts I ran into the verbosity of the as_a <> > API (in our "is-a.h"). I first tried simplifying them with custom > functions e.g.: > >static inli

Re: [PATCH] Fix uninitialised variable warning in tree-ssa-loop-ivcanon.c

2014-04-22 Thread Kyrill Tkachov
On 17/04/14 18:06, Daniel Marjamäki wrote: Hello! I am not against it.. However I think there is no danger. I see no potential use of uninitialized variable. The use of n_unroll is guarded by n_unroll_found. Hmmm... you're right. I guess the warning is just noise then. I'll leave it up to ma

Re: [PATCH] Remove "keep_aligning" from get_inner_reference

2014-04-22 Thread Eric Botcazou
> I still have that already-approved patch, updated to current trunk. > I've successfully boot-strapped it on armv7-linux-gnueabihf with > all languages enabled, including Ada. > The test suite runs cleanly without any drop-outs. Thanks for the testing. > Is it OK to commit now, or are there obje

Re: [PATCH] Fix omp declare simd cloning (PR tree-optimization/60823)

2014-04-22 Thread Richard Biener
On Fri, 18 Apr 2014, Jakub Jelinek wrote: > Hi! > > This patch fixes the adjustments performed by ipa_simd_modify_function_body > on omp declare simd clones. > Previously we've been trying to replace typically SSA_NAMEs with underlying > PARM_DECLs of the to be replaced arguments with loads/store

Re: Inliner heuristics TLC 3/n

2014-04-22 Thread Richard Biener
On Fri, Apr 18, 2014 at 9:45 PM, Jan Hubicka wrote: > Hi, > this patch makes FDO inliner to be more aggressive on inlining function > calls that are considered hot. This is based on observation that > INLINE_INSNS_AUTO is the most common reason for inlining not happening > (20.5% for Firefox, whe

Re: [PATCH] Simplify a VEC_SELECT fed by its own inverse

2014-04-22 Thread Richard Sandiford
Marc Glisse writes: > On Mon, 21 Apr 2014, Richard Henderson wrote: > >> On 04/21/2014 01:19 PM, Bill Schmidt wrote: >>> + if (GET_CODE (trueop0) == VEC_SELECT >>> + && GET_MODE (XEXP (trueop0, 0)) == mode) >>> + { >>> + rtx op0_subop1 = XEXP (trueop0, 1); >>> + gcc_assert (GET_

RE: [PATCH] Remove "keep_aligning" from get_inner_reference

2014-04-22 Thread Bernd Edlinger
Hi Eric, On Tue, 22 Apr 2014 10:09:28, Eric Botcazou wrote: > >> I still have that already-approved patch, updated to current trunk. >> I've successfully boot-strapped it on armv7-linux-gnueabihf with >> all languages enabled, including Ada. >> The test suite runs cleanly without any drop-outs. >

Re: RFA: tweak integer type used for memcpy folding

2014-04-22 Thread Richard Biener
On Sat, Apr 19, 2014 at 9:51 AM, Richard Sandiford wrote: > wide-int fails to build libitm because of a bad interaction between: > > /* Keep the OI and XI modes from confusing the compiler into thinking >that these modes could actually be used for computation. They are >only holders for v

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-22 Thread Richard Biener
On Mon, Apr 21, 2014 at 6:56 PM, David Malcolm wrote: > This is a greatly-expanded version of: > http://gcc.gnu.org/ml/gcc-patches/2013-12/msg01262.html > > As of r205034 (de6bd75e3c9bc1efe8a6387d48eedaa4dafe622d) and > r205428 (a90353203da18288cdac1b0b78fe7b22c69fe63f) the various gimple > stat

Re: [PATCH] Fix uninitialised variable warning in tree-ssa-loop-ivcanon.c

2014-04-22 Thread Richard Biener
On Tue, Apr 22, 2014 at 10:07 AM, Kyrill Tkachov wrote: > On 17/04/14 18:06, Daniel Marjamäki wrote: >> >> Hello! >> >> I am not against it.. >> >> However I think there is no danger. I see no potential use of >> uninitialized variable. >> >> The use of n_unroll is guarded by n_unroll_found. > > >

Re: [RFC] Add aarch64 support for ada

2014-04-22 Thread Eric Botcazou
> How about this? I added a check vs MINSIGSTKSZ just in case, and updated > the commentary a bit. While 16K is 2*SIGSTKSIZE for i686, it certainly > isn't for powerpc64. But since things are working as-is I thought the > revision is clearer. Fine with me, thanks. -- Eric Botcazou

Re: RFA: tweak integer type used for memcpy folding

2014-04-22 Thread Richard Sandiford
Richard Biener writes: > On Sat, Apr 19, 2014 at 9:51 AM, Richard Sandiford > wrote: >> wide-int fails to build libitm because of a bad interaction between: >> >> /* Keep the OI and XI modes from confusing the compiler into thinking >>that these modes could actually be used for computation.

Re: RFA: tweak integer type used for memcpy folding

2014-04-22 Thread Richard Biener
On Tue, Apr 22, 2014 at 10:43 AM, Richard Sandiford wrote: > Richard Biener writes: >> On Sat, Apr 19, 2014 at 9:51 AM, Richard Sandiford >> wrote: >>> wide-int fails to build libitm because of a bad interaction between: >>> >>> /* Keep the OI and XI modes from confusing the compiler into thinki

Re: RFA: tweak integer type used for memcpy folding

2014-04-22 Thread Richard Sandiford
Richard Biener writes: > On Tue, Apr 22, 2014 at 10:43 AM, Richard Sandiford > wrote: >> Richard Biener writes: >>> On Sat, Apr 19, 2014 at 9:51 AM, Richard Sandiford >>> wrote: wide-int fails to build libitm because of a bad interaction between: /* Keep the OI and XI modes from

[4.9] Add no-dist for libffi and boehm-gc (PR other/43620)

2014-04-22 Thread Jakub Jelinek
Hi! In order to avoid the ftp.gnu.org security check failures in make dist* (that we don't use anyway), I've committed following fix to 4.9 branch. --- boehm-gc/ChangeLog (revision 209553) +++ boehm-gc/ChangeLog (working copy) @@ -1,3 +1,13 @@ +2014-04-22 Jakub Jelinek + + PR other/436

Re: [PATCH] Remove "keep_aligning" from get_inner_reference

2014-04-22 Thread Eric Botcazou
> Sure, and thanks again for your help. Thanks! > I was not able to find any difference on the generated code with > or without that patch. Yes, my gut feeling is that TYPE_ALIGN_OK is really obsolete now. It is set in a single place in the compiler (gcc-interface/decl.c:gnat_to_gnu_entity):

[PING] [PATCH, AARCH64] movcc for fcsel

2014-04-22 Thread Zhenqiang Chen
Ping? Rebase and test. Bootstrap and no make check regression with qemu. OK for trunk? Thanks! -Zhenqiang On 18 March 2014 16:16, Zhenqiang Chen wrote: > Hi, > > For float value, movsfcc/movdfcc is required by emit_conditional_move > called in ifcvt pass to expand if-then-else to "fcsel" insn.

Re: [PING] [PATCH, AARCH64] movcc for fcsel

2014-04-22 Thread pinskia
> On Apr 22, 2014, at 2:36 AM, Zhenqiang Chen wrote: > > Ping? > > Rebase and test. Bootstrap and no make check regression with qemu. > > OK for trunk? This is the exact same patch we (Cavium) came up with for this missed optimization. Thanks, Andrew > > Thanks! > -Zhenqiang > >> On 18

Re: RFA: tweak integer type used for memcpy folding

2014-04-22 Thread Richard Biener
On Tue, Apr 22, 2014 at 11:15 AM, Richard Sandiford wrote: > Richard Biener writes: >> On Tue, Apr 22, 2014 at 10:43 AM, Richard Sandiford >> wrote: >>> Richard Biener writes: On Sat, Apr 19, 2014 at 9:51 AM, Richard Sandiford wrote: > wide-int fails to build libitm because of a

Re: [PATCH, x86] merge movsd/movhpd pair in peephole

2014-04-22 Thread Bin.Cheng
On Tue, Apr 22, 2014 at 2:59 AM, Xinliang David Li wrote: > Bin, when will the patch for the generic pass be available for review? > Hi, The patch is still under working and reviewing. For arm we only need to handle simple load/stores, so it may need to be extended to handle generic memory access

Re: RFA: tweak integer type used for memcpy folding

2014-04-22 Thread Richard Sandiford
Richard Biener writes: > On Tue, Apr 22, 2014 at 11:15 AM, Richard Sandiford > wrote: >> Richard Biener writes: >>> On Tue, Apr 22, 2014 at 10:43 AM, Richard Sandiford >>> wrote: Richard Biener writes: > On Sat, Apr 19, 2014 at 9:51 AM, Richard Sandiford > wrote: >> wide-int

Re: [PATCH, AArch64 1/6] aarch64: Add addti3 and subti3 patterns

2014-04-22 Thread Marcus Shawcroft
On 8 January 2014 18:13, Richard Henderson wrote: > * config/aarch64/aarch64 (addti3, subti3): New expanders. > (add3_compare0): Remove leading * from name. > (add3_carryin): Likewise. > (sub3_compare0): Likewise. > (sub3_carryin): Likewise. I think this s

Re: [PATCH, AArch64 3/6] aarch64: Add multi3 pattern

2014-04-22 Thread Marcus Shawcroft
On 8 January 2014 18:13, Richard Henderson wrote: > * config/aarch64/aarch64.md (multi3): New expander. > (madd): Remove leading * from name. I think this should go in now we are in stage-1 /Marcus

Re: [PATCH, AArch64 2/6] aarch64: Add mulditi3 and umulditi3 patterns

2014-04-22 Thread Marcus Shawcroft
On 8 January 2014 18:13, Richard Henderson wrote: > * config/aarch64/aarch64.md (mulditi3): New expander. > --- > gcc/config/aarch64/aarch64.md | 17 + > 1 file changed, 17 insertions(+) > > diff --git a/gcc/config/aarch64/aarch64.md b/gcc/config/aarch64/aarch64.md > index

Ping: [PATCH] PR debug/16063. Add DW_AT_type to DW_TAG_enumeration.

2014-04-22 Thread Mark Wielaard
On Mon, 2014-04-14 at 23:19 +0200, Mark Wielaard wrote: > On Fri, 2014-04-11 at 11:03 -0700, Cary Coutant wrote: > > >> The DWARF bits are fine with me. > > > > > > Thanks. Who can approve the other bits? > > > > You should probably get C and C++ front end approval. I'm not really > > sure who nee

RE: [PATCH] Add a new option "-fmerge-bitfields" (patch / doc inside)

2014-04-22 Thread Zoran Jovanovic
Hello, Updated doc/invoke.texi by stating that new option is enabled by default at -O2 and higher. Also, -fmerge-bitfields added to the list of optimization flags enabled by default at -O2 and higher. Regards, Zoran Jovanovic --

Re: [AArch64] Relax modes_tieable_p and cannot_change_mode_class

2014-04-22 Thread James Greenhalgh
*ping* Thanks, James On Tue, Feb 18, 2014 at 12:40:24PM +, James Greenhalgh wrote: > > Hi, > > We aim to improve code generation for the vector structure types > such as int64x2x4_t, as used in the vld/st{2,3,4} lane neon > intrinsics. > > It should be possible and cheap to get individual

Re: [AArch64] Relax modes_tieable_p and cannot_change_mode_class

2014-04-22 Thread Marcus Shawcroft
On 18 February 2014 12:40, James Greenhalgh wrote: > 2014-02-18 James Greenhalgh > > * config/aarch64/aarch64-protos.h (aarch64_modes_tieable_p): New. > * config/aarch64/aarch64.c > (aarch64_cannot_change_mode_class): Weaken conditions. > (aarch64_modes_tieable_

Re: RFA: tweak integer type used for memcpy folding

2014-04-22 Thread Richard Biener
On Tue, Apr 22, 2014 at 11:51 AM, Richard Sandiford wrote: > Richard Biener writes: >> On Tue, Apr 22, 2014 at 11:15 AM, Richard Sandiford >> wrote: >>> Richard Biener writes: On Tue, Apr 22, 2014 at 10:43 AM, Richard Sandiford wrote: > Richard Biener writes: >> On Sat, Apr

Re: [PATCH 22/89] Introduce gimple_goto

2014-04-22 Thread Trevor Saunders
On Mon, Apr 21, 2014 at 12:56:53PM -0400, David Malcolm wrote: > gcc/ > * coretypes.h (gimple_goto): New typedef. > (const_gimple_goto): New typedef. > > * gimple.h (gimple_statement_goto): New subclass of > gimple_statement_with_ops, adding the invariant that > stmt-

Re: [PATCH 26/89] Introduce gimple_eh_filter

2014-04-22 Thread Trevor Saunders
On Mon, Apr 21, 2014 at 12:56:57PM -0400, David Malcolm wrote: > gcc/ > * coretypes.h (gimple_eh_filter): New typedef. > (const_gimple_eh_filter): New typedef. > > * gimple.h (gimple_statement_base::as_a_gimple_eh_filter): New. > (gimple_build_eh_filter): Return a gimple_eh

Re: [PATCH] pedantic warning behavior when casting void* to ptr-to-func, 4.8 and 4.9

2014-04-22 Thread Daniel Gutson
Ping for maintainer please. Thanks, Daniel. On Tue, Apr 15, 2014 at 7:05 PM, Daniel Gutson wrote: > On Tue, Apr 15, 2014 at 6:12 PM, Richard Sandiford > wrote: >> cc:ing Jason, who's the C++ maintainer. > > > FWIW: I created http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60850 > >> >> Daniel G

Re: Remove obsolete Solaris 9 support

2014-04-22 Thread Rainer Orth
Eric Botcazou writes: >> But for the Solaris 9 stuff, it crystal clear that this cannot occur on >> Solaris 10 and up (no single-threaded case anymore since libthread.so.1 >> has been folded into libc.so.1). Ok to remove this part? > > OK for the "Solaris 9 - single-threaded" part. Thanks. I'v

Re: Remove obsolete Solaris 9 support

2014-04-22 Thread Rainer Orth
Uros Bizjak writes: > On Wed, Apr 16, 2014 at 1:16 PM, Rainer Orth > wrote: >> Now that 4.9 has branched, it's time to actually remove the obsolete >> Solaris 9 configuration. Most of this is just legwork and falls under >> my Solaris maintainership. >> >> A couple of questions, though: >> >> *

Re: Remove obsolete Solaris 9 support

2014-04-22 Thread Rainer Orth
Bruce Korb writes: > On 04/16/14 04:16, Rainer Orth wrote: >> I've already verified that trunk fails to build no sparc-sun-solaris2.9 >> and i386-pc-solaris2.9. Bootstraps on {i386,sparc}-*-solaris2.{10,11} >> (and x86_64-unknown-linux-gnu for good measure) are in progress. I'll >> verify that

Re: Remove obsolete Solaris 9 support

2014-04-22 Thread Rainer Orth
Rainer Orth writes: > Now that 4.9 has branched, it's time to actually remove the obsolete > Solaris 9 configuration. Most of this is just legwork and falls under > my Solaris maintainership. > > A couple of questions, though: > > * David: In target-supports.exp (add_options_for_tls), the commen

Re: Remove obsolete Solaris 9 support

2014-04-22 Thread Rainer Orth
Andrew Haley writes: > On 04/16/2014 12:16 PM, Rainer Orth wrote: >> * I'm removing the check from classpath. Again, I'm >> uncertain if this is desirable. In the past, classpath changes were >> merged upstream by one of the libjava maintainers. > > We should not diverge from GNU Classpath

Re: [PATCH] Try to coalesce for unary and binary ops

2014-04-22 Thread Michael Matz
Hi, On Fri, 18 Apr 2014, Steven Bosscher wrote: > IMHO TER should be improved to *do* disturb the order of the incoming > instructions, to reduce register pressure. The latter is the goal, yes. But TER isn't really the right place for that (it's constrained by too many invariants, running afte

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-22 Thread Andrew MacLeod
On 04/22/2014 04:03 AM, Richard Sandiford wrote: First of all, thanks a lot for doing this. Maybe one day we'll have the same in rtl :-) But... David Malcolm writes: In doing the checked downcasts I ran into the verbosity of the as_a <> API (in our "is-a.h"). I first tried simplifying them

[COMMITTED][AArch64] Fixup indentation.

2014-04-22 Thread Marcus Shawcroft
Hi, I just committed the attached to fix up some indentation in aarch64.c /Marcuscommit 9484cf884a28c18e310b31fcc283f75ade42e93d Author: Marcus Shawcroft Date: Tue Apr 22 13:27:39 2014 +0100 [AArch64] Fix indentation. diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e882ff8..b1bbe95 1006

[PATCH 1/7] [AARCH64] Fix bug in aarch64_initial_elimination_offset

2014-04-22 Thread Jiong Wang
We are subtract an extra "cfun->machine->frame.fp_lr_offset" which is wrong, but the AARCH64_ROUND_UP below happen to compensate that, thus hiding this bug. The offset from FRAME_POINTER_REGNUM to STACK_POINTER_REGNUM is exactly the sum of outgoing argument size, callee saved reg size and local v

Re: Remove obsolete Solaris 9 support

2014-04-22 Thread Mark Wielaard
On Sat, 2014-04-19 at 09:03 +0100, Andrew Haley wrote: > On 04/16/2014 12:16 PM, Rainer Orth wrote: > > * I'm removing the check from classpath. Again, I'm > > uncertain if this is desirable. In the past, classpath changes were > > merged upstream by one of the libjava maintainers. > > We s

Re: PATCH: PR target/60868: [4.9/4.10 Regression] ICE: in int_mode_for_mode, at stor-layout.c:400 with -minline-all-stringops -minline-stringops-dynamically -march=core2

2014-04-22 Thread Jakub Jelinek
On Thu, Apr 17, 2014 at 10:07:29AM -0700, H.J. Lu wrote: > Hi, > > GET_MODE returns VOIDmode on CONST_INT. It happens with -O0. This > patch uses counter_mode on count_exp to get mode. Tested on > Linux/x86-64 without regressions. OK for trunk and 4.9 branch? Ok, thanks. > 2014-04-17 H.J. L

Re: [Patch, AArch64] Fix shuffle for big-endian.

2014-04-22 Thread Tejas Belagod
Alan Lawrence wrote: Sorry to be pedantic again, but 'wierd' should be spelt 'weird'. Otherwise, looks good to me and much neater than before. (Seems you'd rather keep the re-enabling, here and in the testsuite, for another patch?) Hi, Yes, the re-enabling is another patch. Thanks for the ty

Re: Remove obsolete Solaris 9 support

2014-04-22 Thread David Edelsohn
On Tue, Apr 22, 2014 at 8:39 AM, Rainer Orth wrote: > Rainer Orth writes: > >> Now that 4.9 has branched, it's time to actually remove the obsolete >> Solaris 9 configuration. Most of this is just legwork and falls under >> my Solaris maintainership. >> >> A couple of questions, though: >> >> *

Re: version typeinfo for 128bit types

2014-04-22 Thread Jonathan Wakely
On 14 April 2014 11:28, Jonathan Wakely wrote: > On 14 April 2014 10:39, Marc Glisse wrote: >> >> PR libstdc++/43622 >> * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols. >> * config/abi/pre/gnu-versioned-namespace.ver: New symbols. >> * config/abi/po

Re: version typeinfo for 128bit types

2014-04-22 Thread Marc Glisse
On Tue, 22 Apr 2014, Jonathan Wakely wrote: On 14 April 2014 11:28, Jonathan Wakely wrote: On 14 April 2014 10:39, Marc Glisse wrote: PR libstdc++/43622 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version, new symbols. * config/abi/pre/gnu-versioned-namespace.ver: New

Re: Remove obsolete Solaris 9 support

2014-04-22 Thread Rainer Orth
David Edelsohn writes: > On Tue, Apr 22, 2014 at 8:39 AM, Rainer Orth > wrote: >> Rainer Orth writes: >> >>> Now that 4.9 has branched, it's time to actually remove the obsolete >>> Solaris 9 configuration. Most of this is just legwork and falls under >>> my Solaris maintainership. >>> >>> A c

Re: Remove obsolete Solaris 9 support

2014-04-22 Thread David Edelsohn
On Tue, Apr 22, 2014 at 9:58 AM, Rainer Orth wrote: >>> David, could you please review this comment for correctness on AIX? >> >> AIX TLS needs -pthread command line option. > > Understood, but is the reason given in that comment (__tls_get_addr in > libthread) correct? Seems like a Solaris 9 im

Re: [PATCH 1/7] [AARCH64] Fix bug in aarch64_initial_elimination_offset

2014-04-22 Thread Marcus Shawcroft
On 22 April 2014 14:23, Jiong Wang wrote: > 2014-04-22 Renlin > 2014-04-22 Jiong Wang > > gcc/ > * config/aarch64/aarch64.h (aarch64_frame): Delete "fp_lr_offset". > * config/aarch64/aarch64.c (aarch64_layout_frame): Likewise. > * config/aarch64/aarch64.c (aarch64_initial_el

Re: [Patch, AArch64] Fix shuffle for big-endian.

2014-04-22 Thread Marcus Shawcroft
On 22 April 2014 14:40, Tejas Belagod wrote: > Alan Lawrence wrote: >> >> Sorry to be pedantic again, but 'wierd' should be spelt 'weird'. >> Otherwise, >> looks good to me and much neater than before. (Seems you'd rather keep the >> re-enabling, here and in the testsuite, for another patch?) >> >

Re: version typeinfo for 128bit types

2014-04-22 Thread Jonathan Wakely
On 22 April 2014 14:55, Marc Glisse wrote: > On Tue, 22 Apr 2014, Jonathan Wakely wrote: > >> On 14 April 2014 11:28, Jonathan Wakely wrote: >>> >>> On 14 April 2014 10:39, Marc Glisse wrote: PR libstdc++/43622 * config/abi/pre/gnu.ver (CXXABI_1.3.9): New version

Re: Remove obsolete Solaris 9 support

2014-04-22 Thread Rainer Orth
David Edelsohn writes: > On Tue, Apr 22, 2014 at 9:58 AM, Rainer Orth > wrote: > David, could you please review this comment for correctness on AIX? >>> >>> AIX TLS needs -pthread command line option. >> >> Understood, but is the reason given in that comment (__tls_get_addr in >> libthread)

Re: [PATCH 02/89] Introduce gimple_switch and use it in various places

2014-04-22 Thread Richard Biener
On Tue, Apr 22, 2014 at 12:45 AM, Trevor Saunders wrote: >> --- a/gcc/tree-loop-distribution.c >> +++ b/gcc/tree-loop-distribution.c >> @@ -687,8 +687,9 @@ generate_loops_for_partition (struct loop *loop, >> partition_t partition, >> } >> else if (gimple_code (stmt) == G

[linaro/gcc-4_9-branch] Merge from gcc-4_9-branch

2014-04-22 Thread Yvan Roux
Hi, we have merged the gcc-4_9-branch into linaro/gcc-4_9-branch up to revision 209611 as r209634 (to keep a track of the 4.9.0 release) and up to revision 209633 as r209635. This will be part of our 2014.04 release. Thanks, Yvan

[PATCH, SH] Extend HIQI mode constants

2014-04-22 Thread Christian Bruel
This patch allows constant propagation from HIQI modes, as illustrated by the attached testcase, by converting them into a new SImode pseudo. It also merge the HIQI mode patterns using general_movdst_operand for both. No regression on sh-none-elf. OK for trunk ? Thanks, 2014-04-22 Christian Br

Re: [PATCH][RFC][wide-int] Fix some build errors on arm in wide-int branch and report ICE

2014-04-22 Thread Kyrill Tkachov
Ping. http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00769.html Any ideas? I recall chatter on IRC that we want to merge wide-int into trunk soon. Bootstrap failure on arm would prevent that... Thanks, Kyrill On 15/04/14 12:03, Kyrill Tkachov wrote: Hi all (and wide-int maintainers in particula

Re: fuse-caller-save - hook format

2014-04-22 Thread Tom de Vries
On 17-04-14 18:49, Vladimir Makarov wrote: I see. I guess your proposed solution is ok then. Vladimir, Richard, I've updated the fuse-caller-save patch series to model non-callee call clobbers in CALL_INSN_FUNCTION_USAGE. There are 2 new hooks: 1. call_fusage_contains_non_callee_clobbers.

Re: Remove obsolete Solaris 9 support

2014-04-22 Thread Andrew Hughes
- Original Message - > On Sat, 2014-04-19 at 09:03 +0100, Andrew Haley wrote: > > On 04/16/2014 12:16 PM, Rainer Orth wrote: > > > * I'm removing the check from classpath. Again, I'm > > > uncertain if this is desirable. In the past, classpath changes were > > > merged upstream by

Re: fuse-caller-save - hook format

2014-04-22 Thread Richard Sandiford
Tom de Vries writes: > 2. post_expand_call_insn. > A utility hook to facilitate adding the clobbers to CALL_INSN_FUNCTION_USAGE. Why is this needed though? Like I say, I think targets should update CALL_INSN_FUNCTION_USAGE when emitting calls as part of the call expander. Splitting the functiona

Re: [PATCH] Simplify a VEC_SELECT fed by its own inverse

2014-04-22 Thread Bill Schmidt
Hi, Below is the revised patch addressing Richard's concerns about the assertions. Bootstrapped and tested on powerpc64[,le]-unknown-linux-gnu. Ok for trunk? Thanks, Bill [gcc] 2014-04-22 Bill Schmidt * simplify-rtx.c (simplify_binary_operation_1): Optimize case of nested

Re: [PATCH][RFC][wide-int] Fix some build errors on arm in wide-int branch and report ICE

2014-04-22 Thread Richard Sandiford
Kyrill Tkachov writes: > Ping. > http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00769.html > Any ideas? I recall chatter on IRC that we want to merge wide-int into trunk > soon. Bootstrap failure on arm would prevent that... Sorry for the late reply. I hadn't forgotten, but I wanted to wait until

Re: [PATCH 71/89] Concretize gimple_cond_make_{false|true}

2014-04-22 Thread Trevor Saunders
> diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c > index 902b879..62ec9f5 100644 > --- a/gcc/tree-vrp.c > +++ b/gcc/tree-vrp.c > @@ -9517,10 +9517,11 @@ fold_predicate_in (gimple_stmt_iterator *si) >else > { > gcc_assert (gimple_code (stmt) == GIMPLE_COND); > + gimple_cond

Re: [PATCH][RFC][wide-int] Fix some build errors on arm in wide-int branch and report ICE

2014-04-22 Thread Mike Stump
On Apr 15, 2014, at 4:03 AM, Kyrill Tkachov wrote: > I tried bootstrapping the wide-int branch on arm-none-linux-gnueabihf and > encountered some syntax errors while building wide-int.h and wide-int.cc in > expressions that tried to cast to HOST_WIDE_INT. Thanks, nice catch. > Also, in c-ada-s

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-22 Thread Trevor Saunders
On Tue, Apr 22, 2014 at 09:05:43AM -0400, Andrew MacLeod wrote: > On 04/22/2014 04:03 AM, Richard Sandiford wrote: > >First of all, thanks a lot for doing this. Maybe one day we'll have > >the same in rtl :-) > > > >But... > > > >David Malcolm writes: > >>In doing the checked downcasts I ran into

Re: [PATCH][RFC][wide-int] Fix some build errors on arm in wide-int branch and report ICE

2014-04-22 Thread Mike Stump
On Apr 22, 2014, at 8:33 AM, Richard Sandiford wrote: > Kyrill Tkachov writes: >> Ping. >> http://gcc.gnu.org/ml/gcc-patches/2014-04/msg00769.html >> Any ideas? I recall chatter on IRC that we want to merge wide-int into trunk >> soon. Bootstrap failure on arm would prevent that... > > Sorry f

Re: fuse-caller-save - hook format

2014-04-22 Thread Tom de Vries
On 22-04-14 17:27, Richard Sandiford wrote: Tom de Vries writes: 2. post_expand_call_insn. A utility hook to facilitate adding the clobbers to CALL_INSN_FUNCTION_USAGE. Why is this needed though? Like I say, I think targets should update CALL_INSN_FUNCTION_USAGE when emitting calls as part o

[PING] [PATCH, AArch64] Use GCC builtins to count leading/tailing zeros

2014-04-22 Thread Yufeng Zhang
Ping~ OK for stage-1? The original patch was posted here: http://gcc.gnu.org/ml/gcc-patches/2014-01/msg00286.html and the glibc patch was approved here: http://sourceware.org/ml/libc-alpha/2014-01/msg00120.html Thanks, Yufeng On 01/07/14 16:34, Yufeng Zhang wrote: Hi, This patch is to sy

Re: fuse-caller-save - hook format

2014-04-22 Thread Richard Sandiford
Tom de Vries writes: > On 22-04-14 17:27, Richard Sandiford wrote: >> Tom de Vries writes: >>> 2. post_expand_call_insn. >>> A utility hook to facilitate adding the clobbers to >>> CALL_INSN_FUNCTION_USAGE. >> >> Why is this needed though? Like I say, I think targets should update >> CALL_INSN

Re: [RFC] Add aarch64 support for ada

2014-04-22 Thread Eric Botcazou
> Yes, this bootstrapped. OK, I have installed a variant of the patch (it should not change anything). Thanks for working on this. -- Eric Botcazou

[committed] Fix ICE on invalid combined distribute parallel for (PR c/59073)

2014-04-22 Thread Jakub Jelinek
Hi! I've committed this fix for invalid #pragma omp distribute parallel for. If the #pragma omp for parsing returns NULL, i.e. it is invalid and the stmt hasn't been added, then we shouldn't set OMP_PARALLEL_COMBINED on the parallel and similarly for the distribute. Tested on x86_64-linux, commit

Re: [PING] [PATCH, AArch64] Use GCC builtins to count leading/tailing zeros

2014-04-22 Thread Marcus Shawcroft
On 22 April 2014 17:09, Yufeng Zhang wrote: > Ping~ > > OK for stage-1? > > The original patch was posted here: > http://gcc.gnu.org/ml/gcc-patches/2014-01/msg00286.html > and the glibc patch was approved here: > http://sourceware.org/ml/libc-alpha/2014-01/msg00120.html The glibc patch is now

Add call_fusage_contains_non_callee_clobbers hook

2014-04-22 Thread Tom de Vries
On 22-04-14 17:05, Tom de Vries wrote: I've updated the fuse-caller-save patch series to model non-callee call clobbers in CALL_INSN_FUNCTION_USAGE. Vladimir, This patch adds a hook to indicate whether a target has added the non-callee call clobbers to CALL_INSN_FUNCTION_USAGE, meaning it's

Re: [PATCH] Do not run IPA transform phases multiple times

2014-04-22 Thread Martin Jambor
On Fri, Apr 18, 2014 at 03:08:09PM +0200, Martin Jambor wrote: > On Fri, Apr 18, 2014 at 01:49:36PM +0200, Jakub Jelinek wrote: > > It reproduces on x86_64 too, I guess the reason why you aren't seeing this > > is that you might have too old assembler that doesn't support > > avx2 instructions (you

Re: [PATCH][AARCH64] Support tail indirect function call

2014-04-22 Thread Jiong Wang
^Ping... ok for stage 1? Regards, Jiong On 02/04/14 12:04, Jiong Wang wrote: ^Ping... Regards, Jiong On 18/03/14 14:13, Jiong Wang wrote: Current, indirect function call prevents tail-call optimization on AArch64. This patch adapt the fix for PR arm/19599 to AArch64. Is it ok for next st

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-22 Thread David Malcolm
On Tue, 2014-04-22 at 09:03 +0100, Richard Sandiford wrote: > First of all, thanks a lot for doing this. Maybe one day we'll have > the same in rtl :-) > > But... > > David Malcolm writes: > > In doing the checked downcasts I ran into the verbosity of the as_a <> > > API (in our "is-a.h"). I f

Re: fuse-caller-save - hook format

2014-04-22 Thread Tom de Vries
On 22-04-14 18:18, Richard Sandiford wrote: Tom de Vries writes: On 22-04-14 17:27, Richard Sandiford wrote: Tom de Vries writes: 2. post_expand_call_insn. A utility hook to facilitate adding the clobbers to CALL_INSN_FUNCTION_USAGE. Why is this needed though? Like I say, I think targets

Re: [PATCH 02/89] Introduce gimple_switch and use it in various places

2014-04-22 Thread David Malcolm
On Mon, 2014-04-21 at 18:45 -0400, Trevor Saunders wrote: > > --- a/gcc/tree-loop-distribution.c > > +++ b/gcc/tree-loop-distribution.c > > @@ -687,8 +687,9 @@ generate_loops_for_partition (struct loop *loop, > > partition_t partition, > > } > > else if (gimple_code (stmt) ==

Re: [PATCH 71/89] Concretize gimple_cond_make_{false|true}

2014-04-22 Thread David Malcolm
On Tue, 2014-04-22 at 11:37 -0400, Trevor Saunders wrote: > > diff --git a/gcc/tree-vrp.c b/gcc/tree-vrp.c > > index 902b879..62ec9f5 100644 > > --- a/gcc/tree-vrp.c > > +++ b/gcc/tree-vrp.c > > @@ -9517,10 +9517,11 @@ fold_predicate_in (gimple_stmt_iterator *si) > >else > > { > >

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-22 Thread David Malcolm
On Tue, 2014-04-22 at 09:05 -0400, Andrew MacLeod wrote: > On 04/22/2014 04:03 AM, Richard Sandiford wrote: > > First of all, thanks a lot for doing this. Maybe one day we'll have > > the same in rtl :-) > > > > But... > > > > David Malcolm writes: > >> In doing the checked downcasts I ran into t

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-22 Thread Richard Sandiford
David Malcolm writes: > Alternatively we could change the is-a.h API to eliminate this > discrepancy, and keep the typedefs; giving something like the following: > > static void > dump_gimple_switch (pretty_printer *buffer, gimple_switch gs, int spc, > int flags) > [...

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-22 Thread Andrew MacLeod
On 04/22/2014 01:50 PM, David Malcolm wrote: On Tue, 2014-04-22 at 09:05 -0400, Andrew MacLeod wrote: Of course, it would be ideal if we could use 'gimple' as the namespace, but that is currently taken by the gimple statement type... I'd even go so far as to propose that 'gimple' should be ren

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-22 Thread Andrew MacLeod
On 04/22/2014 02:56 PM, Richard Sandiford wrote: David Malcolm writes: Alternatively we could change the is-a.h API to eliminate this discrepancy, and keep the typedefs; giving something like the following: static void dump_gimple_switch (pretty_printer *buffer, gimple_switch gs, int spc

Re: [PING] [PATCH] register CALL_INSN_FUNCTION_USAGE in find_all_hard_reg_sets

2014-04-22 Thread Eric Botcazou
> Ping of this ( http://gcc.gnu.org/ml/gcc-patches/2014-01/msg00888.html ) > patch. That patch isn't for GCC mainline though, but OK on principle if you test it on mainline, avoid the very ugly set-inside-use idiom and do: record_hard_reg_sets (XEXP (op, 0), NULL, pset); instead of reimplemen

Re: [PATCH 00/89] Compile-time gimple-checking

2014-04-22 Thread Richard Biener
On April 22, 2014 8:56:56 PM CEST, Richard Sandiford wrote: >David Malcolm writes: >> Alternatively we could change the is-a.h API to eliminate this >> discrepancy, and keep the typedefs; giving something like the >following: >> >> static void >> dump_gimple_switch (pretty_printer *buffer, g

[wide-int 1/8] Fix some off-by-one errors and bounds tests

2014-04-22 Thread Richard Sandiford
This is the first of 8 patches from reading through the diff with mainline. Some places had an off-by-one error on an index and some used "<= 0" instead of ">= 0". I think we should use MAX_BITSIZE_MODE_ANY_MODE rather than MAX_BITSIZE_MODE_ANY_INT when handling floating-point modes. Two hunks co

[wide-int 2/8] Fix ubsan internal-fn.c handling

2014-04-22 Thread Richard Sandiford
This code was mixing hprec and hprec*2 wide_ints. The simplest fix seemed to be to introduce a function that gives the minimum precision necessary to represent a function, which also means that no temporary wide_ints are needed. Other places might be able to use this too, but I'd like to look at

[wide-int 3/8] Add and use udiv_ceil

2014-04-22 Thread Richard Sandiford
Just a minor tweak to avoid several calculations when one would do. Since we have a function for rounded-up division, we might as well use it instead of the (X + Y - 1) / Y idiom. Tested on x86_64-linux-gnu. OK to install? Thanks, Richard Index: gcc/dwarf2out.c

[wide-int 4/8] Tweak uses of new API

2014-04-22 Thread Richard Sandiford
This is an assorted bunch of API tweaks: - use neg_p instead of lts_p (..., 0) - use STATIC_ASSERT for things that are known at compile time - avoid unnecessary wide(st)_int temporaries and arithmetic - remove an unnecessary template parameter - use to_short_addr for an offset_int->HOST_WIDE_INT o

[wide-int 5/8] Use LOG2_BITS_PER_UNIT

2014-04-22 Thread Richard Sandiford
Looks like a few uses of the old idiom: BITS_PER_UNIT == 8 ? 3 : exact_log2 (BITS_PER_UNIT) have crept in. This patch replaces them with LOG2_BITS_PER_UNIT. Tested on x86_64-linux-gnu. OK to install? Thanks, Richard Index: gcc/expr.c ===

[wide-int 6/8] Avoid redundant extensions

2014-04-22 Thread Richard Sandiford
register_edge_assert_for_2 operates on wide_ints of precision nprec so a lot of the extensions are redundant. Tested on x86_64-linux-gnu. OK to install? Thanks, Richard Index: gcc/tree-vrp.c === --- gcc/tree-vrp.c 2014-04-22

Re: version typeinfo for 128bit types

2014-04-22 Thread Marc Glisse
Hello, as written in the PR, my patch seems wrong for platforms like powerpc that already had the __float128 typeinfo for long double with a different version. The following patch regtested fine on x86_64, and a hackish cross-build shows that float128.ver is ignored on powerpc (good). 2014-0

[wide-int 7/8] Undo some changes from trunk

2014-04-22 Thread Richard Sandiford
This patch undoes a few assorted differences from trunk. For fold-const.c the old code was: /* If INNER is a right shift of a constant and it plus BITNUM does not overflow, adjust BITNUM and INNER. */ if (TREE_CODE (inner) == RSHIFT_EXPR && TREE_CODE (TREE_OPERAND

[wide-int 8/8] Formatting and typo fixes

2014-04-22 Thread Richard Sandiford
Almost obvious, but just in case... The first mem_loc_descriptor hunk just reflows the text so that the line breaks are less awkward. Tested on x86_64-linux-gnu. OK to install? Thanks, Richard Index: gcc/doc/rtl.texi === --- gcc/

Re: Inliner heuristics TLC 1/n - let small function inlinng to ignore cold portion of program

2014-04-22 Thread Jan Hubicka
> This looks fine. LIPO has similar change too. Other directions worth > looking into: > > 1) To model icache effect better, weighted callee size need to be > used with profile. The weight for BB may look like: min(1, > FREQ(BB)/FREQ(ENTRY)). > 2) When function splitting is turned on, are any i

Re: [PATCH 02/89] Introduce gimple_switch and use it in various places

2014-04-22 Thread David Malcolm
On Tue, 2014-04-22 at 13:13 -0400, David Malcolm wrote: > On Mon, 2014-04-21 at 18:45 -0400, Trevor Saunders wrote: > > > --- a/gcc/tree-loop-distribution.c > > > +++ b/gcc/tree-loop-distribution.c > > > @@ -687,8 +687,9 @@ generate_loops_for_partition (struct loop *loop, > > > partition_t partiti

  1   2   >