http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55405
Mikael Pettersson changed:
What|Removed |Added
CC||mikpe at it dot uu.se
--- Comment #2 from Mikael Pettersson 2012-11-25
11:11:35 UTC ---
The ICE at -O3 was first silenced for 4.7 by r171450:
http://gcc.gnu.org/ml/gcc-cvs/2011-03/msg00874.html,
when Richard Biener added an FRE pass after early SRA.
At that point the ICE still occurs with -O3 -fno-tree-fre.
The ICE at -O3 -fno-tree-fre was then silenced for 4.7 by r181014:
http://gcc.gnu.org/ml/gcc-cvs/2011-11/msg00300.html,
a missed-optimization patch.
The ICE before r181014 occurs because except.c:emit_to_new_bb_before is called
on an insn whose BLOCK_FOR_INSN is NULL, but that NULL pointer is
unconditionally dereferenced causing a SEGV. I don't see a sane way of
handling that locally.