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

Reply via email to