This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/19097] [3.4/4.0/4.1/4.2 regression] Quadratic behavior with many sets for the same register in gcse CPROP
- From: "steven at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 8 Jan 2006 16:08:03 -0000
- Subject: [Bug rtl-optimization/19097] [3.4/4.0/4.1/4.2 regression] Quadratic behavior with many sets for the same register in gcse CPROP
- References: <bug-19097-7737@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #30 from steven at gcc dot gnu dot org 2006-01-08 16:08 -------
Other than VRP taking so much time for GCC 4.1, there are no surprises in the
timings I just added in comment #29 for GCC 4.0 and GCC 4.1.
Computing dominance frontiers is just not a linear operation (especially not
for a function with this many of them :-). "CPROP 1", "CPROP 2", and "bypass
jumps" are all the same algorithm (const/copy propagation in gcse.c) which also
has known non-linear algorithms for strange test cases like the one for this
bug report.
If only VRP wouldn't suck up so much time here, I would call this one FIXED...
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19097