https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68835

            Bug ID: 68835
           Summary: ICE in set_value_range, at tree-vrp.c:387, with
                    __int128 bit field
           Product: gcc
           Version: 6.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: arnez at linux dot vnet.ibm.com
  Target Milestone: ---

"tst.c":

unsigned __int128
foo (unsigned long a, unsigned long b)
{
  unsigned __int128 x = (unsigned __int128) a * b;
  struct { unsigned __int128 a: 96; } w;

  w.a = x;
  return w.a;
}

$ gcc -O2 -c -o tst.o tst.c
tst.c: In function ‘foo’:
tst.c:2:1: internal compiler error: in set_value_range, at tree-vrp.c:387
 foo (unsigned long a, unsigned long b)
 ^~~

0xd94363 set_value_range
        /home/arnez/gtools/gcc/gcc/tree-vrp.c:387
0xda878d set_value_range_to_nonnegative
        /home/arnez/gtools/gcc/gcc/tree-vrp.c:586
0xda878d extract_range_basic
        /home/arnez/gtools/gcc/gcc/tree-vrp.c:4110
0xda9e5a extract_range_from_assignment
        /home/arnez/gtools/gcc/gcc/tree-vrp.c:4154
0xdab5d8 vrp_visit_assignment_or_call
        /home/arnez/gtools/gcc/gcc/tree-vrp.c:7033
0xdabeba vrp_visit_stmt
        /home/arnez/gtools/gcc/gcc/tree-vrp.c:7913
0xcb3abd simulate_stmt
        /home/arnez/gtools/gcc/gcc/tree-ssa-propagate.c:331
0xcb4447 simulate_block
        /home/arnez/gtools/gcc/gcc/tree-ssa-propagate.c:509
0xcb4447 ssa_propagate(ssa_prop_result (*)(gimple*, edge_def**, tree_node**),
ssa_prop_result (*)(gphi*))
        /home/arnez/gtools/gcc/gcc/tree-ssa-propagate.c:926
0xda07e7 execute_vrp
        /home/arnez/gtools/gcc/gcc/tree-vrp.c:10319
0xda07e7 execute
        /home/arnez/gtools/gcc/gcc/tree-vrp.c:10405

Reply via email to