https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87197
Bug ID: 87197 Summary: [9 Regression] ICE in is_gimple_reg_type at gimple-expr.h:75 since r264021 Product: gcc Version: 9.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org CC: rguenth at gcc dot gnu.org Target Milestone: --- Following isolated snippet from perlbench cases an ICE: $ cat pp_pack.i int a, c, e, f, g; void h (int i) { a = i; } void j (char *i, long k) { while (k--) c = *i++; } void l (unsigned char *i, long k) { unsigned char *b = i + k; while (i < b) { h (*i); i++; } } void m () { while (e) { float d = g; l ((char *) &d, sizeof (g)); if (f) j ((char *) &d, sizeof (g)); } } $ gcc pp_pack.i -c -O3 during GIMPLE pass: cunrolli pp_pack.i: In function ‘m’: pp_pack.i:24:1: internal compiler error: Segmentation fault 24 | m () | ^ 0xd34cc6 crash_signal /home/marxin/Programming/gcc/gcc/toplev.c:325 0x7ffff6bc310f ??? /usr/src/debug/glibc-2.27-6.1.x86_64/signal/../sysdeps/unix/sysv/linux/x86_64/sigaction.c:0 0xa87ce5 is_gimple_reg_type /home/marxin/Programming/gcc/gcc/gimple-expr.h:75 0xa87ce5 is_gimple_val(tree_node*) /home/marxin/Programming/gcc/gcc/gimple-expr.c:789 0xd6be39 verify_gimple_assign_unary /home/marxin/Programming/gcc/gcc/tree-cfg.c:3576 0xd7dc61 verify_gimple_in_cfg(function*, bool) /home/marxin/Programming/gcc/gcc/tree-cfg.c:5360 0xc5072e execute_function_todo /home/marxin/Programming/gcc/gcc/passes.c:1943 0xc5104a execute_todo /home/marxin/Programming/gcc/gcc/passes.c:1997