[Patch, Fortran] PR57697 - Fix an issue with defined assignment

2013-09-09 Thread Tobias Burnus
Dear all, in Fortran 2003, it can happen that for an intrinisic assignment of a derived type, the component fits to a defined assignment; in that case, the latter is invoked. gfortran implements this since GCC 4.8 (December). However, it turned out that the current algorithm doesn't work if t

Re: [patch] Remove unused macro and functions from tree-flow.h and tree-flow-inline.h

2013-09-09 Thread Jakub Jelinek
On Mon, Sep 09, 2013 at 08:39:16PM -0600, Jeff Law wrote: > On 09/09/2013 06:59 PM, Andrew MacLeod wrote: > >Whilst poking around, I discovered these hast table functions and the > >macro are no longer used anywhere in the compiler. > >bootstraps on x86_64-unknown-linux-gnu. > >Probably obvious but

Re: Dump framework newline cleanup

2013-09-09 Thread Xinliang David Li
looks fine to me. In the long run, I wonder if the machinery in diagnostic messages can be reused for opt-info dumping -- i.e., support different streams. It has many nice features including %qD specifier for printing tree decls. David On Mon, Sep 9, 2013 at 12:01 PM, Teresa Johnson wrote: > I'

Re: [ping][PATCH][1 of 2] Add value range info to SSA_NAME for zero sign extension elimination in RTL

2013-09-09 Thread Kugan
On 09/09/13 19:01, Richard Biener wrote: On Mon, Sep 9, 2013 at 1:09 AM, Kugan wrote: On 06/09/13 16:16, Richard Biener wrote: On 9/3/13 2:15 PM, Kugan wrote: Thanks Richard for reviewing. On 02/09/13 22:15, Richard Biener wrote: On Wed, Jul 3, 2013 at 2:25 PM, Kugan wrote: On 17/06/

Re: [patch] Remove unused macro and functions from tree-flow.h and tree-flow-inline.h

2013-09-09 Thread Jeff Law
On 09/09/2013 06:59 PM, Andrew MacLeod wrote: Whilst poking around, I discovered these hast table functions and the macro are no longer used anywhere in the compiler. bootstraps on x86_64-unknown-linux-gnu. Probably obvious but in case I missed something... OK? If they're unused, eliminate them

Re: [PATCH] Fixing improper conversion from sin() to sinf() in optimization mode.

2013-09-09 Thread Cong Hou
On Mon, Sep 9, 2013 at 6:26 PM, Xinliang David Li wrote: > On Fri, Sep 6, 2013 at 3:24 PM, Cong Hou wrote: >> First, thank you for your detailed comments again! Then I deeply >> apologize for not explaining my patch properly and responding to your >> previous comment. I didn't understand thorough

[PATCH V4 1/2] Support lambda templates.

2013-09-09 Thread Adam Butcher
* parser.c (cp_parser_lambda_declarator_opt): Accept template parameter list with std=c++1y or std=gnu++1y. (cp_parser_lambda_body): Don't call 'expand_or_defer_fn' for lambda call operator template to avoid adding template result to symbol table. * lambda.c

V4 Lambda templates and implicit function templates.

2013-09-09 Thread Adam Butcher
Hi Jason, Here's the latest patch set; reduced to two patches now. Remaining issues: - Instantiation of generic conversion op ICEs if the call op contains declarations and hasn't already been instantiated. - Still haven't figured out a clean way to make 'auto...' work. Cheers, Adam Patch s

[PATCH V4 2/2] Support using 'auto' in a function parameter list to introduce an implicit template parameter.

2013-09-09 Thread Adam Butcher
* cp-tree.h (type_uses_auto_or_concept): Declare. (is_auto_or_concept): Declare. * decl.c (grokdeclarator): Allow 'auto' parameters in lambdas with -std=gnu++1y or -std=c++1y or, as a GNU extension, in plain functions. * type-utils.h: New header defining ...

Re: [PATCH] Fixing improper conversion from sin() to sinf() in optimization mode.

2013-09-09 Thread Xinliang David Li
On Fri, Sep 6, 2013 at 3:24 PM, Cong Hou wrote: > First, thank you for your detailed comments again! Then I deeply > apologize for not explaining my patch properly and responding to your > previous comment. I didn't understand thoroughly the problem before > submitting the patch. > > Previously I

[patch] Remove unused macro and functions from tree-flow.h and tree-flow-inline.h

2013-09-09 Thread Andrew MacLeod
Whilst poking around, I discovered these hast table functions and the macro are no longer used anywhere in the compiler. bootstraps on x86_64-unknown-linux-gnu. Probably obvious but in case I missed something... OK? Andrew * hash-table.h: Remove comment relating to deleted macro. * tree-flo

[PATCH v2 4/6] Remove symtab_node and const_symtab_node typedefs.

2013-09-09 Thread David Malcolm
gcc/ * ipa-ref.h (symtab_node): Remove typedef to pointer type, as it clashes with the preferred name for the base class. (const_symtab_node): Remove redundant typedef. --- gcc/ipa-ref.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/gcc/ipa-ref.h b/gcc/ipa-ref.h ind

Re: crash fix for unhanded operation

2013-09-09 Thread Mike Stump
On Sep 9, 2013, at 3:48 PM, "Joseph S. Myers" wrote: > On Mon, 9 Sep 2013, Mike Stump wrote: > >> Presently gcc just dies with a crash for an unhanded operation, the >> below handles it better. >> >> I'm torn between sorry and error, error might be better. Thoughts? > > error means there is s

Re: crash fix for unhanded operation

2013-09-09 Thread Joseph S. Myers
On Mon, 9 Sep 2013, Mike Stump wrote: > Presently gcc just dies with a crash for an unhanded operation, the > below handles it better. > > I'm torn between sorry and error, error might be better. Thoughts? error means there is something wrong with the user's source code, and should generally

crash fix for unhanded operation

2013-09-09 Thread Mike Stump
Presently gcc just dies with a crash for an unhanded operation, the below handles it better. I'm torn between sorry and error, error might be better. Thoughts? Ok? diff --git a/gcc/expmed.c b/gcc/expmed.c index a83d549..127085f 100644 --- a/gcc/expmed.c +++ b/gcc/expmed.c @@ -4954,6 +4954,12 @

[Patch, Fortran, committed] invoke.texi - add a missing hyphen

2013-09-09 Thread Tobias Burnus
Committed as obvious, Rev. 202416 Tobias Index: ChangeLog === --- ChangeLog (Revision 202415) +++ ChangeLog (Arbeitskopie) @@ -1,3 +1,7 @@ +2013-09-09 Tobias Burnus + + * invoke.texi (Error and Warning Options): Add hyphen. + 201

[PATCH v2 3/6] Split symtab_node declarations onto multiple lines

2013-09-09 Thread David Malcolm
Amongst other things, the rename_symtab.py script converts "symtab_node" to "symtab_node *". This will lead to broken code on declarations that declare more than one variable (only the first would get a "*"), so split up such declarations. gcc/ * cgraphunit.c (analyze_functions): Split sy

Re: PATCH: PR other/58374: Wrong target check in configure.ac in libvtv

2013-09-09 Thread Caroline Tice
The patch looks good to me, but somebody else needs to approve it. -- Caroline Tice cmt...@google.com On Mon, Sep 9, 2013 at 11:48 AM, H.J. Lu wrote: > configure.tgt in libvtv only recognizes canonical targets. This patch > moves the VTV_SUPPORTED check after AC_CANONICAL_SYSTEM for targets > l

[PATCH v2 0/6] Port symtab/cgraph/varpool nodes to use C++ inheritance; rename types.

2013-09-09 Thread David Malcolm
Here's version 2 of this patch series. This is now 6 patches. The first two patches correspond to the two patches from the original patch series (and must both be applied together to make sense). They convert cgraph_node and varpool_node to inherit from symtab_node_base, eliminating union symtab

Re: [PATCH][RFC] Move IVOPTs closer to RTL expansion

2013-09-09 Thread Steven Bosscher
On Mon, Sep 9, 2013 at 10:01 AM, Richard Biener wrote: >> >> First, the loop passes that at the moment preceede IVOPTs leave >> >> around IL that is in desparate need of basic re-optimization >> >> like CSE, constant propagation and DCE. That puts extra load >> >> on IVOPTs and its cost model, inc

Re: operator new returns nonzero

2013-09-09 Thread Marc Glisse
I have now tested bootstrap+testsuite and there was no regression. 2013-09-07 Marc Glisse PR c++/19476 gcc/ * fold-const.c (tree_expr_nonzero_warnv_p): Handle operator new. * tree-vrp.c (gimple_stmt_nonzero_warnv_p, stmt_interesting_for_vrp): Likewise.

Re: [PATCH] Handle target specific memory models in C frontend

2013-09-09 Thread Richard Henderson
On 08/10/2013 12:40 PM, Andi Kleen wrote: > On Fri, Nov 09, 2012 at 07:08:07AM -0800, Richard Henderson wrote: >> On 2012-11-09 07:03, Andi Kleen wrote: >>> PR55139 >>> * c-common.c (get_atomic_generic_size): Mask with >>> MEMMODEL_MASK >> >> Ok. > > I would like to backport this p

[PATCH v2 6/6] Update hand-written GTY routines for type renaming

2013-09-09 Thread David Malcolm
* cgraph.c (gt_ggc_mx): Update for renaming of symtab_node_base to symtab_node (gt_pch_nx): Likewise. --- gcc/cgraph.c | 24 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/gcc/cgraph.c b/gcc/cgraph.c index bb2626d..abbffa1 100644 --

Re: operator new returns nonzero

2013-09-09 Thread Gabriel Dos Reis
On Mon, Sep 9, 2013 at 12:54 PM, Mike Stump wrote: > On Sep 9, 2013, at 10:25 AM, Gabriel Dos Reis > wrote: >> On Mon, Sep 9, 2013 at 11:16 AM, Mike Stump wrote: >>> You've failed to understand g++. Please seek to understand the compiler, >>> before you weigh in. >> >> Gee Mike, see a medical

[PATCH v2 2/6] Automated conversion of symtab to class hierarchy

2013-09-09 Thread David Malcolm
This patch is 439KB in size, so to avoid mailing-list limitations I've uploaded it to: http://dmalcolm.fedorapeople.org/gcc/large-patches/fd607e77883b8d3f8fb7c8091d0626dbbd31b9a5-0002-Automated-conversion-of-symtab-to-class-hierarchy.patch ChangeLog entry and diffstat follow: gcc/ Patch

[PATCH v2 1/6] Convert symtab, cgraph and varpool nodes into a real class hierarchy

2013-09-09 Thread David Malcolm
This patch is the handwritten part of the conversion of these types to C++; it requires the followup patch, which is autogenerated. It converts: struct GTY(()) symtab_node_base to: class GTY((user)) symtab_node_base and converts: struct GTY(()) cgraph_node to: struct GTY((user)) cgraph_no

Re: RFC: patch to build GCC for arm with LRA

2013-09-09 Thread Richard Sandiford
Yvan Roux writes: > Thanks for noticing it Richard, I made a refactoring mistake and addr > was supposed to be used instead of x. In fact on AArch64 it occurs > that we don't have stripped rtxes at this step and we have some of the > form below, this if why I added the strip. > > (insn 29 27 5 7

Re: [c++-concepts] pretty print fix

2013-09-09 Thread Gabriel Dos Reis
Andrew Sutton writes: | The last merge didn't compile for me. Apparently some pretty printing | functions have disappeared that were being called in the concept | stuff. This patch just replaces the broken calls to pp_cxx_type_id | with pp->type_id. | | Ok to commit? yes, please. Sorry for tha

PATCH: PR other/58374: Wrong target check in configure.ac in libvtv

2013-09-09 Thread H.J. Lu
configure.tgt in libvtv only recognizes canonical targets. This patch moves the VTV_SUPPORTED check after AC_CANONICAL_SYSTEM for targets like i686-linux or x86_64-linux. OK to install? Thanks. H.J. --- diff --git a/libvtv/ChangeLog b/libvtv/ChangeLog index 20092f4..3c344f9 100644 --- a/libvtv

Re: patch to make wide-int assume that everything is canonical beyond the precision?

2013-09-09 Thread Richard Sandiford
Kenneth Zadeck writes: > + int blocks_needed = (precision + HOST_BITS_PER_WIDE_INT - 1) / > HOST_BITS_PER_WIDE_INT; Watch out for the long lines. There are several others in the patch too. You'll need to clean up the existing ones before the merge :-) > +case CONST_WIDE_INT: > + len

Re: operator new returns nonzero

2013-09-09 Thread Gabriel Dos Reis
On Mon, Sep 9, 2013 at 11:16 AM, Mike Stump wrote: > You've failed to understand g++. Please seek to understand the compiler, > before you weigh in. Gee Mike, see a medical assistance for your and our benefits. -- Gaby

Re: operator new returns nonzero

2013-09-09 Thread Mike Stump
On Sep 9, 2013, at 10:25 AM, Gabriel Dos Reis wrote: > On Mon, Sep 9, 2013 at 11:16 AM, Mike Stump wrote: >> You've failed to understand g++. Please seek to understand the compiler, >> before you weigh in. > > Gee Mike, see a medical assistance for your and our benefits. Seems overly hostile

[PATCH][ARM] Improve cond_exec opportunities for immediate shifts for -mrestrict-it

2013-09-09 Thread Kyrylo Tkachov
Hi all, Shift operations with an immediate can generate a 16-bit encoding when the immediate is 5-bit wide, i.e. in the range [0-31]. Therefore we can use them in IT blocks even with the -mrestrict-it rules. I decided to reuse the "N" constraint with a slight modification by removing the !TARGET_

Re: operator new returns nonzero

2013-09-09 Thread Mike Stump
On Sep 7, 2013, at 2:00 PM, Marc Glisse wrote: > @@ -16171,21 +16171,31 @@ tree_expr_nonzero_warnv_p (tree t, bool > + if (TREE_CODE (fndecl) != FUNCTION_DECL) return false; > + if (!flag_check_new > + && DECL_IS_OPERATOR_NEW (fndecl) > + && !TREE_NOTHROW (fndecl)) > +

patch to make wide-int assume that everything is canonical beyond the precision?

2013-09-09 Thread Kenneth Zadeck
i still have more testing to go on this but it seems to be ok.my current problem is that the branch seems to have a fair number of failures so i want to get that cleaned up before i do further testing and commit this. I left the old rtl constructor ifdefed out. We are likely to want them

Re: Fwd: [PATCH] Scheduling result adjustment to enable macro-fusion

2013-09-09 Thread Wei Mi
Add a testcase. bootstrap and regression ok for the patch in last mail. 2013-09-09 Wei Mi * gcc/testsuite/gcc.dg/macro-fusion-1.c: New. Index: gcc/testsuite/gcc.dg/macro-fusion-1.c === --- gcc/testsuite/gcc.dg/macro-fusio

Avoid g++.dg/template/cond2.C fail

2013-09-09 Thread Paolo Carlini
Hi, thus the below is what I actually tested on x86_64-linux. I think we discuss already most of it. Thanks! Paolo. 2013-09-09 Jan Hubicka Paolo Carlini * cgraphunit.c (analyze_functions): Save input_location, set it to UNKNOWN_LOCATION a

Re: [PATCH i386 2/8] [AVX512] Add mask registers.

2013-09-09 Thread Richard Henderson
On 08/29/2013 04:59 AM, Kirill Yukhin wrote: > @@ -7616,10 +7677,10 @@ >[(set_attr "type" "alu") > (set_attr "mode" "SI")]) > > -(define_insn "*andhi_1" > - [(set (match_operand:HI 0 "nonimmediate_operand" "=rm,r,Ya") > - (and:HI (match_operand:HI 1 "nonimmediate_operand" "%0,0,qm")

RE: [PATCH GCC]Catch more MEM_REFs sharing common addressing part in gimple strength reduction

2013-09-09 Thread Bill Schmidt
On Mon, 2013-09-09 at 10:20 -0500, Bill Schmidt wrote: > On Mon, 2013-09-09 at 14:25 +0800, bin.cheng wrote: > > Thanks for reviewing, I will correct all stupid spelling problem in the > > next version of patch. > > > > On Mon, Sep 9, 2013 at 8:15 AM, Bill Schmidt > > wrote: > > > > > >>>+

Re: [PATCH] Fix init_range_entry (PR tree-optimization/58364)

2013-09-09 Thread Richard Biener
Jakub Jelinek wrote: >Hi! > >It is not safe to always handle a = ~b; for bool a and b as >in_p = !in_p; exp = arg0. If the current range is say >+[-,-] or -[-,-] or similar (i.e. unconditional false or true), >then the value of exp doesn't matter and thus the fact that exp >has been negated is ir

Re: operator new returns nonzero

2013-09-09 Thread Mike Stump
On Sep 7, 2013, at 1:03 PM, Marc Glisse wrote: > On Sat, 7 Sep 2013, Mike Stump wrote: > >> >> On Sep 7, 2013, at 12:37 PM, Gabriel Dos Reis >> wrote: >> >>> On Sat, Sep 7, 2013 at 2:27 PM, Marc Glisse wrote: On Sat, 7 Sep 2013, Mike Stump wrote: > On Sep 7, 2013, at 3:33 AM,

Re: operator new returns nonzero

2013-09-09 Thread Mike Stump
On Sep 7, 2013, at 5:34 PM, Gabriel Dos Reis wrote: > On Sat, Sep 7, 2013 at 2:46 PM, Mike Stump wrote: >> >> On Sep 7, 2013, at 12:37 PM, Gabriel Dos Reis >> wrote: >> >>> On Sat, Sep 7, 2013 at 2:27 PM, Marc Glisse wrote: On Sat, 7 Sep 2013, Mike Stump wrote: > On Sep 7, 20

Re: operator new returns nonzero

2013-09-09 Thread Mike Stump
On Sep 9, 2013, at 5:41 AM, Gabriel Dos Reis wrote: > On Mon, Sep 9, 2013 at 4:06 AM, Richard Biener > wrote: >> On Sat, Sep 7, 2013 at 11:00 PM, Marc Glisse wrote: >>> On Sat, 7 Sep 2013, Mike Stump wrote: >>> On Sep 7, 2013, at 12:27 PM, Marc Glisse wrote: > > Now flag_check_n

Re: [C++ PATCH] Fix -Wunused-but-set-* with delete [] (PR c++/58325)

2013-09-09 Thread Jason Merrill
OK. Jason

[C++ PATCH] Fix -Wunused-but-set-* with delete [] (PR c++/58325)

2013-09-09 Thread Jakub Jelinek
Hi! If base of delete[] has TREE_SIDE_EFFECTS, build_vec_delete calls get_target_expr on it and we never call mark_exp_read on it in the end. Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, ok for trunk/4.8? 2013-09-09 Jakub Jelinek PR c++/58325 * init.c

Re: [RS6000] Fix PR58330 powerpc64 atomic store split in two

2013-09-09 Thread David Edelsohn
On Mon, Sep 9, 2013 at 8:21 AM, Alan Modra wrote: > This patch prevents the powerpc backend from combining a 64-bit > volatile load or store with a bswap insn when the resulting combined > insn will be implemented as two lwbrx or stwbrx machine insns. > Bootstrapped and regression tested powerpc64

[PATCH] Fix init_range_entry (PR tree-optimization/58364)

2013-09-09 Thread Jakub Jelinek
Hi! It is not safe to always handle a = ~b; for bool a and b as in_p = !in_p; exp = arg0. If the current range is say +[-,-] or -[-,-] or similar (i.e. unconditional false or true), then the value of exp doesn't matter and thus the fact that exp has been negated is irrelevant. Fixed by just maki

RE: [PATCH GCC]Catch more MEM_REFs sharing common addressing part in gimple strength reduction

2013-09-09 Thread Bill Schmidt
On Mon, 2013-09-09 at 14:25 +0800, bin.cheng wrote: > Thanks for reviewing, I will correct all stupid spelling problem in the next > version of patch. > > On Mon, Sep 9, 2013 at 8:15 AM, Bill Schmidt > wrote: > > > >>>+ int (i * S). > >>>+ Otherwise, just return double int zero. */ > > > >

Re: [RS6000] powerpc64 -mcmodel=medium large symbol offsets

2013-09-09 Thread David Edelsohn
On Mon, Sep 9, 2013 at 5:07 AM, Alan Modra wrote: > Revised patch with testcase. This one also fixes a small problem with > reg_or_add_cint_operand in that any 32-bit value is valid for SImode. > Compare with reg_or_sub_cint_operand. > > Bootstrapped and regression tested powerpc64-linux. OK to

[AArch64] obvious - Fix parameter to vrsqrte_f64

2013-09-09 Thread James Greenhalgh
Hi, vrsqrte_f64 is currently defined to take a float64x2_t, but it should take a float64x1_t. I've committed the attached, obvious fix as revision 202407. James --- 2013-09-09 James Greenhalgh * config/aarch64/arm_neon.h (vrsqrte_f64): Fix parameter type. diff --git a/gcc/config/aa

[c++-concepts] pretty print fix

2013-09-09 Thread Andrew Sutton
The last merge didn't compile for me. Apparently some pretty printing functions have disappeared that were being called in the concept stuff. This patch just replaces the broken calls to pp_cxx_type_id with pp->type_id. Ok to commit? Andrew Sutton fix.patch Description: Binary data

Re: [PATCH v2 00/18] resurrect automatic dependencies

2013-09-09 Thread Tom Tromey
> "Tom" == Tom Tromey writes: Tom> This is version 3 of my series to resurrect automatic dependencies for Tom> GCC. Version 2 is here: Tom> http://gcc.gnu.org/ml/gcc-patches/2013-07/msg01386.html Tom> Ordinarily I would simply ping the existing patches, but Alexandre Tom> asked me to re

Re: [wide-int] Fix mode choice in convert_modes

2013-09-09 Thread Kenneth Zadeck
On 09/09/2013 09:56 AM, Richard Sandiford wrote: Richard Biener writes: On Mon, Sep 9, 2013 at 3:11 PM, Richard Sandiford wrote: Enabling the CONST_INT assert showed that this branch-local code was passing the wrong mode to std::make_pair. The mode of X is OLDMODE, and we're supposed to be c

Re: [PATCH 1/4] Support lambda templates.

2013-09-09 Thread Jason Merrill
On 09/09/2013 03:22 AM, Adam Butcher wrote: I've attached a patch that handles parameter packs in the conversion op. I thought it best to get this reviewed independently before rolling up into the 'Support lambda templates' patch. Do you think it's the right idea? It seems to work okay but I'v

Re: Problems with LRA for KNF/KNC in GCC 4.9

2013-09-09 Thread Vladimir Makarov
On 13-08-22 9:37 AM, Andrey Turetskiy wrote: Hi Vladimir, I'm trying to apply KNF and KNC changes for GCC 4.9 (they have been applied for 4.7 before), but I have some problems with LRA. I've tried to build cross compiler for KNC. During the compiling of libgcc/libgcc2.c the compiler becomes lock

Re: [wide-int] Fix mode choice in convert_modes

2013-09-09 Thread Richard Sandiford
Richard Biener writes: > On Mon, Sep 9, 2013 at 3:11 PM, Richard Sandiford > wrote: >> Enabling the CONST_INT assert showed that this branch-local code was >> passing the wrong mode to std::make_pair. The mode of X is OLDMODE, >> and we're supposed to be converting it to MODE. >> >> In the case

Re: [PATCH][AArch64] Fix FAIL: gcc.target/aarch64/cmn.c scan-assembler cmn\tw[0-9]

2013-09-09 Thread Richard Earnshaw
On 09/09/13 13:50, Kyrylo Tkachov wrote: > Hi Richard, > >> On 29/07/13 14:58, Kyrylo Tkachov wrote: >>> Hi all, >>> >>> Now that combine emits the canonical form for (eq (neg x) (y)) instead >> of (eq >>> (x) (neg y)), this patch fixes up the corresponding pattern in aarch64 >> to >>> match that.

Re: PR bootstrap/58340

2013-09-09 Thread Jeff Law
On 09/09/2013 03:26 AM, Gerald Pfeifer wrote: On Sun, 8 Sep 2013, Jeff Law wrote: This fixes the problem noted by Zhendong in c#4. I'll be working through other reports of issues related to the tree-ssa-threadedge.c to see if there's any lingering problems. It also fixes my original report, P

Re: [wide-int] Fix mode choice in convert_modes

2013-09-09 Thread Richard Biener
On Mon, Sep 9, 2013 at 3:11 PM, Richard Sandiford wrote: > Enabling the CONST_INT assert showed that this branch-local code was > passing the wrong mode to std::make_pair. The mode of X is OLDMODE, > and we're supposed to be converting it to MODE. > > In the case where OLDMODE is VOIDmode, I thin

Re: [C++ Patch] PR 43452

2013-09-09 Thread Jason Merrill
OK, thanks. Jason

[PATCH] Fix PR58326

2013-09-09 Thread Richard Biener
This fixes PR58326, fix_bb_placements via unloop does not properly mark all blocks with uses that are now eventually subject to loop-closed SSA handling. Fixed with the following, bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2013-09-09 Richard Biener PR mi

[wide-int] Fix mode choice in convert_modes

2013-09-09 Thread Richard Sandiford
Enabling the CONST_INT assert showed that this branch-local code was passing the wrong mode to std::make_pair. The mode of X is OLDMODE, and we're supposed to be converting it to MODE. In the case where OLDMODE is VOIDmode, I think we have to assume that every bit of the input is significant. Te

[c++-concepts] merge from trunk

2013-09-09 Thread Gabriel Dos Reis
at revision 202396. No conflict. -- Gaby

Re: [C++ diagnostic Patch] Partially fix c++/58363 and more

2013-09-09 Thread Gabriel Dos Reis
On Sun, Sep 8, 2013 at 3:26 PM, Paolo Carlini wrote: > Hi all, Gaby, > > I was having a look to c++/58363 and besides the main issue, that is we > probably want to help the user and tell him/her something about destructors, > etc, I noticed that we aren't able to pretty print the pseudo destructor

Re: [C++, diagnostic Patch] PR 58362

2013-09-09 Thread Gabriel Dos Reis
On Mon, Sep 9, 2013 at 7:49 AM, Paolo Carlini wrote: > Hi all, hi Gaby, > > thus a more sensible try at fixing this issue: > function.c:do_warn_unused_parameter uses "%q+D" for the error call. That > means that cp/error.c:cp_printer does: > > if (set_locus && t != NULL) > *text->locus = loca

PING^2: Re: [patch] implement Cilk Plus simd loops on trunk

2013-09-09 Thread Aldy Hernandez
Hi guys! PING for both C and C++. Thanks. Original Message Subject: Re: PING: Fwd: Re: [patch] implement Cilk Plus simd loops on trunk Date: Tue, 27 Aug 2013 15:03:26 -0500 From: Aldy Hernandez To: Richard Henderson CC: jason merrill , gcc-patches On 08/26/13 12:22, Rich

Re: [Patch to gcc/function] PR 58362

2013-09-09 Thread Gabriel Dos Reis
On Mon, Sep 9, 2013 at 5:41 AM, Jakub Jelinek wrote: > On Mon, Sep 09, 2013 at 12:38:46PM +0200, Paolo Carlini wrote: >> On 09/09/2013 11:37 AM, Richard Biener wrote: >> >That said, grepping for %q+D reveals quite some uses and it looks like >> >all of them expect the location being used to be tha

Re: [Patch to gcc/function] PR 58362

2013-09-09 Thread Gabriel Dos Reis
On Mon, Sep 9, 2013 at 5:38 AM, Paolo Carlini wrote: > On 09/09/2013 11:37 AM, Richard Biener wrote: >> >> That said, grepping for %q+D reveals quite some uses and it looks like >> all of them expect the location being used to be that of the decl passed >> to the diagnostic call, not some random o

Re: [Patch to gcc/function] PR 58362

2013-09-09 Thread Gabriel Dos Reis
On Mon, Sep 9, 2013 at 5:13 AM, Richard Biener wrote: > On Mon, 9 Sep 2013, Paolo Carlini wrote: > >> On 09/09/2013 12:04 PM, Richard Biener wrote: >> > On Mon, 9 Sep 2013, Jakub Jelinek wrote: >> > >> > > On Mon, Sep 09, 2013 at 11:45:08AM +0200, Richard Biener wrote: >> > > > Well, in this case

Re: [Patch to gcc/function] PR 58362

2013-09-09 Thread Gabriel Dos Reis
On Mon, Sep 9, 2013 at 5:04 AM, Richard Biener wrote: > On Mon, 9 Sep 2013, Jakub Jelinek wrote: > >> On Mon, Sep 09, 2013 at 11:45:08AM +0200, Richard Biener wrote: >> > Well, in this case the patch should IMHO be a no-op. >> > >> > - warning (OPT_Wunused_parameter, "unused parameter %q+D",

RE: [PATCH][AArch64] Fix FAIL: gcc.target/aarch64/cmn.c scan-assembler cmn\tw[0-9]

2013-09-09 Thread Kyrylo Tkachov
Hi Richard, > On 29/07/13 14:58, Kyrylo Tkachov wrote: > > Hi all, > > > > Now that combine emits the canonical form for (eq (neg x) (y)) instead > of (eq > > (x) (neg y)), this patch fixes up the corresponding pattern in aarch64 > to > > match that. This enables combine to properly generate the c

Re: [Patch to gcc/function] PR 58362

2013-09-09 Thread Gabriel Dos Reis
On Mon, Sep 9, 2013 at 4:46 AM, Jakub Jelinek wrote: > On Mon, Sep 09, 2013 at 11:45:08AM +0200, Richard Biener wrote: >> Well, in this case the patch should IMHO be a no-op. >> >> - warning (OPT_Wunused_parameter, "unused parameter %q+D", decl); >> + warning_at (DECL_SOURCE_LOCATION (de

[C++, diagnostic Patch] PR 58362

2013-09-09 Thread Paolo Carlini
Hi all, hi Gaby, thus a more sensible try at fixing this issue: function.c:do_warn_unused_parameter uses "%q+D" for the error call. That means that cp/error.c:cp_printer does: if (set_locus && t != NULL) *text->locus = location_of (t); and it's important that location_of (t) is correct

Re: operator new returns nonzero

2013-09-09 Thread Gabriel Dos Reis
On Mon, Sep 9, 2013 at 4:19 AM, Marc Glisse wrote: > On Mon, 9 Sep 2013, Richard Biener wrote: > >> On Sat, Sep 7, 2013 at 11:00 PM, Marc Glisse wrote: >>> >>> On Sat, 7 Sep 2013, Mike Stump wrote: >>> On Sep 7, 2013, at 12:27 PM, Marc Glisse wrote: > > > Now flag_check_new shou

Re: operator new returns nonzero

2013-09-09 Thread Gabriel Dos Reis
On Mon, Sep 9, 2013 at 4:06 AM, Richard Biener wrote: > On Sat, Sep 7, 2013 at 11:00 PM, Marc Glisse wrote: >> On Sat, 7 Sep 2013, Mike Stump wrote: >> >>> On Sep 7, 2013, at 12:27 PM, Marc Glisse wrote: Now flag_check_new should probably disable this optimization… >>> >>> >>> Yes, thi

Re: [c++-concepts] Class template constraints

2013-09-09 Thread Gabriel Dos Reis
Andrew Sutton writes: | Ok to commit? Attached is the doc fix patch. I'll send the TREE_TYPE | patch shortly. Yes, please -- that is what Jason earlier. Let me know when youve committed so that I can synchronize with trunk. -- Gaby

[RS6000] Fix PR58330 powerpc64 atomic store split in two

2013-09-09 Thread Alan Modra
This patch prevents the powerpc backend from combining a 64-bit volatile load or store with a bswap insn when the resulting combined insn will be implemented as two lwbrx or stwbrx machine insns. Bootstrapped and regression tested powerpc64-linux. PR target/58330 * config/rs6000/rs

Re: [c++-concepts] Class template constraints

2013-09-09 Thread Andrew Sutton
Ok to commit? Attached is the doc fix patch. I'll send the TREE_TYPE patch shortly. Andrew Andrew Sutton On Sat, Sep 7, 2013 at 1:00 PM, Jason Merrill wrote: > On 09/06/2013 12:03 PM, Andrew Sutton wrote: >> >> +// Returns the template type of the class scope being entered. If we're >> +// ente

Re: [PATCH, x86] Use vector moves in memmove expanding

2013-09-09 Thread Uros Bizjak
On Mon, Sep 9, 2013 at 12:22 PM, Michael V. Zolotukhin wrote: >> > Is mtune ok here? >> Yes. > Thanks, fixed. Ok to commit? > I verified that the test fails without fix in i386.c and passes with it. > > Changelog: > gcc: > 2013-09-09 Michael Zolotukhin > > * config/i386/i386.c (ix86_ex

Re: Simplify expmed.c:lshift_value

2013-09-09 Thread Richard Biener
On Mon, Sep 9, 2013 at 12:31 PM, Richard Sandiford wrote: > expmed.c:lshift_value has: > > val = double_int::from_uhwi (INTVAL (value)).zext (bitsize); > val = val.llshift (bitpos, HOST_BITS_PER_DOUBLE_INT); > > but its only caller has already zero-extended INTVAL (value) from BITSIZE, > so we

Re: [3/4] Using gen_int_mode instead of GEN_INT

2013-09-09 Thread Richard Biener
On Mon, Sep 9, 2013 at 12:27 PM, Richard Sandiford wrote: > Similar to patch 1, but here the calls are all to simplify_* routines. > In the 7414 combine.c hunk, the code is PLUS, AND, IOR or XOR. > In the hunk after that, the "cval |= ..." stuff is effectively doing > a trunc_int_for_mode by hand.

Re: [2/4] Using gen_int_mode instead of GEN_INT

2013-09-09 Thread Richard Biener
On Mon, Sep 9, 2013 at 12:24 PM, Richard Sandiford wrote: > Similar to patch 1, but here the calls are all to expand_* routines. > > Tested in the same way as before. OK to install? Ok. Thanks, Richard. > Thanks, > Richard > > > gcc/ > * asan.c (asan_clear_shadow): Use gen_int_mode wit

Re: [1/4] Using gen_int_mode instead of GEN_INT

2013-09-09 Thread Richard Biener
On Mon, Sep 9, 2013 at 12:21 PM, Richard Sandiford wrote: > These four patches are the result of going through gcc/* looking for > places where there was an obvious mode associated with a GEN_INT and > where gen_int_mode could therefore be used instead. Some of the GEN_INTs > did create noncanoic

Re: [4/4] Using gen_int_mode instead of GEN_INT

2013-09-09 Thread Richard Biener
On Mon, Sep 9, 2013 at 12:27 PM, Richard Sandiford wrote: > Similar to patch 1, but here the calls are involved in a SET instruction > (or equivalent) and are cases where the operand must have the same mode as > the SET destination. > > Tested in the same way as before. OK to install? Ok. Thank

Re: [PATCH i386 3/8] [AVX512] [1/n] Add AVX-512 patterns: VF iterator extended.

2013-09-09 Thread Kirill Yukhin
Hello, On 06 Sep 17:41, Kirill Yukhin wrote: > Hello, > > PING. PING. -- Thanks, K

Re: [PATCH i386 2/8] [AVX512] Add mask registers.

2013-09-09 Thread Kirill Yukhin
Hello, On 04 Sep 22:45, Kirill Yukhin wrote: > Hello, > > PING. PING. -- Thanks, K

Re: [Patch to gcc/function] PR 58362

2013-09-09 Thread Paolo Carlini
On 09/09/2013 12:44 PM, Paolo Carlini wrote: I understand that. It seems to me a much bigger project and must be done for the C front-end too (I don't know the name of the equivalent of location_of, but the location is wrong for it too, there must be the equivalent of t = DECL_CONTEXT (t) for i

Re: [Patch to gcc/function] PR 58362

2013-09-09 Thread Paolo Carlini
On 09/09/2013 12:41 PM, Jakub Jelinek wrote: On Mon, Sep 09, 2013 at 12:38:46PM +0200, Paolo Carlini wrote: On 09/09/2013 11:37 AM, Richard Biener wrote: That said, grepping for %q+D reveals quite some uses and it looks like all of them expect the location being used to be that of the decl pass

Re: [Patch to gcc/function] PR 58362

2013-09-09 Thread Jakub Jelinek
On Mon, Sep 09, 2013 at 12:38:46PM +0200, Paolo Carlini wrote: > On 09/09/2013 11:37 AM, Richard Biener wrote: > >That said, grepping for %q+D reveals quite some uses and it looks like > >all of them expect the location being used to be that of the decl passed > >to the diagnostic call, not some ra

Re: [Patch to gcc/function] PR 58362

2013-09-09 Thread Paolo Carlini
On 09/09/2013 11:37 AM, Richard Biener wrote: That said, grepping for %q+D reveals quite some uses and it looks like all of them expect the location being used to be that of the decl passed to the diagnostic call, not some random other location. If the decl is *not* a PARM_DECL, I expect %q+D to

Simplify expmed.c:lshift_value

2013-09-09 Thread Richard Sandiford
expmed.c:lshift_value has: val = double_int::from_uhwi (INTVAL (value)).zext (bitsize); val = val.llshift (bitpos, HOST_BITS_PER_DOUBLE_INT); but its only caller has already zero-extended INTVAL (value) from BITSIZE, so we might as well pass that instead of the (value, bitsize) pair. This is

Re: [C++ Patch] PR 43452

2013-09-09 Thread Paolo Carlini
Hi, On 09/09/2013 06:35 AM, Jason Merrill wrote: On 09/05/2013 06:44 PM, Paolo Carlini wrote: + && warning (0, "possible problem detected in invocation of " + "delete [] operator:")) The warning should probably be suppressible by some flag. In fact clang has such a flag - I

[4/4] Using gen_int_mode instead of GEN_INT

2013-09-09 Thread Richard Sandiford
Similar to patch 1, but here the calls are involved in a SET instruction (or equivalent) and are cases where the operand must have the same mode as the SET destination. Tested in the same way as before. OK to install? Thanks, Richard gcc/ * asan.c (asan_emit_stack_protection): Use gen_

[3/4] Using gen_int_mode instead of GEN_INT

2013-09-09 Thread Richard Sandiford
Similar to patch 1, but here the calls are all to simplify_* routines. In the 7414 combine.c hunk, the code is PLUS, AND, IOR or XOR. In the hunk after that, the "cval |= ..." stuff is effectively doing a trunc_int_for_mode by hand. Tested in the same way as before. OK to install? Thanks, Richar

[2/4] Using gen_int_mode instead of GEN_INT

2013-09-09 Thread Richard Sandiford
Similar to patch 1, but here the calls are all to expand_* routines. Tested in the same way as before. OK to install? Thanks, Richard gcc/ * asan.c (asan_clear_shadow): Use gen_int_mode with the mode of the associated expand_* call. (asan_emit_stack_protection): Likewis

Re: [PATCH, x86] Use vector moves in memmove expanding

2013-09-09 Thread Michael V. Zolotukhin
> > Is mtune ok here? > Yes. Thanks, fixed. Ok to commit? I verified that the test fails without fix in i386.c and passes with it. Changelog: gcc: 2013-09-09 Michael Zolotukhin * config/i386/i386.c (ix86_expand_movmem): Fix epilogue generation. gcc/testsuite: 2013-09-09 Michael Zolo

[1/4] Using gen_int_mode instead of GEN_INT

2013-09-09 Thread Richard Sandiford
These four patches are the result of going through gcc/* looking for places where there was an obvious mode associated with a GEN_INT and where gen_int_mode could therefore be used instead. Some of the GEN_INTs did create noncanoical rtl before, and were trapped by Kenny's assert on the wide-int b

Re: [Patch to gcc/function] PR 58362

2013-09-09 Thread Paolo Carlini
Hi, On 09/09/2013 12:13 PM, Richard Biener wrote: Everything happens via call backs. Thus from the generic diagnostic machinery, you go to cp_printer for C++, thus location_of for C++. In C is different, but again there is, evidently, a mechanism which uses DECL_CONTEXT for PARM_DECLs which lead

Re: [PATCH, x86] Use vector moves in memmove expanding

2013-09-09 Thread Uros Bizjak
On Mon, Sep 9, 2013 at 12:17 PM, Jakub Jelinek wrote: > On Mon, Sep 09, 2013 at 02:12:35PM +0400, Michael V. Zolotukhin wrote: >> > No -march in runtime tests, please. >> Is mtune ok here? > > Please verify that with the s/-march/-mtune/ change without the i386.c fix > the testcase It will fail,

Re: [PATCH, x86] Use vector moves in memmove expanding

2013-09-09 Thread Jakub Jelinek
On Mon, Sep 09, 2013 at 02:12:35PM +0400, Michael V. Zolotukhin wrote: > > No -march in runtime tests, please. > Is mtune ok here? Please verify that with the s/-march/-mtune/ change without the i386.c fix the testcase will fail with make check-gcc RUNTESTFLAGS='--target_board=unix\{-m32,-m64\}

  1   2   >