[Bug rtl-optimization/80903] New: [8 Regression] ICE: internal consistency failure (error: invalid rtl sharing found in the insn)
asolokha at gmx dot com
gcc-bugzilla@gcc.gnu.org
Sun May 28 17:02:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80903
Bug ID: 80903
Summary: [8 Regression] ICE: internal consistency failure
(error: invalid rtl sharing found in the insn)
Product: gcc
Version: 8.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: rtl-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: asolokha at gmx dot com
Target Milestone: ---
Target: powerpc-*-linux-gnu*, powerpcspe-*-linux-gnu*
gcc-8.0.0-alpha20170521 snapshot ICEs when compiling the following snippet w/
-mcpu=powerpc -O2 (-O3, -Ofast) -funroll-loops:
short int ws;
void
oe (int rw, short int vr, short int qo)
{
if (vr != 0)
{
const short int sp = 37;
vr = 0;
while (vr < sp)
{
while (vr < sp)
{
al:
++vr;
}
for (vr = 0; vr < sp - 1; ++vr)
{
}
if (qo != 0)
{
--ws;
vr *= ws;
}
qo = rw;
}
rw = 0;
}
goto al;
}
% powerpc-e300c3-linux-gnu-gcc-8.0.0-alpha20170521 -mcpu=powerpc -O2
-funroll-loops -c avdjh81j.c
avdjh81j.c: In function 'oe':
avdjh81j.c:32:1: error: invalid rtl sharing found in the insn
}
^
(insn 450 449 452 81 (set (subreg:HI (reg:SI 220) 2)
(subreg:HI (reg:SI 222) 2)) -1
(nil))
avdjh81j.c:32:1: error: shared rtx
(subreg:HI (reg:SI 220) 2)
avdjh81j.c:32:1: internal compiler error: internal consistency failure
0x84f5de verify_rtx_sharing
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20170521/work/gcc-8-20170521/gcc/emit-rtl.c:2777
0x84f4ef verify_rtx_sharing
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20170521/work/gcc-8-20170521/gcc/emit-rtl.c:2792
0x84f9de verify_insn_sharing
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20170521/work/gcc-8-20170521/gcc/emit-rtl.c:2863
0x855b77 verify_rtl_sharing()
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20170521/work/gcc-8-20170521/gcc/emit-rtl.c:2886
0xb465a6 execute_function_todo
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20170521/work/gcc-8-20170521/gcc/passes.c:1990
0xb473eb execute_todo
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20170521/work/gcc-8-20170521/gcc/passes.c:2023
It's reproducible not only w/ -mcpu=powerpc, but actually w/ any target CPU
name from the following list: 401 403 476 476fp 601 604 8540 8548 a2 e300c2
e300c3 e500mc e500mc64 e5500 e6500 power6 power6x powerpc64 rs64 titan.
More information about the Gcc-bugs
mailing list