[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-11-07 Thread phython at gcc dot gnu dot org
--- Comment #28 from phython at gcc dot gnu dot org 2005-11-08 06:48 --- Steven: How long does 4.0 take to compile this function on your box? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19097

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-11-07 Thread steven at gcc dot gnu dot org
--- Comment #27 from steven at gcc dot gnu dot org 2005-11-08 00:18 --- On AMD64, revision 106596M (the M is for a local loop-invariant.c patch, nothing special), compiler built with --enable-checking=release: at -O1: tree operand scan : 1.50 (10%) usr 0.09 (17%) sys 1.62 (10

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-10-31 Thread steven at gcc dot gnu dot org
--- Comment #26 from steven at gcc dot gnu dot org 2005-10-31 17:12 --- Moving back to new, because I don't know if the GCSE CPROP issue with implicit sets is also already fixed. -- steven at gcc dot gnu dot org changed: What|Removed |Added ---

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-10-31 Thread amacleod at gcc dot gnu dot org
--- Comment #25 from amacleod at redhat dot com 2005-10-31 15:19 --- Subject: Bug 19097 Author: amacleod Date: Mon Oct 31 13:38:05 2005 New Revision: 106272 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=106272 Log: 2005-10-31 Andrew MacLeod <[EMAIL PROTECTED]> PR tr

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-10-31 Thread dberlin at gcc dot gnu dot org
--- Comment #24 from dberlin at gcc dot gnu dot org 2005-10-31 15:04 --- I fixed the bug that was preventing it from sending it to this bug, it should pop up in a second -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19097

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-10-31 Thread amacleod at redhat dot com
--- Comment #23 from amacleod at redhat dot com 2005-10-31 14:41 --- Hmm. This has been committed, but the commit hasn't shown up yet. Perhaps because I tagged it as a tree-optimization PR and I now notice that its marked as rtl-optimization? -- http://gcc.gnu.org/bugzilla/show_bug.

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-10-31 Thread amacleod at redhat dot com
--- Comment #22 from amacleod at redhat dot com 2005-10-31 13:33 --- It will be checked in shortly. I got your OK for this stage last week, and I was merely waiting for the SVN switchover freeze to expire, trying a new build and getting back to work today. -- http://gcc.gnu.org/bugz

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-10-30 Thread mmitchel at gcc dot gnu dot org
--- Comment #21 from mmitchel at gcc dot gnu dot org 2005-10-31 02:02 --- I'm going to leave this as P2, since we've got a proposed patch in Comment #19. Andrew, do you need a review on that patch? Or, is there any other reason it hasn't been committed? -- http://gcc.gnu.org/bugz

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-10-29 Thread steven at gcc dot gnu dot org
--- Comment #20 from steven at gcc dot gnu dot org 2005-10-29 22:38 --- amacleod, are you going to post your patch and/or commit it?? -- steven at gcc dot gnu dot org changed: What|Removed |Added

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-10-18 Thread amacleod at redhat dot com
--- Comment #19 from amacleod at redhat dot com 2005-10-18 12:25 --- Created an attachment (id=10017) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=10017&action=view) patch for operand scan Now that correct_use_link is *only* used for real uses, it is no longer profitable to try t

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-10-18 Thread bonzini at gcc dot gnu dot org
--- Comment #18 from bonzini at gcc dot gnu dot org 2005-10-18 08:36 --- Steven, how does your df.c-based cprop fare on this testcase? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19097

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-10-16 Thread steven at gcc dot gnu dot org
--- Comment #17 from steven at gcc dot gnu dot org 2005-10-16 23:20 --- On AMD64, I now get the following timings: -O1 -O2 3.3 (profilebootstrapped) 46.64 46.90 4.1 (checking=release) 72.82 156.43 In 4.1, the Big Spenders are "dominance frontiers

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-09-30 Thread amacleod at redhat dot com
-- Bug 19097 depends on bug 21430, which changed state. Bug 21430 Summary: [4.1 Regression] Quadratic behavior with constant initializers http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21430 What|Old Value |New Value --

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-09-18 Thread steven at gcc dot gnu dot org
--- Additional Comments From steven at gcc dot gnu dot org 2005-09-19 00:15 --- Another SSA operands cache slowness example... -- What|Removed |Added CC|

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-09-18 Thread pinskia at gcc dot gnu dot org
--- Additional Comments From pinskia at gcc dot gnu dot org 2005-09-19 00:14 --- For -O1 on x86_64-pc-linux-gnu: For 4.1.0: tree operand scan : 18.28 (50%) usr 0.10 (18%) sys 18.33 (50%) wall 402 kB ( 0%) ggc That is the same issue as PR 21430 For both 4.0.0 and 4.1.0: 4.

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-08-25 Thread phython at gcc dot gnu dot org
--- Additional Comments From phython at gcc dot gnu dot org 2005-08-25 07:03 --- FOO! The exact testcase I have been testing for the last couple days has been #define CL0(a) if (b == a) { foo (); } , so all the work DOM was doing converts the if's to else if's . -- http://gcc.gnu.o

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-08-24 Thread phython at gcc dot gnu dot org
--- Additional Comments From phython at gcc dot gnu dot org 2005-08-25 06:03 --- DOM also eats a metric ton of memory on this testcase. 900MB with C3(1). -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19097

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-08-24 Thread phython at gcc dot gnu dot org
--- Additional Comments From phython at gcc dot gnu dot org 2005-08-25 05:24 --- If I use C5(1) with two C4's in C5 then I get a stack overflow in VRP between find_assert_locations and find_conditional_asserts. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19097

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-08-22 Thread phython at gcc dot gnu dot org
--- Additional Comments From phython at gcc dot gnu dot org 2005-08-23 06:46 --- Here is an updated time-report with the main time contributors on ppc-linux with checking disabled. tree VRP : 75.60 (11%) usr 0.39 ( 0%) sys 89.92 ( 9%) wall 13693 kB ( 6%) ggc tree ope

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-06-08 Thread phython at gcc dot gnu dot org
--- Additional Comments From phython at gcc dot gnu dot org 2005-06-08 12:43 --- Ok, I seem to be wrong, hash_set still seems to be used for implicit sets. However, the destination registers in gcc 4.1 are all different: SET hash table (1251 buckets, 1001 entries) Index 0 (hash value 3

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-06-08 Thread steven at gcc dot gnu dot org
--- Additional Comments From steven at gcc dot gnu dot org 2005-06-08 09:38 --- Can you try and figure out which patch changed this for GCC 4.1? Bonus points if you can see if backporting that patch gives GCC 4.0 a speed-up, because in that case you may have something to go to Mark wi

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-06-07 Thread phython at gcc dot gnu dot org
--- Additional Comments From phython at gcc dot gnu dot org 2005-06-08 03:32 --- The problem with the hash table seems to be fixed in gcc 4.1, but not gcc 3.4 or 4.0. In gcc 4.1 hash_rtx is used for the implicit sets instead of the really dumb hash_set. -- http://gcc.gnu.org/bugzil

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-03-05 Thread steven at gcc dot gnu dot org
--- Additional Comments From steven at gcc dot gnu dot org 2005-03-05 23:37 --- I don't think this will be fixed for 4.1, unless we kick out implicit sets from gcse, or all of gcse. The former may be possible if our const/copy prop at the tree level is good enough, but I wouldn't coun

[Bug rtl-optimization/19097] [3.4/4.0/4.1 regression] Quadratic behavior with many sets for the same register in gcse CPROP

2005-03-05 Thread pinskia at gcc dot gnu dot org
-- What|Removed |Added Target Milestone|--- |4.1.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19097