[Bug tree-optimization/87059] [9 Regression] internal compiler error: in set_value_range, at tree-vrp.c:289

aldyh at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Aug 24 16:31:00 GMT 2018


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

--- Comment #19 from Aldy Hernandez <aldyh at gcc dot gnu.org> ---
(In reply to H.J. Lu from comment #17)
> On x86-64:
> 
> [hjl@gnu-cfl-1 gcc]$ cat x.c
> int a, b;
> 
> void
> c(void) {
>   if (b)
>     b = a / b;
> }
> [hjl@gnu-cfl-1 gcc]$ ./xgcc -B./  -O3 -funroll-loops -ffast-math -fwrapv -S
> x.c
> during GIMPLE pass: evrp
> x.c: In function ‘c’:
> x.c:7:1: internal compiler error: Segmentation fault
> 7 | }
>   | ^
> 0x102b902 crash_signal
> 	/export/gnu/import/git/sources/gcc/gcc/toplev.c:325
> 0xb3e3b2 generic_wide_int<wide_int_ref_storage<false, true> >::elt(unsigned
> int) const
> 	/export/gnu/import/git/sources/gcc/gcc/wide-int.h:908
> 0x13b04cf wide_int_to_tree_1
> 	/export/gnu/import/git/sources/gcc/gcc/tree.c:1488
> 0x13b0edb wide_int_to_tree(tree_node*, poly_int<1u,
> generic_wide_int<wide_int_ref_storage<false, true> > > const&)
> 	/export/gnu/import/git/sources/gcc/gcc/tree.c:1676
> 0x1396b58 extract_range_from_binary_expr_1(value_range*, tree_code,
> tree_node*, value_range*, value_range*)
> 	/export/gnu/import/git/sources/gcc/gcc/tree-vrp.c:1675
> 0x1395921 extract_range_from_binary_expr_1(value_range*, tree_code,
> tree_node*, value_range*, value_range*)
> 	/export/gnu/import/git/sources/gcc/gcc/tree-vrp.c:1373
> 0x1445e2b vr_values::extract_range_from_binary_expr(value_range*, tree_code,
> tree_node*, tree_node*, tree_node*)
> 	/export/gnu/import/git/sources/gcc/gcc/vr-values.c:768
> 0x1448d02 vr_values::extract_range_from_assignment(value_range*, gassign*)
> 	/export/gnu/import/git/sources/gcc/gcc/vr-values.c:1429
> 0x144a8f8 vr_values::vrp_visit_assignment_or_call(gimple*, tree_node**,
> value_range*)
> 	/export/gnu/import/git/sources/gcc/gcc/vr-values.c:2048
> 0x144c7d7 vr_values::extract_range_from_stmt(gimple*, edge_def**,
> tree_node**, value_range*)
> 	/export/gnu/import/git/sources/gcc/gcc/vr-values.c:2744
> 0x1c20820 evrp_range_analyzer::record_ranges_from_stmt(gimple*, bool)
> 	/export/gnu/import/git/sources/gcc/gcc/gimple-ssa-evrp-analyze.c:293
> 0x1c1dfee evrp_dom_walker::before_dom_children(basic_block_def*)
> 	/export/gnu/import/git/sources/gcc/gcc/gimple-ssa-evrp.c:139
> 0x1bece59 dom_walker::walk(basic_block_def*)
> 	/export/gnu/import/git/sources/gcc/gcc/domwalk.c:353
> 0x1c1e791 execute_early_vrp
> 	/export/gnu/import/git/sources/gcc/gcc/gimple-ssa-evrp.c:310
> 0x1c1e85c execute
> 	/export/gnu/import/git/sources/gcc/gcc/gimple-ssa-evrp.c:347
> Please submit a full bug report,
> with preprocessed source if appropriate.
> Please include the complete backtrace with any bug report.
> See <https://gcc.gnu.org/bugs/> for instructions.
> [hjl@gnu-cfl-1 gcc]$


hj.  I think what you are reporting on x86 is pr87073 instead, and has been
fixed in mainline.


More information about the Gcc-bugs mailing list