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