Re: Merge C++ conversion into trunk (5/6 - double_int rewrite)

2012-08-15 Thread Richard Guenther
On Wed, 15 Aug 2012, Richard Guenther wrote: On Wed, Aug 15, 2012 at 12:31 PM, Jakub Jelinek ja...@redhat.com wrote: On Wed, Aug 15, 2012 at 12:28:58PM +0200, Richard Guenther wrote: the function names make no sense - they should be talking about host-wide-ints, because that is what

Re: combine permutations in gimple

2012-08-15 Thread Richard Guenther
On Wed, Aug 15, 2012 at 1:22 PM, Marc Glisse marc.gli...@inria.fr wrote: On Mon, 13 Aug 2012, Marc Glisse wrote: I'll give it a few more days for the conversation to settle, so I know what I should do between: - the barely modified patch you accepted, - the check asked by Jakub, - the

Re: combine permutations in gimple

2012-08-15 Thread Richard Guenther
On Wed, Aug 15, 2012 at 1:56 PM, Ramana Radhakrishnan ramana.radhakrish...@linaro.org wrote: [It looks like I missed hitting the send button on this response] Seems to be one instruction shorter at least ;-) Yes, there can be much worse regressions than that because of the patch (like 40

Re: [rfc] Fix SPU build (Re: [PATCH] Remove basic_block-loop_depth)

2012-08-15 Thread Richard Guenther
On Wed, 15 Aug 2012, Ulrich Weigand wrote: Richard Guenther wrote: On Tue, 14 Aug 2012, Ulrich Weigand wrote: Looks like this broke SPU build, since spu_machine_dependent_reorg accesses -loop_depth. According to comments in the code, this was done because of concerns that loop_father

Re: combine permutations in gimple

2012-08-15 Thread Richard Guenther
On Wed, Aug 15, 2012 at 2:07 PM, Jakub Jelinek ja...@redhat.com wrote: On Wed, Aug 15, 2012 at 01:46:05PM +0200, Richard Guenther wrote: Well, we're waiting for someone to break the tie ... I'd go with the original patch, improving the backends where necessary. E.g. i?86/x86_64 with just

Re: Merge C++ conversion into trunk (0/6 - Overview)

2012-08-15 Thread Richard Guenther
On Wed, 15 Aug 2012, Diego Novillo wrote: On 12-08-15 07:59 , Richard Guenther wrote: (gdb) call debug_tree (*expr_p) integer_cst 0x7695d7c0 type integer_type 0x767fa5e8 int constant 9 (gdb) call debug_tree (0x767fa5e8) Cannot resolve function debug_tree to any

Re: combine permutations in gimple

2012-08-15 Thread Richard Guenther
On Wed, Aug 15, 2012 at 2:29 PM, Jakub Jelinek ja...@redhat.com wrote: On Wed, Aug 15, 2012 at 02:15:03PM +0200, Richard Guenther wrote: Ok. That would still leave us with the issue Ramana brought up - the target hook returning true unconditionally if a generic permute is implemented. We

Re: combine permutations in gimple

2012-08-15 Thread Richard Guenther
On Wed, Aug 15, 2012 at 2:53 PM, Jakub Jelinek ja...@redhat.com wrote: On Wed, Aug 15, 2012 at 02:36:54PM +0200, Richard Guenther wrote: On Wed, Aug 15, 2012 at 2:29 PM, Jakub Jelinek ja...@redhat.com wrote: On Wed, Aug 15, 2012 at 02:15:03PM +0200, Richard Guenther wrote: Ok. That would

Re: Merge C++ conversion into trunk (4/6 - hash table rewrite)

2012-08-15 Thread Richard Guenther
On Wed, 15 Aug 2012, Richard Guenther wrote: On Sun, 12 Aug 2012, Diego Novillo wrote: This implements a new C++ hash table. See http://gcc.gnu.org/ml/gcc-patches/2012-08/msg00711.html for details. Diego. Now as we see the result I'd have prefered a more C++-way instead

Re: Merge C++ conversion into trunk (4/6 - hash table rewrite)

2012-08-15 Thread Richard Guenther
On Wed, 15 Aug 2012, Michael Matz wrote: Hi, On Wed, 15 Aug 2012, Richard Guenther wrote: Like the following, only the coverage.c use is converted. I've never seen template function arguments anywhere and having to repeat them all over the place is really really ugly (yes, even

Re: ISL install troubles

2012-08-14 Thread Richard Guenther
On Mon, Aug 13, 2012 at 6:25 PM, paul_kon...@dell.com wrote: Where does one go to report issues with ISL? Since GCC doesn't build without it, I'm trying to install ISL from sources. That doesn't work. It accepts --with-gmp but there is nothing in the Makefile to pay attention to that --

Re: Merge C++ conversion into trunk (5/6 - double_int rewrite)

2012-08-14 Thread Richard Guenther
On Mon, 13 Aug 2012, Lawrence Crowl wrote: On 8/13/12, Richard Guenther richard.guent...@gmail.com wrote: Increment/decrement operations did not exist, please do not add them at this point. Note that I have also added +=, -= and *= operations. Having them has three advantages. First

Re: [PATCH][RFC] Fixing instability of -fschedule-insns for x86

2012-08-14 Thread Richard Guenther
On Mon, Aug 13, 2012 at 9:39 PM, Igor Zamyatin izamya...@gmail.com wrote: Hi all! Patch aims to fix instability introduced by first scheduler on x86. In particular it targets following list: [1] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46843 [2]

[PATCH] Add update-ssa verification code

2012-08-14 Thread Richard Guenther
This adds verification code that we do not try to rewrite a symbol into SSA form that is already partly in SSA form. That would lead to silent wrong-code generation. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2012-08-14 Richard Guenther rguent...@suse.de

Re: [patch] Reduce memory overhead for large functions

2012-08-14 Thread Richard Guenther
On Mon, Aug 13, 2012 at 10:49 AM, Richard Guenther richard.guent...@gmail.com wrote: On Sun, Aug 12, 2012 at 11:49 PM, Steven Bosscher stevenb@gmail.com wrote: Hello, This patch tried to use non-clearing memory allocation where possible. This is especially important for very large

[PATCH] Speed up PRE insertion

2012-08-14 Thread Richard Guenther
pending on x86_64-unknown-linux-gnu. Richard. 2012-08-14 Richard Guenther rguent...@suse.de * tree-ssa-pre.c (do_regular_insertion): Use a VEC indexed by pred edge index for avail. (do_partial_partial_insertion): Likewise. (insert_into_preds_of_block): Adjust

Re: [patch] Use gcc_checking_assert in dominance.c

2012-08-14 Thread Richard Guenther
On Tue, Aug 14, 2012 at 12:03 PM, Steven Bosscher stevenb@gmail.com wrote: Hello, Checking overhead in dominance.c gives measurable compile time increases on a set of cc1-i files. Most of the checking should be done only with non-release checks enabled. Bootstrappedtested on

Re: [patch] Verify loop fathers

2012-08-14 Thread Richard Guenther
On Tue, Aug 14, 2012 at 12:07 PM, Steven Bosscher stevenb@gmail.com wrote: Hello, Verifying loop fathers now passes on powerpc64-unknown-linux-gnu. Also speed up fix_loop_structure by requiring DOM_OK so that fast DOM queries are available. Bootstrappedtested on

Re: [PATCH] Remove basic_block-loop_depth

2012-08-14 Thread Richard Guenther
On Tue, 14 Aug 2012, Ulrich Weigand wrote: Richard Guenther wrote: Accessing loop_depth (bb-loop_father) isn't very expensive. The following removes the duplicate info in basic-blocks which is not properly kept up-to-date at the moment. Looks like this broke SPU build, since

Re: [PATCH] Remove basic_block-loop_depth

2012-08-14 Thread Richard Guenther
On Tue, 14 Aug 2012, Steven Bosscher wrote: On Tue, Aug 14, 2012 at 12:48 PM, Richard Guenther rguent...@suse.de wrote: If SPU md reorg would like to look at loop structures it should compute them. Simply call flow_loops_find, which hopefully works in CFG RTL mode (which I think

Re: [PATCH] Add update-ssa verification code

2012-08-14 Thread Richard Guenther
On Tue, 14 Aug 2012, Richard Guenther wrote: This adds verification code that we do not try to rewrite a symbol into SSA form that is already partly in SSA form. That would lead to silent wrong-code generation. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. Ick

[PATCH][build] Fix PR54138, make --without-cloog work

2012-08-14 Thread Richard Guenther
. 2012-08-14 Richard Guenther rguent...@suse.de PR bootstrap/54138 * configure.ac: Re-organize ISL / CLOOG checks to allow disabling with either --without-isl or --without-cloog. * configure: Regenerated. * config/cloog.m4: Adjust. * config/isl.m4

Re: [PATCH][RFC] Fixing instability of -fschedule-insns for x86

2012-08-14 Thread Richard Guenther
On Tue, Aug 14, 2012 at 2:02 PM, Uros Bizjak ubiz...@gmail.com wrote: On Tue, Aug 14, 2012 at 1:51 PM, Yuri Rumyantsev ysrum...@gmail.com wrote: 2. Passing function arguments in HW registers. The main problem here is that backward copy propagation phase (aka combine instructions) can

Re: [PATCH][RFC] Fixing instability of -fschedule-insns for x86

2012-08-14 Thread Richard Guenther
On Tue, Aug 14, 2012 at 2:45 PM, Jakub Jelinek ja...@redhat.com wrote: On Tue, Aug 14, 2012 at 02:40:42PM +0200, Richard Guenther wrote: On Tue, Aug 14, 2012 at 2:02 PM, Uros Bizjak ubiz...@gmail.com wrote: On Tue, Aug 14, 2012 at 1:51 PM, Yuri Rumyantsev ysrum...@gmail.com wrote: 2

[PATCH][RFC] Fix PR54201, share constant pool entries for CONST_VECTORs

2012-08-14 Thread Richard Guenther
constant parts (beware of endian and odd alignment issues) by means of simply inserting more entries into the hashtable. Not sure if offsetted .LC references are valid as result of force_const_mem though (well, we could try to share the part at offset zero). Thanks, Richard. 2012-08-14 Richard

Re: [PATCH][RFC] Fix PR54201, share constant pool entries for CONST_VECTORs

2012-08-14 Thread Richard Guenther
On Tue, 14 Aug 2012, Richard Guenther wrote: This implements constant pool entry sharing for CONST_VECTORs with the same bit-pattern by canonicalizing them to the same-sized mode with the least number of elements. Ideally we would be able to hash and compare the in-memory representation

Re: New GCC takes 19x as long to compile my program (compared to old GCC), plus void** patch suggestion

2012-08-13 Thread Richard Guenther
On Fri, Aug 10, 2012 at 5:44 PM, Elmar Krieger el...@cmbi.ru.nl wrote: Hi Ian, hi Richard, hi Andi! Many thanks for your comments. The slowdown is not the same with other files, so I'm essentially sure that this specific source file has some 'feature' that catches GCC at the wrong leg.

Re: Hopelessly broken loop_father, loop_depth

2012-08-13 Thread Richard Guenther
On Sun, Aug 12, 2012 at 2:02 PM, Steven Bosscher stevenb@gmail.com wrote: On Sat, Aug 11, 2012 at 11:16 PM, Steven Bosscher stevenb@gmail.com wrote: Lots of test cases fail with the attached patch. Lots still fail after correcting the verifier :-) 920723-1.c: In function 'f':

Re: Hopelessly broken loop_father, loop_depth

2012-08-13 Thread Richard Guenther
On Mon, Aug 13, 2012 at 12:21 PM, Richard Guenther richard.guent...@gmail.com wrote: On Sun, Aug 12, 2012 at 2:02 PM, Steven Bosscher stevenb@gmail.com wrote: On Sat, Aug 11, 2012 at 11:16 PM, Steven Bosscher stevenb@gmail.com wrote: Lots of test cases fail with the attached patch

Re: Hopelessly broken loop_father, loop_depth

2012-08-13 Thread Richard Guenther
On Mon, Aug 13, 2012 at 12:22 PM, Richard Guenther richard.guent...@gmail.com wrote: On Mon, Aug 13, 2012 at 12:21 PM, Richard Guenther richard.guent...@gmail.com wrote: On Sun, Aug 12, 2012 at 2:02 PM, Steven Bosscher stevenb@gmail.com wrote: On Sat, Aug 11, 2012 at 11:16 PM, Steven

Re: Hopelessly broken loop_father, loop_depth

2012-08-13 Thread Richard Guenther
On Mon, Aug 13, 2012 at 12:57 PM, Richard Guenther richard.guent...@gmail.com wrote: On Mon, Aug 13, 2012 at 12:22 PM, Richard Guenther richard.guent...@gmail.com wrote: On Mon, Aug 13, 2012 at 12:21 PM, Richard Guenther richard.guent...@gmail.com wrote: On Sun, Aug 12, 2012 at 2:02 PM

Re: Hopelessly broken loop_father, loop_depth

2012-08-13 Thread Richard Guenther
On Mon, Aug 13, 2012 at 3:15 PM, Steven Bosscher stevenb@gmail.com wrote: On Mon, Aug 13, 2012 at 1:27 PM, Richard Guenther richard.guent...@gmail.com wrote: I wonder why we cache loop-depth at all ... given that it is a simple dereference bb-loop_father-superloops-base.prefix.num

Re: [patch] Reduce memory overhead for large functions

2012-08-13 Thread Richard Guenther
On Sun, Aug 12, 2012 at 11:49 PM, Steven Bosscher stevenb@gmail.com wrote: Hello, This patch tried to use non-clearing memory allocation where possible. This is especially important for very large functions, when arrays of size in the order of n_basic_blocks or num_ssa_names are allocated

[PATCH] Fix PR54200

2012-08-13 Thread Richard Guenther
/pad-10.c FAILs, because appearantly whatever is responsible for not issueing padding nops is confused by the no longer occuring coalescing at out-of-SSA time. Thus clearly a pre-existing bug and simply a weak testcase. Applied. Richard. 2012-08-13 Richard Guenther rguent...@suse.de

Re: Merge C++ conversion into trunk (0/6 - Overview)

2012-08-13 Thread Richard Guenther
On Sun, Aug 12, 2012 at 10:04 PM, Diego Novillo dnovi...@google.com wrote: I will be sending 6 patches that implement all the changes we have been making on the cxx-conversion branch. As described in http://gcc.gnu.org/ml/gcc/2012-08/msg00015.html, these patches change the default bootstrap

Re: Merge C++ conversion into trunk (5/6 - double_int rewrite)

2012-08-13 Thread Richard Guenther
On Sun, Aug 12, 2012 at 11:30 PM, Marc Glisse marc.gli...@inria.fr wrote: On Sun, 12 Aug 2012, Diego Novillo wrote: This implements the double_int rewrite. See http://gcc.gnu.org/ml/gcc-patches/2012-08/msg00711.html for details. Diego. I am taking it as a chance to ask a couple

Re: combine permutations in gimple

2012-08-13 Thread Richard Guenther
On Sat, Aug 11, 2012 at 2:25 PM, Marc Glisse marc.gli...@inria.fr wrote: On Fri, 10 Aug 2012, Marc Glisse wrote: this patch detects permutations of permutations and merges them. It also canonicalizes permutations a bit more. There are several issues with this patch: 1) I am not sure we

Re: [PATCH] Fix some undefined behavior spots in gcc sources (PR c/53968)

2012-08-13 Thread Richard Guenther
On Mon, Aug 13, 2012 at 2:01 PM, Jakub Jelinek ja...@redhat.com wrote: Hi! John Regehr discovered a couple of spots in GCC sources that invoke undefined behavior during bootstrap/regtest, the following patch fixes most of them. I couldn't reproduce the diagnostic.c failure and would like to

[PATCH] Remove basic_block-loop_depth

2012-08-13 Thread Richard Guenther
Accessing loop_depth (bb-loop_father) isn't very expensive. The following removes the duplicate info in basic-blocks which is not properly kept up-to-date at the moment. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2012-08-13 Richard Guenther rguent...@suse.de

[PATCH] Fix loop dumping ICEs

2012-08-13 Thread Richard Guenther
Bootstrapped on x86_64-unknown-linux-gnu, committed. Richard. 2012-08-13 Richard Guenther rguent...@suse.de * tree-cfg.c (print_loop): Avoid ICEing for loops marked for removal and loops with multiple latches. Index: gcc/tree-cfg.c

Re: combine permutations in gimple

2012-08-13 Thread Richard Guenther
On Mon, Aug 13, 2012 at 3:03 PM, Marc Glisse marc.gli...@inria.fr wrote: On Mon, 13 Aug 2012, Richard Guenther wrote: On Sat, Aug 11, 2012 at 2:25 PM, Marc Glisse marc.gli...@inria.fr wrote: On Fri, 10 Aug 2012, Marc Glisse wrote: 1) I am not sure we always want to combine permutations

Re: combine permutations in gimple

2012-08-13 Thread Richard Guenther
On Mon, Aug 13, 2012 at 3:12 PM, Ramana Radhakrishnan ramana.radhakrish...@linaro.org wrote: I guess people will complain soon enough if this causes horrible performance regressions in vectorized code. Not having looked at your patch in great detail,. surely what we don't want is a situation

Re: PR 54193: raw gimple dump of vec_perm_expr

2012-08-12 Thread Richard Guenther
On Sat, Aug 11, 2012 at 10:37 PM, Marc Glisse marc.gli...@inria.fr wrote: Hello, I'll have to retest this patch tomorrow (although I don't expect the modified code is ever called), for some reason the testsuite took twice as long as usual to run and showed some weird stuff tonight. There

Re: Unbreak lto plugin

2012-08-11 Thread Richard Guenther
On Sat, Aug 11, 2012 at 5:51 PM, Jan Hubicka hubi...@ucw.cz wrote: Hi, my prevoius LTO cleanup run into problem with plugin enabled builds; lto-plugin is stupid enought to confused symtab_nodes section with symtab because it ignores the suffixes. Err, I suppose we should fix the plugin as

Re: [PATCH][7/6] Allow anonymous SSA names

2012-08-10 Thread Richard Guenther
On Thu, 9 Aug 2012, Diego Novillo wrote: On 12-08-09 09:20 , Richard Guenther wrote: if (interm_type) { /* Create a type conversion HALF_TYPE-INTERM_TYPE. */ ! tmp = create_tmp_reg (interm_type, NULL); ! new_oprnd = make_ssa_name

Re: [PATCH][7/6] Allow anonymous SSA names

2012-08-10 Thread Richard Guenther
On Fri, 10 Aug 2012, Jan Hubicka wrote: This converts most users of create_tmp_{var,reg} to use anonymous SSA names. To give you one more reason to look at 6/6 ;) Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Very cool. Thanks for the hard work. Did you have time

Re: [patch] Fix a couple of VEC_reserve uses, speed up update_ssa a bit

2012-08-10 Thread Richard Guenther
On Fri, Aug 10, 2012 at 12:20 AM, Steven Bosscher stevenb@gmail.com wrote: On Fri, Aug 10, 2012 at 12:15 AM, Richard Henderson r...@redhat.com wrote: On 08/09/2012 03:06 PM, Steven Bosscher wrote: + unsigned old_len = name_to_id ? VEC_length (unsigned, name_to_id) : 0; +

[PATCH] Fix anonymous decl dumping

2012-08-10 Thread Richard Guenther
Bootstrap regtest in progress. Richard. 2012-08-10 Richard Guenther rguent...@suse.de * tree-cfg.c (dump_function_to_file): Make sure to dump anonymous SSA names when there are no local decls. Index: gcc/tree-cfg.c

[PATCH] Fix PR54219

2012-08-10 Thread Richard Guenther
This fixes an error I introduced when making the VECTOR_CST representation changes. Bootstrap and regtest pending on x86_64-unknown-linux-gnu. Richard. 2012-08-10 Richard Guenther rguent...@suse.de PR middle-end/54219 * fold-const.c (fold_ternary_loc): Do not reverse

[PATCH] Fix PR54109

2012-08-10 Thread Richard Guenther
and tested on x86_64-unknown-linux-gnu, applied to trunk. Richard. 2012-08-10 Richard Guenther rguent...@suse.de PR tree-optimization/54109 * tree-ssa-forwprop.c (forward_propagate_addr_into_variable_array_index): Remove. (forward_propagate_addr_expr_1): Adjust

Re: New GCC takes 19x as long to compile my program (compared to old GCC), plus void** patch suggestion

2012-08-09 Thread Richard Guenther
On Thu, Aug 9, 2012 at 1:09 AM, Andi Kleen a...@firstfloor.org wrote: Elmar Krieger el...@cmbi.ru.nl writes: The slowdown is not the same with other files, so I'm essentially sure that this specific source file has some 'feature' that catches GCC at the wrong leg. This raises my hopes that

Re: [PATCH] Strength reduction part 3 of 4: candidates with unknown strides

2012-08-09 Thread Richard Guenther
On Wed, 8 Aug 2012, H.J. Lu wrote: On Wed, Aug 1, 2012 at 10:36 AM, William J. Schmidt wschm...@linux.vnet.ibm.com wrote: Greetings, Thanks for the review of part 2! Here's another chunk of the SLSR code (I feel I owe you a few beers at this point). This performs analysis and

Re: Commit: RL78: Include tree-pass.h

2012-08-09 Thread Richard Guenther
On Wed, Aug 8, 2012 at 5:29 PM, Richard Henderson r...@redhat.com wrote: On 08/08/2012 07:19 AM, Ian Lance Taylor wrote: I was suggesting to for example register a 2nd mdreorg-like pass and add a 2nd target hook. regstack should get the same treatment. If the mechanism is a proliferation of

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-09 Thread Richard Guenther
On Thu, Aug 9, 2012 at 12:25 AM, Lawrence Crowl cr...@google.com wrote: On 8/8/12, Richard Guenther richard.guent...@gmail.com wrote: On Aug 7, 2012 Lawrence Crowl cr...@google.com wrote: We should probably think about naming conventions for mutating operations, as I expect we will want them

Re: [PATCH,i386] fma,fma4 and xop flags

2012-08-09 Thread Richard Guenther
-Original Message- From: Richard Guenther [mailto:richard.guent...@gmail.com] Sent: Wednesday, August 08, 2012 5:12 PM To: Gopalasubramanian, Ganesh Cc: gcc-patches@gcc.gnu.org; ubiz...@gmail.com Subject: Re: [PATCH,i386] fma,fma4 and xop flags On Wed, Aug 8, 2012 at 1:31 PM

Re: [cxx-conversion] Support garbage-collected C++ templates

2012-08-09 Thread Richard Guenther
On Wed, Aug 8, 2012 at 11:27 PM, Diego Novillo dnovi...@google.com wrote: On 12-08-08 17:25 , Gabriel Dos Reis wrote: Aha, so it is an ordering issue, e.g. declarations being generated after they have been seen used in an instantiation. We might want to consider including the header file

[PATCH][5/n] Allow anonymous SSA names

2012-08-09 Thread Richard Guenther
Another set of small changes. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2012-08-09 Richard Guenther rguent...@suse.de * tree.h (SSA_VAR_P): Simplify. * tree-ssanames.c (make_ssa_name_fn): Strengthen assert. * fold-const.c (fold_comparison

Re: [cxx-conversion] Support garbage-collected C++ templates

2012-08-09 Thread Richard Guenther
On Thu, Aug 9, 2012 at 2:44 PM, Diego Novillo dnovi...@google.com wrote: On Thu, Aug 9, 2012 at 5:03 AM, Richard Guenther richard.guent...@gmail.com wrote: But now with doing it in stages you end up with (this) first stage that complicates gengtype to support a very small subset of C++ types

[PATCH] Fix PR54027

2012-08-09 Thread Richard Guenther
This fixes PR54027, VRP treating overflow in signed left-shifts undefined. Bootstrap and regtest pending on x86_64-unknown-linux-gnu. Richard. 2012-08-09 Richard Guenther rguent...@suse.de PR tree-optimization/54027 * tree-vrp.c (extract_range_from_binary_expr_1): Merge

Re: [PATCH] Set current_function_decl in {push,pop}_cfun and push_struct_function

2012-08-09 Thread Richard Guenther
On Thu, Aug 9, 2012 at 4:26 PM, Martin Jambor mjam...@suse.cz wrote: Hi, I've always found it silly that in order to change the current function one has to call push_cfun and pop_cfun which conveniently set and restore the value of cfun and in addition to that also set current_function_decl

Re: New GCC takes 19x as long to compile my program (compared to old GCC), plus void** patch suggestion

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 4:01 PM, Elmar Krieger el...@cmbi.ru.nl wrote: Dear all, while I fully understand that GCC's steadily advancing optimization capabilities can't be 'for free', the latest versions have become almost unusably slow for me: With simple optimization -O, compiling a certain

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 9:09 AM, Miles Bader mi...@gnu.org wrote: Mike Stump mikest...@comcast.net writes: Constructors are allowed, but PODs are often passed more efficiently. That property seemed particularly important for double_int. Show us the difference in timing. Show us the generated

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Richard Guenther
On Tue, Aug 7, 2012 at 8:38 PM, Lawrence Crowl cr...@google.com wrote: On 8/7/12, Richard Guenther richard.guent...@gmail.com wrote: On Tue, Aug 7, 2012 at 2:35 AM, Lawrence Crowl cr...@google.com wrote: Convert double_int from a struct with function into a class with operators and methods

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 10:33 AM, Marc Glisse marc.gli...@inria.fr wrote: On Wed, 8 Aug 2012, Richard Guenther wrote: + static double_int make (unsigned HOST_WIDE_INT cst); + static double_int make (HOST_WIDE_INT cst); + static double_int make (unsigned int cst); + static double_int make

Re: Commit: RL78: Include tree-pass.h

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 10:28 AM, Nick Clifton ni...@redhat.com wrote: Hi DJ, I am applying the following patch to the gcc mainline as an obvious fix for the following problem building the RL78 backend: gcc/config/rl78/rl78.c:151:3: error: 'PASS_POS_INSERT_BEFORE' undeclared here

Re: Commit: RL78: Include tree-pass.h

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 11:02 AM, nick clifton ni...@redhat.com wrote: Hi Richard, Err - you are inside the compiler and should not use plugin stuff to register your machine dependent pass. Umm, OK, what is the correct method for registering target specific passes ? (Ones that need to run

Re: [PATCH,i386] fma,fma4 and xop flags

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 1:31 PM, ganesh.gopalasubraman...@amd.com wrote: Hello, Bdver2 cpu supports both fma and fma4 instructions. Previous to patch, option -mno-xop removes -mfma4. Similarly, option -mno-fma4 removes -mxop. Eh? Why's that? I think we should disentangle -mxop and -mfma4

[PATCH][4/n] Allow anonymous SSA names

2012-08-08 Thread Richard Guenther
,max_decl_uid + num_ssa_names] for decls in its bitmap. Eventually this pass will get rewritten by Micha anyway who has pending patches to make va_arg survive until after inlining. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. Richard. 2012-08-08 Richard Guenther rguent...@suse.de

[PATCH] Add virual_operand_p predicate

2012-08-08 Thread Richard Guenther
... Bootstrap regtest pending on x86_64-unknown-linux-gnu. Richard. 2012-08-08 Richard Guenther rguent...@suse.de * tree-ssa-operands.h (virtual_operand_p): Declare. * tree-ssa-operands.c (virtual_operand_p): New predicate. * gimple.c (is_gimple_reg): Use

Re: Commit: RL78: Include tree-pass.h

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 3:35 PM, Ian Lance Taylor i...@google.com wrote: On Wed, Aug 8, 2012 at 1:45 AM, Richard Guenther richard.guent...@gmail.com wrote: On Wed, Aug 8, 2012 at 10:28 AM, Nick Clifton ni...@redhat.com wrote: Hi DJ, I am applying the following patch to the gcc mainline

Re: Commit: RL78: Include tree-pass.h

2012-08-08 Thread Richard Guenther
On Wed, Aug 8, 2012 at 4:06 PM, Ian Lance Taylor i...@google.com wrote: On Wed, Aug 8, 2012 at 7:03 AM, Richard Guenther richard.guent...@gmail.com wrote: I don't think we really want that (machine dependent passes). It seems we cannot get away with it (so we have mdreorg). Allowing (some

Re: Function parameter debug info at -O0

2012-08-07 Thread Richard Guenther
On Tue, Aug 7, 2012 at 4:54 AM, Senthil Kumar Selvaraj senthil_kumar.selva...@atmel.com wrote: On Mon, Aug 06, 2012 at 01:40:57PM -0400, Frank Ch. Eigler wrote: Senthil Kumar Selvaraj senthil_kumar.selva...@atmel.com writes: [...] The following program, when compiled with -O0 -g3 (x86_64

Re: pr45605.C devirtualize call failure in ia64-hp-hpux?

2012-08-07 Thread Richard Guenther
On Mon, Aug 6, 2012 at 8:21 PM, Martin Jambor mjam...@suse.cz wrote: Hi, I've had this flagged to look at later for quite long now... On Mon, Apr 30, 2012 at 07:34:24AM +, Mailaripillai, Kannan Jeganathan wrote: Hi, This is related to pr45605.C test. Reduced testcase struct

Re: [cxx-conversion] Make double_int a class with methods and operators. (issue6443093)

2012-08-07 Thread Richard Guenther
On Tue, Aug 7, 2012 at 2:35 AM, Lawrence Crowl cr...@google.com wrote: Convert double_int from a struct with function into a class with operators and methods. This patch adds the methods and operators. In general functions of the form double_int_whatever become member functions whatever or,

Re: [patch] Use a smaller, dynamic worklist in compute_global_livein

2012-08-07 Thread Richard Guenther
On Tue, Aug 7, 2012 at 8:24 AM, Steven Bosscher stevenb@gmail.com wrote: Hello, In the test case for PR54146, compute_global_livein allocates/frees a worklist for 400,000 basic blocks on each invocation. And it's called a lot, for rewrite_into_loop_closed_ssa. But the maximum number of

Re: [patch] Use a smaller, dynamic worklist in compute_global_livein

2012-08-07 Thread Richard Guenther
On Tue, Aug 7, 2012 at 11:03 AM, Steven Bosscher stevenb@gmail.com wrote: On Tue, Aug 7, 2012 at 10:31 AM, Richard Guenther richard.guent...@gmail.com wrote: On Tue, Aug 7, 2012 at 8:24 AM, Steven Bosscher stevenb@gmail.com wrote: Hello, In the test case for PR54146

Re: [patch] Use a smaller, dynamic worklist in compute_global_livein

2012-08-07 Thread Richard Guenther
On Tue, Aug 7, 2012 at 11:45 AM, Steven Bosscher stevenb@gmail.com wrote: On Tue, Aug 7, 2012 at 11:22 AM, Richard Guenther richard.guent...@gmail.com wrote: Another optimization would be to do @@ -440,13 +442,13 @@ compute_global_livein (bitmap livein ATT ! bitmap_bit_p

[PATCH] Make gimple_phi_set_result adjust SSA_NAME_DEF_STMT

2012-08-07 Thread Richard Guenther
, applied. Richard. 2012-08-07 Richard Guenther rguent...@suse.de * gimple.h (gimple_phi_set_result): Adjust SSA_NAME_DEF_STMT. * tree-phinodes.c (make_phi_node): Allow a NULL var. * tree-into-ssa.c (insert_phi_nodes_for): Simplify. * tree-complex.c

Re: [patch] Use a smaller, dynamic worklist in compute_global_livein

2012-08-07 Thread Richard Guenther
On Tue, Aug 7, 2012 at 11:58 AM, Steven Bosscher stevenb@gmail.com wrote: On Tue, Aug 7, 2012 at 11:52 AM, Richard Guenther richard.guent...@gmail.com wrote: So I wonder why simply looping over all SSA defs in a loop body and checking whether a use is outside of it is not enough to compute

[PATCH] Remove clobbers as we go into SSA

2012-08-07 Thread Richard Guenther
; frame.i = D.1234; } and D.1234 being a candidate for a register. Bootstrapped and tested on x86_64-unknown-linux-gnu, applied. Richard. 2012-08-07 Richard Guenther rguent...@suse.de * tree-into-ssa.c (rewrite_stmt): Remove clobbers for variables we rewrite into SSA form

Re: [PATCH] Set correct source location for deallocator calls

2012-08-07 Thread Richard Guenther
On Tue, Aug 7, 2012 at 12:07 AM, Dehao Chen de...@google.com wrote: Ping... Richard, could you shed some lights on this? Thanks, Dehao On Mon, Jul 30, 2012 at 8:29 PM, Dehao Chen de...@google.com wrote: Hi, This patch fixes the source location for automatically generated calls to

[PATCH][3/n] Allow anonymous SSA names, add copy_ssa_name

2012-08-07 Thread Richard Guenther
the name it replaces, even if the replacement is NULL. Bootstrapped on x86_64-unknown-linux-gnu, testing in progress. I will commit it with two revisions separating the changes to allow easier bisection (the copy_ssa_name is a complete no-op). Richard. 2012-08-07 Richard Guenther rguent

Re: [RFA 4.7/4.6] Re: [PATCH v2] Target-specific limits on vector alignment

2012-08-07 Thread Richard Guenther
On Tue, Aug 7, 2012 at 4:56 PM, Ulrich Weigand uweig...@de.ibm.com wrote: Richard Guenther wrote: On Fri, Jul 27, 2012 at 5:24 PM, Ulrich Weigand uweig...@de.ibm.com wrote: ChangeLog: * target.def (vector_alignment): New target hook. * doc/tm.texi.in

Re: Weird optimization flags behavior

2012-08-06 Thread Richard Guenther
On Mon, Aug 6, 2012 at 5:20 AM, Parang Saraf parang.sa...@gmail.com wrote: Hi, I am facing some weird issues with the optimization flags. I tried posting this in the gcc-help but got no response. Here is my query: I can see the flags enabled for each optimization level using gcc -Q -On

Re: Change default BOOT_CFLAGS for release builds

2012-08-06 Thread Richard Guenther
On Mon, Aug 6, 2012 at 8:01 AM, Ryan Hill dirtye...@gentoo.org wrote: On Fri, 3 Aug 2012 17:11:04 +0300 (EEST) Dimitrios Apostolou ji...@gmx.net wrote: I got no replies, so I guess there is no will to move GCC to -O3 by default, so I shouldn't bother submitting a patch? As a reminder, cc1

Re: [PATCH] Remove introduction of undefined overflow in emit_case_bit_test.

2012-08-06 Thread Richard Guenther
On Mon, Aug 6, 2012 at 1:31 AM, Tom de Vries tom_devr...@mentor.com wrote: Richard, the code in emit_case_bit_tests currently introduces a MINUS_EXPR in signed type (without checking if signed types wrap or not), which could mean introduction of undefined overflow. This patch fixes this

Re: [PATCH] Improve ifcombine (PR 52005)

2012-08-06 Thread Richard Guenther
On Mon, Aug 6, 2012 at 8:27 AM, Marc Glisse marc.gli...@inria.fr wrote: Hello, do you have an opinion on this patch (available here: http://gcc.gnu.org/ml/gcc-patches/2012-07/msg01352.html ) ? I like it. Thus, the referenced patch is ok for trunk. Thanks, Richard. Or should we go back

Re: [patch] speed up ifcvt:cond_move_convert_if_block

2012-08-06 Thread Richard Guenther
On Mon, Aug 6, 2012 at 8:54 AM, Steven Bosscher stevenb@gmail.com wrote: Hello, In PR54146, ifcvt spends a lot of time just clearing memory. This patch changes the value maps to pointer-maps to fix this issue. Bootstrappedtested on x86_64-unknown-linux-gnu. OK? Ok! Thanks, Richard.

Re: cosmetic change - simplify cse.c:preferable()

2012-08-06 Thread Richard Guenther
On Sat, 4 Aug 2012, Dimitrios Apostolou wrote: On Thu, 19 Jul 2012, Richard Guenther wrote: I don't think it's any good or clearer to understand. Hi Richi, I had forgotten I prepared this for PR #19832, maybe you want to take a look. FWIW, with my patch applied there is a difference

Re: Huge change on 4.7 branch

2012-08-06 Thread Richard Guenther
On Mon, Aug 6, 2012 at 3:25 PM, H.J. Lu hjl.to...@gmail.com wrote: Hi Nick, You checked a huge change into 4,7 branch: http://gcc.gnu.org/ml/gcc-cvs/2012-08/msg00149.html Is this an accident? I hope so. Please revert. Thanks, Richard. -- H.J.

Re: Massive FORTRAN failures

2012-08-04 Thread Richard Guenther
On Sat, Aug 4, 2012 at 7:26 PM, H.J. Lu hjl.to...@gmail.com wrote: On Sat, Aug 4, 2012 at 9:49 AM, Tobias Burnus bur...@net-b.de wrote: H.J. Lu wrote: I saw massive FORTRAN failures on trunk with both SPEC CPU 2006 and GCC FORTRAN testsuite. Is this a known problem? Should I open a bug

Re: Merging the cxx-conversion branch into trunk

2012-08-03 Thread Richard Guenther
On Thu, Aug 2, 2012 at 8:58 PM, Diego Novillo dnovi...@google.com wrote: We are about ready to have the cxx-conversion branch merged back into trunk. This merge will change the following: 1- The compiler can only be built with a C++ compiler. 2- The tree macros can be called from gdb (when

Re: VRP wrapping MULT_EXPR

2012-08-03 Thread Richard Guenther
On Thu, Aug 2, 2012 at 11:49 PM, Marc Glisse marc.gli...@inria.fr wrote: Hello, here is a patch handling multiplication of wrapping integer types in VRP. It passed bootstrap+testsuite limited to c,c++ and without the testcase, so I'll retest it better during the night. For some reason the

Re: [PATCH, i386]: Implement atomic_fetch_sub

2012-08-03 Thread Richard Guenther
On Fri, Aug 3, 2012 at 9:24 AM, Uros Bizjak ubiz...@gmail.com wrote: On Fri, Aug 3, 2012 at 8:40 AM, Uros Bizjak ubiz...@gmail.com wrote: We can implement atomic_fetch_sub with atomic_fetch_add and inverted operand 2. However, we have to prevent overflows with negation, so only const_int

[PATCH][1/n] Allow anonymous SSA names

2012-08-03 Thread Richard Guenther
-unknown-linux-gnu, applied. Richard. 2012-08-03 Richard Guenther rguent...@suse.de * tree-vect-loop-manip.c (vect_can_advance_ivs_p): Query is_gimple_reg on the SSA name, not its variable. (vect_update_ivs_after_vectorizer): Likewise. * tree-ssa-copyrename.c

[PATCH][0/n] Allow anonymous SSA names

2012-08-03 Thread Richard Guenther
from before and after the patch (well, once that bootstraps ;)). Thanks, Richard. TODO: * Add SSA_NAME_FOR_RESULT_DECL (), SSA_NAME_FOR_PARM_DECL () macros, hiding the fact that SSA_NAME_VAR may be NULL. * Likewise add a SSA_NAME_ARTIFICIAL () macro 2012-08-03 Richard Guenther rguent

[PATCH][2/n] Allow anonymous SSA names, a bunch of new predicates for SSA names

2012-08-03 Thread Richard Guenther
This adds a bunch of new SSA name predicates to remove explicit uses of SSA_NAME_VAR. Bootstrapped and tested on x86_64-unknown-linux-gnu. I'm leaving this for comments. This mainly removes this cases from explicit covering in further patches. Richard. 2012-08-03 Richard Guenther rguent

Re: speedup stack var conflicts (PR54146)

2012-08-03 Thread Richard Guenther
On Fri, Aug 3, 2012 at 3:14 PM, Michael Matz m...@suse.de wrote: Hi, as Steven noted in the bug report one reason of the slowness are the myriads of calls to bitmap_set_bit, resulting from the clique generation at the start of basic blocks. Can be sped up by using bitmap_ior. He

[PATCH] SSA default-def TLC

2012-08-02 Thread Richard Guenther
set_ssa_default_def (struct function *, tree, tree); ! extern tree ssa_default_def (struct function *, tree); ! extern tree get_or_create_ssa_default_def (struct function *, tree); Queued for bootstrap and regtest on x86_64-unknown-linux-gnu. Richard. 2012-08-02 Richard Guenther rguent...@suse.de

[PATCH] Remove make_rename_temp

2012-08-02 Thread Richard Guenther
It's now a wrapper around create_tmp_reg. Bootstrap and regtest pending on x86_64-unknown-linux-gnu. Richard. 2012-08-02 Richard Guenther rguent...@suse.de * tree-flow.h (make_rename_temp): Remove. * tree-dfa.c (make_rename_temp): Likewise. * cgraphunit.c

<    1   2   3   4   5   6   7   8   9   10   >