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 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: 24 Dec 2004 01:00:44 -0000
- Subject: [Bug rtl-optimization/19097] [3.4/4.0 regression] Quadratic behavior with many sets for the same register in gcse CPROP
- References: <20041221015654.19097.phython@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From steven at gcc dot gnu dot org 2004-12-24 01:00 -------
We did not have implicit sets in 3.3, so it doesn't show this behavior.
On the other hand, someone could feed RTL to 3.3 where a single register
is set many times, and I'm sure it will show the same behavior. But in
this case, with implicit sets, we could have it for normal code too, for
example an implicit set from a switch condition. So I'm marking this as a
regression from the last release without implicit sets.
The memory issue is different, I'm not sure if/where/why we allocate too
much. It's probably just bad cache behavior that makes this a "memory-hog":
walk a very long linked list that doesn't fit in RAM, well, that sends any
machine to swapping hell. I'm not seeing memory consumption grow in a non
linear way, so I'm removing that keyword.
--
What |Removed |Added
----------------------------------------------------------------------------
Keywords|memory-hog |
Known to fail| |4.0.0
Known to work| |3.3.4
Last reconfirmed|2004-12-21 08:38:15 |2004-12-24 01:00:42
date| |
Summary|Lots of else ifs take |[3.4/4.0 regression]
|forever to compile |Quadratic behavior with many
| |sets for the same register
| |in gcse CPROP
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19097