This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/50823] [4.7 Regression] ICE in inline_small_functions, at ipa-inline.c:1407
- From: "belyshev at depni dot sinp.msu.ru" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 27 Oct 2011 21:42:38 +0000
- Subject: [Bug middle-end/50823] [4.7 Regression] ICE in inline_small_functions, at ipa-inline.c:1407
- Auto-submitted: auto-generated
- References: <bug-50823-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50823
Serge Belyshev <belyshev at depni dot sinp.msu.ru> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |ice-on-valid-code
CC| |belyshev at depni dot
| |sinp.msu.ru
--- Comment #7 from Serge Belyshev <belyshev at depni dot sinp.msu.ru> 2011-10-27 21:42:38 UTC ---
Slightly smaller testcase, fails with -O2 -finline-functions:
int k1, k2, k3, k4, k5, k6, k7, k8;
void set_first_insn (int);
void set_last_insn (void);
static int make_insn_raw (void)
{
set_first_insn (0);
set_last_insn ();
return k1;
}
static void add_insn_after (void)
{
if (k2)
k3 = k4;
if (k5)
k6 = k7;
}
void emit_pattern_after_noloc (int (make_raw) (void))
{
if (k8)
{
make_raw ();
add_insn_after ();
}
}
void emit_insn_after_noloc (void)
{
emit_pattern_after_noloc (make_insn_raw);
}
void emit_debug_insn_before_setloc (int k9)
{
if (k9)
make_insn_raw ();
}