[Bug ipa/72657] New: [7 regression][CHKP] internal compiler error: in ix86_expand_builtin
ienkovich at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Jul 26 14:20:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=72657
Bug ID: 72657
Summary: [7 regression][CHKP] internal compiler error: in
ix86_expand_builtin
Product: gcc
Version: 7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: ipa
Assignee: unassigned at gcc dot gnu.org
Reporter: ienkovich at gcc dot gnu.org
Target Milestone: ---
Here is a reproducer:
>cat small.i
int a;
int *b;
static void __attribute__((noinline))
fn2 (const char *c)
{
if (!c)
__builtin_abort ();
}
static int *
fn1 ()
{
if (a)
fn2(__PRETTY_FUNCTION__);
return 0;
}
int
main ()
{
b = fn1();
return a;
}
>gcc -O3 -flto -fcheck-pointer-bounds -mmpx -march=haswell small.i
small.i: In function 'main.chkp':
small.i:20:1: internal compiler error: in ix86_expand_builtin, at
config/i386/i386.c:41299
main ()
^
...
Regression is caused by r238709. Dump shows we don't inline call to
fn1 properly. As a result we get
__bound_tmp.2_5 = __builtin_ia32_bndret (0B);
Which is invalid IL because we always expect SSA_NAME as an argument
of bndret call.
More information about the Gcc-bugs
mailing list