This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/83507] New: [8 Regression] ICE in internal_dfa_insn_code_* for powerpc targets
- From: "asolokha at gmx dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 20 Dec 2017 10:04:52 +0000
- Subject: [Bug target/83507] New: [8 Regression] ICE in internal_dfa_insn_code_* for powerpc targets
- Auto-submitted: auto-generated
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83507
Bug ID: 83507
Summary: [8 Regression] ICE in internal_dfa_insn_code_* for
powerpc targets
Product: gcc
Version: 8.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: target
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-alpha20171217 snapshot (r255766) ICEs when compiling the following
snippet for powerpc targets w/ -mcpu=power7 (476, 476fp, 604, 604e, 620, 630,
cell, power3, power8, powerpc, powerpc64le) -O2 -fmodulo-sched -fno-tree-ter
-fno-tree-coalesce-vars:
void
r2 (unsigned short int qe, unsigned char ng)
{
unsigned char *k5 = &ng;
unsigned short int w4;
int a8;
while (ng < 3)
{
if (qe != 0)
++ng;
++ng;
}
for (a8 = 0; a8 < 5; ++a8)
{
int l3;
l3 = 1;
l3 += w4 > qe;
ng &= l3;
}
do
{
a8 += ng;
qe = a8;
}
while (qe != 0);
}
% powerpc-e300c3-linux-gnu-gcc-8.0.0-alpha20171217 -O2 -fmodulo-sched
-fno-tree-ter -fno-tree-coalesce-vars -c r9ldrjtv.c
r9ldrjtv.c: In function 'r2':
r9ldrjtv.c:30:1: error: unrecognizable insn:
}
^
(insn 78 0 0 (set (reg:SI 149)
(reg:SI 76 ca)) -1
(nil))
during RTL pass: sms
r9ldrjtv.c:30:1: internal compiler error: in internal_dfa_insn_code_power7, at
config/rs6000/rs6000.md:7837
0x5484ba _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20171217/work/gcc-8-20171217/gcc/rtl-error.c:108
0x5484fa _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20171217/work/gcc-8-20171217/gcc/rtl-error.c:116
0x11cb121 internal_dfa_insn_code_power7(rtx_insn*)
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20171217/work/gcc-8-20171217/gcc/config/rs6000/rs6000.md:7837
0x11b60d3 dfa_insn_code
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20171217/work/build/gcc/insn-automata.c:123145
0x11b60d3 insn_latency(rtx_insn*, rtx_insn*)
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20171217/work/build/gcc/insn-automata.c:124510
0x1459e9d schedule_reg_move
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20171217/work/gcc-8-20171217/gcc/modulo-sched.c:589
0x1459e9d schedule_reg_moves
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20171217/work/gcc-8-20171217/gcc/modulo-sched.c:797
0x145bbf0 sms_schedule
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20171217/work/gcc-8-20171217/gcc/modulo-sched.c:1678
0x145d382 execute
/var/tmp/portage/cross-powerpc-e300c3-linux-gnu/gcc-8.0.0_alpha20171217/work/gcc-8-20171217/gcc/modulo-sched.c:3342