https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83104
Bug ID: 83104 Summary: [8 Regression] ICE: Segmentation fault Product: gcc Version: 8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: trippels at gcc dot gnu.org CC: law at gcc dot gnu.org Target Milestone: --- ~ % cat fetch-value.i int *a; int foo() { if (a && a - (int *)0 > 0) return 0; } ~ % gcc -O2 -c fetch-value.i during GIMPLE pass: vrp fetch-value.i: In function ‘foo’: fetch-value.i:2:5: internal compiler error: Segmentation fault int foo() { ^~~ 0x10985953 crash_signal ../../gcc/gcc/toplev.c:325 0x1020fa7c tree_int_cst_elt_check(tree_node const*, int, char const*, int, char const*) ../../gcc/gcc/tree.h:3277 0x1020fa7c wi::to_wide(tree_node const*) ../../gcc/gcc/tree.h:5246 0x10dabb9b vr_values::two_valued_val_range_p(tree_node*, tree_node**, tree_node**) ../../gcc/gcc/vr-values.c:4053 0x10dac783 vr_values::simplify_stmt_using_ranges(gimple_stmt_iterator*) ../../gcc/gcc/vr-values.c:4116 0x10cefb9b vrp_folder::simplify_stmt_using_ranges(gimple_stmt_iterator*) ../../gcc/gcc/tree-vrp.c:6362 0x10cefb9b vrp_folder::fold_stmt(gimple_stmt_iterator*) ../../gcc/gcc/tree-vrp.c:6437 0x10bcc5a3 substitute_and_fold_dom_walker::before_dom_children(basic_block_def*) ../../gcc/gcc/tree-ssa-propagate.c:1073 0x1126ee9f dom_walker::walk(basic_block_def*) ../../gcc/gcc/domwalk.c:308 0x10bcb33f substitute_and_fold_engine::substitute_and_fold() ../../gcc/gcc/tree-ssa-propagate.c:1173 0x10cf00e3 vrp_prop::vrp_finalize(bool) ../../gcc/gcc/tree-vrp.c:6788 0x10d013df execute_vrp ../../gcc/gcc/tree-vrp.c:6864