[patch,avr] Fix PR 65657 - read from __memx address space tramples arguments to function call

2015-04-15 Thread Senthil Kumar Selvaraj
This patch fixes PR 65657. When cfgexpand.c expands a function call, it first figures out the registers in which the arguments will go, followed by expansion of the arguments themselves (right to left). It later emits mov insns to set the precomputed registers with the expanded RTXes. If one of

Re: [PATCH] Enable two UNSIGNED_FLOAT simplifications in simplify_unary_operation_1

2015-04-15 Thread Jeff Law
On 03/20/2015 11:03 AM, Renlin Li wrote: Hi all, This is a simple patch to enable two simplifications for UNSIGNED_FLOAT expression. For the following rtx patterns, they can be simplified when the integer x can be represented in float mode without precision loss: float_truncate (float x) --> f

Re: [rfc, stage 1] default to -fno-delete-null-pointer-checks on nios2-elf

2015-04-15 Thread Jeff Law
On 03/29/2015 01:30 PM, Sandra Loosemore wrote: As the outcome of this discussion last month about unexpected behavior of -fisolate-erroneous-paths-dereference https://gcc.gnu.org/ml/gcc/2015-02/msg00163.html Altera has asked us to turn off -fdelete-null-pointer-checks on nios2-elf targets. Pr

[PATCH] Save an instruction with -mprofile-kernel style profiling

2015-04-15 Thread Anton Blanchard
Save an instruction with -mprofile-kernel style profiling and require the mcount handler to save the LR to the stack. -mprofile-kernel is an undocumented gcc option that was introduced specifically for the Linux kernel, so it should be safe to make this change. When we do add support for this opti

[PATCH] Do not discard the constructors of empty structs [PR c++/64527]

2015-04-15 Thread Patrick Palka
gimplify_init_constructor() only attempts to gimplify a CONSTRUCTOR's elts under two conditions: if the object has not been zero-initialized, or if categorize_ctor_elements() detected more than one "nonzero" elt in the CONSTRUCTOR. With the PR's testcase, both of these conditions are false: the gi

Re: [AArch64][PR65139] use clobber with match_scratch for aarch64_lshr_sisd_or_int_3

2015-04-15 Thread Kugan
On 16/04/15 08:32, Jakub Jelinek wrote: > On Thu, Apr 16, 2015 at 08:27:24AM +1000, Kugan wrote: >> +if ( == LSHIFTRT) >> + { >> +emit_insn (gen_aarch64_lshr_sisd_or_int_3 (operands[0], >> operands[1], operands[2])); > > That is way too long line, please wrap it. > >> +

unused comparison warning (bug 62182)

2015-04-15 Thread Arnaud Bienner
Hi, I've submitted a patch to bug 62182 [1], and I would like to have some feedback about it (this is still WIP as noted in the bug). As it is my first patch to gcc, I'm not sure what is the best way to discuss/review patches (here or in bugzilla). Anyway, please let me know your thoughts :) Arna

Re: [AArch64][PR65139] use clobber with match_scratch for aarch64_lshr_sisd_or_int_3

2015-04-15 Thread Jakub Jelinek
On Thu, Apr 16, 2015 at 08:27:24AM +1000, Kugan wrote: > +if ( == LSHIFTRT) > + { > +emit_insn (gen_aarch64_lshr_sisd_or_int_3 (operands[0], > operands[1], operands[2])); That is way too long line, please wrap it. > +DONE; > + } >} > ) > > @@ -3361,11 +3367,1

Re: [AArch64][PR65139] use clobber with match_scratch for aarch64_lshr_sisd_or_int_3

2015-04-15 Thread Kugan
On 15/04/15 22:32, Jakub Jelinek wrote: > On Wed, Apr 15, 2015 at 01:18:36PM +0100, Richard Earnshaw wrote: >> On 14/04/15 22:41, Kugan wrote: >>> This patch uses clobber with match_scratch instead of earlyclobber for >>> aarch64_lshr_sisd_or_int_3 so that RA can have more freedom in >>> selectin

Re: [AArch64][PR65139] use clobber with match_scratch for aarch64_lshr_sisd_or_int_3

2015-04-15 Thread Kugan
On 15/04/15 21:59, Maxim Kuvyrkov wrote: >> On Apr 15, 2015, at 12:41 AM, Kugan >> wrote: >> >> This patch uses clobber with match_scratch instead of earlyclobber for >> aarch64_lshr_sisd_or_int_3 so that RA can have more freedom in >> selecting suitable register, as discussed in >> http://thread

C++ PATCH to clobber objects on constructor entry

2015-04-15 Thread Jason Merrill
Currently we clobber objects at the end of the destructor to express that the language guarantees nothing about the state of storage after an object is destroyed. The same is true at the other end: when a constructor begins the object has indeterminate value, so any stores to the underlying st

Two small C++ PATCHes

2015-04-15 Thread Jason Merrill
The first patch uses get_template_info instead of more verbose code. The second patch avoids decls with DECL_COMDAT && !TREE_PUBLIC, which honza has complained about in the past. Tested x86_64-pc-linux-gnu, applying to trunk. commit 6447d3fc822afb4f8fe0d8488a0423cb0240e262 Author: Jason Merril

C++ PATCH for c++/65727 (ICE with lambda in decltype)

2015-04-15 Thread Jason Merrill
Here we were getting confused because we push into type_e when parsing the initializer for type_e::b, but then don't find any 'this' for resolving the reference to type_e::d. We should allow that in decltype context, but the code wasn't handling it. Marek suggested just handling null return f

[PATCH, i386]: Merge *_sse patterns with *_mixed using enabled attribute.

2015-04-15 Thread Uros Bizjak
Hello! 2015-04-15 Uros Bizjak * config/i386/i386.md (*cmpi_mixed): Merge with *cmpi_sse using enabled attribute. (*extendsfdf2_mixed): Merge with *extendsfdf2_sse using enabled attribute. (*truncdfsf_fast_mixed): Merge with *truncdfsf_fast_sse using enabled attribute.

Minor reordering of functions in tree-ssa-dom.c

2015-04-15 Thread Suzanne & Jeff
This just moves a few functions around to avoid the need for forward declarations in an upcoming change towards fixing 47679. This shouldn't affect code generation in any way shape or form. Bootstrapped and regression tested on x86_64-linux-gnu. Installed on the trunk. jeff commit a633

Re: RFA: RL78: Add support for G13 and G14 multiply and divide

2015-04-15 Thread DJ Delorie
> OK to apply ? Ok. > gcc/ChangeLog > 2015-04-15 Nick Clifton > > * config/rl78/rl78-opts.h (enum rl78_mul_types): Add MUL_G14 and > MUL_UNINIT. > (enum rl78_cpu_type): New. > * config/rl78/rl78-virt.md (attr valloc): Add divhi and divsi. > (umulhi3_shift_virt

[Patch, Fortran, PR58586, v1] ICE with derived type with allocatable component passed by value

2015-04-15 Thread Andre Vehreschild
Hi all, by accident I patched this pr. For short, when a structure constructor for a structure with an allocatable component or a function returning a type with an allocatable component is passed as actual argument to a function, then gfortran ICEs. This patch fixes, both the ICE and a segfault at

Re: RFA: Updated gcc-5 html documentation for new RX option

2015-04-15 Thread Gerald Pfeifer
On Wed, 15 Apr 2015, Nicholas Clifton wrote: The attached patch updates the gcc html documentation to mention the new RX command line option that I checked in today. Is this patch OK to apply ? This looks good to me, thank you! The only question I have is: where it says "on addresses with t

Re: [libstdc++ PATCH] Add support for std::uncaught_exceptions

2015-04-15 Thread Daniel Gutson
Hi Ville, On Sun, Apr 12, 2015 at 8:24 PM, Ville Voutilainen wrote: > The patch is a bit large since it does the baseline_symbols regeneration > and other new-version api-dance. > Hence attached gzipped. > > Tested on Linux x86-64. > > 2015-04-13 Ville Voutilainen > Add support for std::un

[Patch][testsuite,i386]: Remove include of values.h from avx512

2015-04-15 Thread Ryan Mansfield
Hi, Some of the avx512 tests include values.h which is an obsolete header on Linux which provides compatibility macros based on limits.h and float.h definitions. On QNX we have no values.h ;), so these tests fail to build. The include doesn't appear to be needed on Linux, as x86_64-linux-gnu

Re: [PATCH] Fix IPA-ICF wrong-code with GIMPLE_PREDICT (PR ipa/65765)

2015-04-15 Thread Jan Hubicka
> Hi! > > When ICF encounteres a GIMPLE_PREDICT (as in the testcase) or GIMPLE_NOP, > it stops looking at further statements in the bb (assumes they must be the > same), which is of course wrong. > > I'm attaching 3 versions of the patch, the first one I've > bootstrapped/regtested on x86_64-linu

Re: [PATCH][expmed] Calculate mult-by-const cost properly in mult_by_coeff_cost

2015-04-15 Thread Kyrill Tkachov
On 15/04/15 16:41, Jeff Law wrote: On 04/14/2015 02:07 AM, Kyrill Tkachov wrote: Hi Jeff, Thanks for looking at this. On 13/04/15 19:18, Jeff Law wrote: On 03/16/2015 04:12 AM, Kyrill Tkachov wrote: Hi all, Eyeballing the mult_by_coeff_cost function I think it has a typo/bug. It's supposed

Re: [PATCH][expmed] Calculate mult-by-const cost properly in mult_by_coeff_cost

2015-04-15 Thread Jeff Law
On 04/14/2015 02:07 AM, Kyrill Tkachov wrote: Hi Jeff, Thanks for looking at this. On 13/04/15 19:18, Jeff Law wrote: On 03/16/2015 04:12 AM, Kyrill Tkachov wrote: Hi all, Eyeballing the mult_by_coeff_cost function I think it has a typo/bug. It's supposed to return the cost of multiplying by

Re: [PATCH v2] libgcc: Use braces instead of macro's empty body to avoid xgcc warnings.

2015-04-15 Thread Jeff Law
This patch was originally from Chen Gang S. However, his address at sunrus.com.cn bounces. So presumably he didn't get the approved message. I'm checking in the patch for him (with the fixed ChangeLog). I've verified by hand that the warning goes away with a cross toolchain and that it do

[PATCH][ARM][cleanup] Use IN_RANGE more often

2015-04-15 Thread Kyrill Tkachov
Hi all, This patch goes through the arm backend and replaces expressions of the form a >= lo && a <= hi with IN_RANGE (a, lo, hi) which is that tiny bit smaller and easier to read in my opinion. I guess there's also a chance it might make things infinitesimally faster since IN_RANGE evaluates 'a'

Re: [PATCH] libstdc++: Fix exceptions being generated when compiling with -fno-exceptions

2015-04-15 Thread Jonathan Wakely
On 15/04/15 11:15 -0300, Federico Lenarduzzi wrote: The idea of this patch is that using this function not depends from a configuration flag but depends of a flag which participates in the selection of the correct multilib. OK, then I agree it's better to make it conditional on __cpp_exceptions

Re: libgomp nvptx plugin: rework initialisation and support the proposed load/unload hooks (was: Merge current set of OpenACC changes from gomp-4_0-branch)

2015-04-15 Thread Dominique Dhumieres
> (Not asking for review just yet, JFYI.) This is not a review! but the patch fixes PR65742. Dominique

Re: [PATCH] libstdc++: Fix exceptions being generated when compiling with -fno-exceptions

2015-04-15 Thread Federico Lenarduzzi
Thanks for comments. I forgot to mention that this change came of working with the target fragment file for the generation of libraries with and without exceptions. After that, the choice of the multilibs with or without exceptions will depend on the use the -fno-excepcions flag at the moment of c

[PING][PATCH][PR65443] Add transform_to_exit_first_loop_alt

2015-04-15 Thread Tom de Vries
On 03-04-15 14:39, Tom de Vries wrote: On 27-03-15 15:10, Tom de Vries wrote: Hi, this patch fixes PR65443, a todo in the parloops pass for function transform_to_exit_first_loop: ... TODO: the common case is that latch of the loop is empty and immediately follows the loop exit. In this

[PR65637][PATCH][3/3] Handle 2 preds for fin_bb in expand_omp_for_static_chunk

2015-04-15 Thread Tom de Vries
On 15-04-15 15:10, Tom de Vries wrote: Hi, This patch series fixes PR65637. Currently, ssa-handling code in expand_omp_for_static_chunk is dead and not exercised by testing. Ssa-handling code in omp-low.c is only triggered by pass_parallelize_loops, and that pass doesn't specify a chunk size o

Re: [C++ Patch] Emit error + inform for access control issues

2015-04-15 Thread Jason Merrill
Sorry, thought I had responded to this. OK. Jason

RFA: RL78: Add support for G13 and G14 multiply and divide

2015-04-15 Thread Nick Clifton
Hi DJ, The attached patch adds support for the RL78 divide and modulus capabilities (both as an instruction in G14 cores and as a hardware peripheral in G13 cores). It also updates the multiply patterns to add clobbers of the AX and BC registers, which helps fix some reload problems wit

[PR65637][PATCH][2/3] Fix inner loop phi in expand_omp_for_static_chunk

2015-04-15 Thread Tom de Vries
On 15-04-15 15:10, Tom de Vries wrote: Hi, This patch series fixes PR65637. Currently, ssa-handling code in expand_omp_for_static_chunk is dead and not exercised by testing. Ssa-handling code in omp-low.c is only triggered by pass_parallelize_loops, and that pass doesn't specify a chunk size o

[PR65637][PATCH][1/3] Fix gcc_assert in expand_omp_for_static_chunk

2015-04-15 Thread Tom de Vries
On 15-04-15 15:10, Tom de Vries wrote: Hi, This patch series fixes PR65637. Currently, ssa-handling code in expand_omp_for_static_chunk is dead and not exercised by testing. Ssa-handling code in omp-low.c is only triggered by pass_parallelize_loops, and that pass doesn't specify a chunk size o

[PR65637] Fix ssa-handling code in expand_omp_for_static_chunk

2015-04-15 Thread Tom de Vries
Hi, This patch series fixes PR65637. Currently, ssa-handling code in expand_omp_for_static_chunk is dead and not exercised by testing. Ssa-handling code in omp-low.c is only triggered by pass_parallelize_loops, and that pass doesn't specify a chunk size on the GIMPLE_OMP_FOR it constructs, s

Re: Teach vrp that THIS pointer and references are non-zero

2015-04-15 Thread Jason Merrill
Yep, looks good. Jason

Re: C++ PATCH to prune dead code in constexpr.c

2015-04-15 Thread Jason Merrill
On 04/15/2015 08:34 AM, Marek Polacek wrote: Since r217664 use_new_call is always defined to true, which allows us to remove a bit of dead code. But maybe you'd prefer to keep that #define, I don't know. Bootstrapped/regtested on x86_64-linux, ok for trunk? Now that we're branched, OK. Jason

Re: patch for PR65729

2015-04-15 Thread Yvan Roux
Hi, On 14 April 2015 at 17:36, Vladimir Makarov wrote: > On 04/14/2015 04:11 AM, Jakub Jelinek wrote: >> >> On Tue, Apr 14, 2015 at 10:08:24AM +0200, Yvan Roux wrote: >>> >>> --- a/gcc/lra-constraints.c >>> +++ b/gcc/lra-constraints.c >>> @@ -1656,8 +1656,7 @@ prohibited_class_reg_set_mode_p (enu

C++ PATCH to prune dead code in constexpr.c

2015-04-15 Thread Marek Polacek
Since r217664 use_new_call is always defined to true, which allows us to remove a bit of dead code. But maybe you'd prefer to keep that #define, I don't know. Bootstrapped/regtested on x86_64-linux, ok for trunk? 2015-04-15 Marek Polacek * constexpr.c (use_new_call): Remove #define.

Re: [AArch64][PR65139] use clobber with match_scratch for aarch64_lshr_sisd_or_int_3

2015-04-15 Thread Jakub Jelinek
On Wed, Apr 15, 2015 at 01:18:36PM +0100, Richard Earnshaw wrote: > On 14/04/15 22:41, Kugan wrote: > >This patch uses clobber with match_scratch instead of earlyclobber for > >aarch64_lshr_sisd_or_int_3 so that RA can have more freedom in > >selecting suitable register, as discussed in > >http://t

Fwd: [PATCH][PR rtl-optimization/42522] Incorrect simplification of ZERO_EXTRACT and SIGN_EXTRACT by cse

2015-04-15 Thread Jeff Law
I've bootstrapped and regression tested this patch on x86_64-linux-gnu and committed it to the trunk. The bug is latent on the reported target (m68k), so no testcase. Forwarded Message Subject: [PATCH][PR rtl-optimization/42522] Incorrect simplification of ZERO_EXTRACT and

Re: [AArch64][PR65139] use clobber with match_scratch for aarch64_lshr_sisd_or_int_3

2015-04-15 Thread Richard Earnshaw
On 14/04/15 22:41, Kugan wrote: This patch uses clobber with match_scratch instead of earlyclobber for aarch64_lshr_sisd_or_int_3 so that RA can have more freedom in selecting suitable register, as discussed in http://thread.gmane.org/gmane.comp.gcc.patches/336162 and reported in https://gcc.gnu.

Re: [AArch64][PR65139] use clobber with match_scratch for aarch64_lshr_sisd_or_int_3

2015-04-15 Thread Maxim Kuvyrkov
> On Apr 15, 2015, at 12:41 AM, Kugan wrote: > > This patch uses clobber with match_scratch instead of earlyclobber for > aarch64_lshr_sisd_or_int_3 so that RA can have more freedom in > selecting suitable register, as discussed in > http://thread.gmane.org/gmane.comp.gcc.patches/336162 and repor

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread Maxim Kuvyrkov
> On Apr 15, 2015, at 2:18 PM, James Greenhalgh > wrote: > > On Wed, Apr 15, 2015 at 11:45:36AM +0100, Kugan wrote: >>> There are two ways I see that we could clean things up, both of which >>> require some reworking of your patch. >>> >>> Either we remove my check above and teach the RTX costs

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread Kugan
On 15/04/15 21:18, James Greenhalgh wrote: > On Wed, Apr 15, 2015 at 11:45:36AM +0100, Kugan wrote: >>> There are two ways I see that we could clean things up, both of which >>> require some reworking of your patch. >>> >>> Either we remove my check above and teach the RTX costs how to properly >

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread James Greenhalgh
On Wed, Apr 15, 2015 at 11:45:36AM +0100, Kugan wrote: > > There are two ways I see that we could clean things up, both of which > > require some reworking of your patch. > > > > Either we remove my check above and teach the RTX costs how to properly > > cost vector operations, or we fix my check

Re: [PR65768] Check rtx_cost when propagating constant

2015-04-15 Thread Richard Biener
On Wed, Apr 15, 2015 at 11:05 AM, Steven Bosscher wrote: > On Wed, Apr 15, 2015 at 9:53 AM, Kugan wrote: >> 2015-04-15 Kugan Vivekanandarajah < > >> Zhenqiang Chen <> >> >> PR target/65768 >> * cprop.c (try_replace_reg): Check cost of constants before >> propagating

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread Kyrill Tkachov
On 15/04/15 12:05, James Greenhalgh wrote: On Wed, Apr 15, 2015 at 11:14:11AM +0100, Kyrill Tkachov wrote: On 15/04/15 10:25, James Greenhalgh wrote: On Tue, Apr 14, 2015 at 11:08:55PM +0100, Kugan wrote: Now that Stage1 is open, is this OK for trunk. Hi Kugan, diff --git a/gcc/config/aarc

Re: [PATCH, PR target/65103, 2/3] Propagate address constants into loops for i386

2015-04-15 Thread Ilya Enkovich
2015-04-14 8:22 GMT+03:00 Jeff Law : > On 03/15/2015 02:30 PM, Richard Sandiford wrote: >> >> Ilya Enkovich writes: >>> >>> This patch allows propagation of loop invariants for i386 if propagated >>> value is a constant to be used in address operand. Bootstrapped and >>> tested on x86_64-unknown-

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread James Greenhalgh
On Wed, Apr 15, 2015 at 11:14:11AM +0100, Kyrill Tkachov wrote: > > On 15/04/15 10:25, James Greenhalgh wrote: > > On Tue, Apr 14, 2015 at 11:08:55PM +0100, Kugan wrote: > >> Now that Stage1 is open, is this OK for trunk. > > Hi Kugan, > > > >> diff --git a/gcc/config/aarch64/aarch64.c b/gcc/confi

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread Kugan
On 15/04/15 19:25, James Greenhalgh wrote: > On Tue, Apr 14, 2015 at 11:08:55PM +0100, Kugan wrote: >> Now that Stage1 is open, is this OK for trunk. > > Hi Kugan, > >> diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c >> index cba3c1a..d6ad0af 100644 >> --- a/gcc/config/

Ping^2 : [PATCH] [gcc, combine] PR46164: Don't combine the insns if a volatile register is contained.

2015-04-15 Thread Hale Wang
Ping for trunk? Hale > -Original Message- > From: Richard Sandiford [mailto:rdsandif...@googlemail.com] > Sent: Friday, February 27, 2015 4:04 AM > To: Terry Guo > Cc: Segher Boessenkool; Richard Sandiford; GCC Patches; Hale Wang > Subject: Re: Ping : [PATCH] [gcc, combine] PR46164: Don't

RE: [patch,avr]: Part2: Fix various problems with specs and specs file generation.

2015-04-15 Thread Sivanupandi, Pitchumani
> -Original Message- > From: gcc-patches-ow...@gcc.gnu.org [mailto:gcc-patches- > ow...@gcc.gnu.org] On Behalf Of Sivanupandi, Pitchumani > Sent: Thursday, April 09, 2015 6:26 PM > To: Georg-Johann Lay; Denis Chertykov > Cc: GCC Patches; Joerg Wunsch; Selvaraj, Senthil_Kumar > Subject: RE:

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread Kyrill Tkachov
On 15/04/15 10:25, James Greenhalgh wrote: On Tue, Apr 14, 2015 at 11:08:55PM +0100, Kugan wrote: Now that Stage1 is open, is this OK for trunk. Hi Kugan, diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c index cba3c1a..d6ad0af 100644 --- a/gcc/config/aarch64/aarch64.c

RFA: Updated gcc-5 html documentation for new RX option

2015-04-15 Thread Nicholas Clifton
Hi Gerald, The attached patch updates the gcc html documentation to mention the new RX command line option that I checked in today. Is this patch OK to apply ? Cheers Nick Index: htdocs/gcc-5/changes.html === RCS file: /cvs

Re: [PATCH] Fix IPA-ICF wrong-code with GIMPLE_PREDICT (PR ipa/65765)

2015-04-15 Thread Richard Biener
On Wed, 15 Apr 2015, Jakub Jelinek wrote: > Hi! > > When ICF encounteres a GIMPLE_PREDICT (as in the testcase) or GIMPLE_NOP, > it stops looking at further statements in the bb (assumes they must be the > same), which is of course wrong. > > I'm attaching 3 versions of the patch, the first one I

Re: Fail to compile trunk

2015-04-15 Thread Jakub Jelinek
On Tue, Apr 14, 2015 at 06:14:50PM +0200, Andreas Schwab wrote: > Please try this patch: I've tested your patch on x86_64-linux (both normal configure invocation and the bogus ./configure) and committed to trunk and 5 branch as obvious. 2015-04-15 Andreas Schwab PR bootstrap/65763

Re: [AArch64][PR65375] Fix RTX cost for vector SET

2015-04-15 Thread James Greenhalgh
On Tue, Apr 14, 2015 at 11:08:55PM +0100, Kugan wrote: > Now that Stage1 is open, is this OK for trunk. Hi Kugan, > diff --git a/gcc/config/aarch64/aarch64.c b/gcc/config/aarch64/aarch64.c > index cba3c1a..d6ad0af 100644 > --- a/gcc/config/aarch64/aarch64.c > +++ b/gcc/config/aarch64/aarch64.c >

[PATCH] Fix IPA-ICF wrong-code with GIMPLE_PREDICT (PR ipa/65765)

2015-04-15 Thread Jakub Jelinek
Hi! When ICF encounteres a GIMPLE_PREDICT (as in the testcase) or GIMPLE_NOP, it stops looking at further statements in the bb (assumes they must be the same), which is of course wrong. I'm attaching 3 versions of the patch, the first one I've bootstrapped/regtested on x86_64-linux and i686-linux

Re: [PR65768] Check rtx_cost when propagating constant

2015-04-15 Thread Steven Bosscher
On Wed, Apr 15, 2015 at 9:53 AM, Kugan wrote: > 2015-04-15 Kugan Vivekanandarajah < > > Zhenqiang Chen <> > > PR target/65768 > * cprop.c (try_replace_reg): Check cost of constants before > propagating. > + > + /* For CONSTANT_P (to), loop2_invariant pass might ho

Re: [C++ Patch] Emit error + inform for access control issues

2015-04-15 Thread Paolo Carlini
Hi, On 04/07/2015 05:19 PM, Paolo Carlini wrote: ... thus I prepared the below. I tried to minimize the diagnostic changes but a few more testcases needed tweaking anyway. Is this version Ok for the trunk? https://gcc.gnu.org/ml/gcc-patches/2015-04/msg00260.html Thanks, Paolo.

Re: [C++ Patch] PR 65340

2015-04-15 Thread Paolo Carlini
Hi, On 04/15/2015 03:31 AM, Jason Merrill wrote: Agreed, let's defer this until stage 1. I note that it's now stage 1. :) There are various places in the compiler that error and continue if tf_error is set, but return error_mark_node immediately if not; it seems reasonable to follow that pa

Re: [PATCH][doc] Update __sync builtins, preferring __atomics.

2015-04-15 Thread Matthew Wahab
Committed with a typo-fix in the text, /an list/a list/, and in the change log /details about implementation/details about the implementation/. 2015-04-14 Matthew Wahab * doc/extend.texi (__sync Builtins): Simplify some text. Update details about the implementation. Make cle

Re: [ARM][PR65768] Keep constants in register when expanding

2015-04-15 Thread Kugan
On 15/04/15 18:21, Kyrill Tkachov wrote: > Hi Kugan, > > On 15/04/15 08:48, Kugan wrote: >> As mentioned in PR65768, ARM gcc generates suboptimal code for constant >> Uses in loop. Part of the reason is that ARM back-end is splitting >> constants during expansion of RTL, making it hard for the R

Re: [ARM][PR65768] Keep constants in register when expanding

2015-04-15 Thread Kyrill Tkachov
Hi Kugan, On 15/04/15 08:48, Kugan wrote: As mentioned in PR65768, ARM gcc generates suboptimal code for constant Uses in loop. Part of the reason is that ARM back-end is splitting constants during expansion of RTL, making it hard for the RTL optimization passes to optimize it. Zhenqiang posted

Re: [fortran] New version of matmul inline patch

2015-04-15 Thread Tobias Burnus
Hello Thomas, first, thanks for working on an inline version of matmul. (I wonder whether there is a PR which would be fixed by it; presumably yes. Secondly, I wonder whether we then still need the version in the library; if not, can you when the final patch is in update https://gcc.gnu.org/wiki/

[PR65768] Check rtx_cost when propagating constant

2015-04-15 Thread Kugan
As mentioned in PR65768, ARM gcc generates suboptimal code for constant Uses in loop. Part of the reason is cprop is undoing what loop invariant code motion did. Zhenqiang posted a patch at to fix this based on rtx costs: https://gcc.gnu.org/ml/gcc-patches/2014-06/msg01321.html I cleaned it up an

[ARM][PR65768] Keep constants in register when expanding

2015-04-15 Thread Kugan
As mentioned in PR65768, ARM gcc generates suboptimal code for constant Uses in loop. Part of the reason is that ARM back-end is splitting constants during expansion of RTL, making it hard for the RTL optimization passes to optimize it. Zhenqiang posted a patch at https://gcc.gnu.org/ml/gcc-patches

Commit: RX: Add option to disable string instructions.

2015-04-15 Thread Nick Clifton
Hi Guys, I am applying the attached patch to the RX backend. It adds a new command line option -mno-allow-string-insns which stops the compiler from using any of the RX string instructions (SMOVF, SUNTIL, etc). These instructions are problematic because they are unsafe if used in the RX

Re: [v3] Ignore elfdump warnings in scripts/extract_symvers.pl

2015-04-15 Thread Richard Biener
On Tue, 14 Apr 2015, Jonathan Wakely wrote: > On 14 April 2015 at 13:59, Rainer Orth wrote: > > Bootstrapped without regressions on i386-pc-solaris2.1[01] and > > sparc-sun-solaris2.1[01] (with as/ld, gas/gld) on both mainline and > > gcc-5 branch. Ok for mainline and gcc-5 branch? I suppose the