[Bug target/22553] [4.4/4.5/4.6/4.7 regression] ICE building libstdc++
belyshev at depni dot sinp.msu.ru
gcc-bugzilla@gcc.gnu.org
Tue Nov 8 09:30:00 GMT 2011
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22553
--- Comment #19 from Serge Belyshev <belyshev at depni dot sinp.msu.ru> 2011-11-08 09:10:22 UTC ---
Note that both original testcase and its fully reduced variants are flakey, so
one needs to check against all intermediate ones generated by delta.
Anyway, with the workaround from r105496 reverted, this bug no longer appears
since r122318:
2007-02-25 Ulrich Weigand <uweigand@de.ibm.com>
* reload.c (find_reloads_address_1): Handle PLUS expressions resulting
from register elimination as PRE_MODIFY / POST_MODIFY increments.
Do not attempt to handle MEM inside auto-inc expressions.
* reload1.c (eliminate_regs_1): Do not attempt to handle elimination
of a register modified by an auto-inc expression. However, do handle
elimination of a register used as PRE_MODIFY / POST_MODIFY increment.
(elimination_effects): Prohibit elimination of a register modified
by an auto-inc expression. Disable register elimination rules whose
target register is modified by an auto-inc expression with variable
increment.
Which looks like real fix for the issue.
Another big change that can also help here is -fsched-pressure in r151348:
2009-09-02 Vladimir Makarov <vmakarov@redhat.com>
* doc/invoke.texi (-fsched-pressure): Document it.
(-fsched-reg-pressure-heuristic): Remove it.
...
So I think the workaround from r105496 can be safely removed now and then close
this bug as fixed since 4.3.0
More information about the Gcc-bugs
mailing list