https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90733
Bug ID: 90733 Summary: [8/9/10 Regression] ICE in simplify_subreg, at simplify-rtx.c:6440 Product: gcc Version: 10.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: gs...@t-online.de Target Milestone: --- Started with early gcc-8 and options -g -O2+ : $ cat z1.c typedef struct { unsigned a : 1; } s; typedef union { s b; _Complex unsigned c; } t; t f (t d) { t e = d; return e; } int g () { t x; t y; x.c = x.b.a; y = f(x); return (x.c != y.c); } $ gcc-10-20190602 -c z1.c -O2 $ $ gcc-10-20190602 -c z1.c -O2 -g z1.c: In function 'g': z1.c:22:12: warning: 'x.b.a' is used uninitialized in this function [-Wuninitialized] 22 | x.c = x.b.a; | ~~~^~ during RTL pass: vartrack z1.c:25:1: internal compiler error: in simplify_subreg, at simplify-rtx.c:6440 25 | } | ^ 0xa67144 simplify_subreg(machine_mode, rtx_def*, machine_mode, poly_int<1u, unsigned long>) ../../gcc/simplify-rtx.c:6440 0xa66b24 simplify_subreg(machine_mode, rtx_def*, machine_mode, poly_int<1u, unsigned long>) ../../gcc/simplify-rtx.c:6544 0xa6ac78 simplify_gen_subreg(machine_mode, rtx_def*, machine_mode, poly_int<1u, unsigned long>) ../../gcc/simplify-rtx.c:6711 0xce16a5 vt_expand_loc_callback ../../gcc/var-tracking.c:8488 0x710f31 cselib_expand_value_rtx_1 ../../gcc/cselib.c:1681 0x7124ae cselib_expand_value_rtx_cb(rtx_def*, bitmap_head*, int, rtx_def* (*)(rtx_def*, bitmap_head*, int, void*), void*) ../../gcc/cselib.c:1562 0xce19e9 vt_expand_var_loc_chain ../../gcc/var-tracking.c:8384 0xce19e9 vt_expand_loc_callback ../../gcc/var-tracking.c:8547 0x710df2 cselib_expand_value_rtx_1 ../../gcc/cselib.c:1716 0x7124ae cselib_expand_value_rtx_cb(rtx_def*, bitmap_head*, int, rtx_def* (*)(rtx_def*, bitmap_head*, int, void*), void*) ../../gcc/cselib.c:1562 0xce19e9 vt_expand_var_loc_chain ../../gcc/var-tracking.c:8384 0xce19e9 vt_expand_loc_callback ../../gcc/var-tracking.c:8547 0x710ced cselib_expand_value_rtx_1 ../../gcc/cselib.c:1755 0x7124ae cselib_expand_value_rtx_cb(rtx_def*, bitmap_head*, int, rtx_def* (*)(rtx_def*, bitmap_head*, int, void*), void*) ../../gcc/cselib.c:1562 0xce19e9 vt_expand_var_loc_chain ../../gcc/var-tracking.c:8384 0xce19e9 vt_expand_loc_callback ../../gcc/var-tracking.c:8547 0x710df2 cselib_expand_value_rtx_1 ../../gcc/cselib.c:1716 0x7124ae cselib_expand_value_rtx_cb(rtx_def*, bitmap_head*, int, rtx_def* (*)(rtx_def*, bitmap_head*, int, void*), void*) ../../gcc/cselib.c:1562 0xce0a65 vt_expand_var_loc_chain ../../gcc/var-tracking.c:8384 0xce0a65 vt_expand_1pvar ../../gcc/var-tracking.c:8660