This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
- From: "rth at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 3 Sep 2005 00:27:52 -0000
- Subject: [Bug middle-end/23706] [4.1 Regression] ICE in rtl_verify_flow_info_1
- References: <20050902233213.23706.kkojima@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From rth at gcc dot gnu dot org 2005-09-03 00:27 -------
The true problem is in optimize_mode_switching. The code about line 605
that inserts code around (but not on) abnormal edges, is incorrect. This
is immediately obvious in this case because the emit_insn_after must by
definition insert insns after the last insn in the block, resulting in
the observed assertion failure.
The solution will have to involve re-organizing optimize_mode_switching
with respect to abnormal edges.
As for why this is suddenly showing up, I can only imagine that the removal
of EH edges (by marking local stack frame slots non-trapping) have changed
the solution LCM finds to the mode switching problem.
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |rth at gcc dot gnu dot org
|dot org |
Status|UNCONFIRMED |ASSIGNED
Ever Confirmed| |1
Last reconfirmed|0000-00-00 00:00:00 |2005-09-03 00:27:51
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23706