https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78413
Bug ID: 78413
Summary: [7 Regression] ICE in single_pred_edge, at
basic-block.h:361
Product: gcc
Version: 7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: tree-optimization
Assignee: unassigned at gcc dot gnu.org
Reporter: trippels at gcc dot gnu.org
CC: wschmidt at gcc dot gnu.org
Target Milestone: ---
markus@x4 /tmp % cat test.i
extern long long int llrint(double x);
int a;
double b;
__attribute__((cold)) void decode_init() {
int c, d = 0;
for (; d < 12; d++) {
if (d)
b = 0;
c = 0;
for (; c < 6; c++)
a = b ? llrint(b) : 0;
}
}
markus@x4 /tmp % gcc -O3 -ffast-math -c test.i
test.i: In function ‘decode_init’:
test.i:4:28: internal compiler error: in single_pred_edge, at basic-block.h:361
__attribute__((cold)) void decode_init() {
^~~~~~~~~~~
0x5a4ea1 single_pred_edge
../../gcc/gcc/basic-block.h:361
0xbed2bf single_pred
../../gcc/gcc/basic-block.h:380
0xbed2bf versionable_outer_loop_p
../../gcc/gcc/tree-if-conv.c:2592
0xbed2bf tree_if_conversion(loop*)
../../gcc/gcc/tree-if-conv.c:2813
0xbed611 execute
../../gcc/gcc/tree-if-conv.c:2893