This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/25005] [4.1/4.2 regression] ICE in extract_constrain_insn_cached, at recog.c:2002
- From: "jakub at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 20 Dec 2005 15:41:00 -0000
- Subject: [Bug target/25005] [4.1/4.2 regression] ICE in extract_constrain_insn_cached, at recog.c:2002
- References: <bug-25005-102@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #7 from jakub at gcc dot gnu dot org 2005-12-20 15:40 -------
The problem is regrename pass.
replace_oldest_value_reg called indirectly from copyprop_hardreg_forward
doesn't validate the change, so if both old and new registers are in the same
class, but only the old one is valid (as in this case, old reg is
r9, and r9 * 2 is valid address_operand, but new reg is rsp and rsp * 2 is
not a valid address_oprand).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=25005