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

--- Comment #4 from Martin Liška <marxin at gcc dot gnu.org> ---
For the 2 test-cases we reach these backtraces:

$ ./xgcc -B. test.c -O1
../../gcc/poly-int.h:1941:12: runtime error: negation of -9223372036854775808
cannot be represented in type 'long int'; cast to an unsigned type to negate
this value to itself
    #0 0xc8bbdc in poly_result<poly_int_traits<long>::coeff_type,
poly_int_traits<long>::coeff_type,
poly_coeff_pair_traits<poly_int_traits<long>::coeff_type,
poly_int_traits<long>::coeff_type>::result_kind>::type known_alignment<1u,
long>(poly_int_pod<1u, long> const&) ../../gcc/poly-int.h:1941
    #1 0x3db9fdd in force_int_to_mode ../../gcc/combine.c:8949
    #2 0x3db8c5b in force_to_mode ../../gcc/combine.c:8802
    #3 0x3da45a8 in simplify_set ../../gcc/combine.c:6876
    #4 0x3d9f16d in combine_simplify_rtx ../../gcc/combine.c:6456
    #5 0x3d96712 in subst ../../gcc/combine.c:5727
    #6 0x3d950fa in subst ../../gcc/combine.c:5590
    #7 0x3d7ead4 in try_combine ../../gcc/combine.c:3420
    #8 0x3d6e699 in combine_instructions ../../gcc/combine.c:1306
    #9 0x3df4563 in rest_of_handle_combine ../../gcc/combine.c:15076
    #10 0x3df4702 in execute ../../gcc/combine.c:15121
    #11 0x1baf287 in execute_one_pass(opt_pass*) ../../gcc/passes.c:2487
    #12 0x1bafb1d in execute_pass_list_1 ../../gcc/passes.c:2573
    #13 0x1bafbd2 in execute_pass_list_1 ../../gcc/passes.c:2574
    #14 0x1bafc71 in execute_pass_list(function*, opt_pass*)
../../gcc/passes.c:2584
    #15 0xe52f0c in cgraph_node::expand() ../../gcc/cgraphunit.c:2198
    #16 0xe544d3 in expand_all_functions ../../gcc/cgraphunit.c:2336
    #17 0xe56b42 in symbol_table::compile() ../../gcc/cgraphunit.c:2687
    #18 0xe575a8 in symbol_table::finalize_compilation_unit()
../../gcc/cgraphunit.c:2865
    #19 0x2006fad in compile_file ../../gcc/toplev.c:481
    #20 0x200ea9b in do_compile ../../gcc/toplev.c:2205
    #21 0x200f0c9 in toplev::main(int, char**) ../../gcc/toplev.c:2340
    #22 0x438f452 in main ../../gcc/main.c:39
    #23 0x7ffff6e80b7a in __libc_start_main ../csu/libc-start.c:308
    #24 0x85f579 in _start
(/home/marxin/Programming/gcc2/objdir/gcc/cc1+0x85f579)

and

../../gcc/poly-int.h:845:5: runtime error: signed integer overflow:
9223372036854775804 + 4 cannot be represented in type 'long int'
    #0 0xc088f7 in poly_int<1u, poly_result<long, long,
poly_coeff_pair_traits<long, long>::result_kind>::type> operator+<1u, long,
long>(poly_int_pod<1u, long> const&, poly_int_pod<1u, long> const&)
../../gcc/poly-int.h:845
    #1 0x1e2e0f2 in rtx_addr_can_trap_p_1 ../../gcc/rtlanal.c:524
    #2 0x1e2ef7d in rtx_addr_can_trap_p_1 ../../gcc/rtlanal.c:659
    #3 0x1e2ec71 in rtx_addr_can_trap_p_1 ../../gcc/rtlanal.c:645
    #4 0x1e3e6fc in may_trap_p_1(rtx_def const*, unsigned int)
../../gcc/rtlanal.c:2836
    #5 0x1e3fc4c in may_trap_p_1(rtx_def const*, unsigned int)
../../gcc/rtlanal.c:2937
    #6 0x1e3fedf in may_trap_p(rtx_def const*) ../../gcc/rtlanal.c:2956
    #7 0x1cefd4b in copyprop_hardreg_forward_1 ../../gcc/regcprop.c:804
    #8 0x1cf6191 in cprop_hardreg_bb ../../gcc/regcprop.c:1320
    #9 0x1cf6da4 in execute ../../gcc/regcprop.c:1385
    #10 0x1baf287 in execute_one_pass(opt_pass*) ../../gcc/passes.c:2487
    #11 0x1bafb1d in execute_pass_list_1 ../../gcc/passes.c:2573
    #12 0x1bafbd2 in execute_pass_list_1 ../../gcc/passes.c:2574
    #13 0x1bafbd2 in execute_pass_list_1 ../../gcc/passes.c:2574
    #14 0x1bafc71 in execute_pass_list(function*, opt_pass*)
../../gcc/passes.c:2584
    #15 0xe52f0c in cgraph_node::expand() ../../gcc/cgraphunit.c:2198
    #16 0xe544d3 in expand_all_functions ../../gcc/cgraphunit.c:2336
    #17 0xe56b42 in symbol_table::compile() ../../gcc/cgraphunit.c:2687
    #18 0xe575a8 in symbol_table::finalize_compilation_unit()
../../gcc/cgraphunit.c:2865
    #19 0x2006fad in compile_file ../../gcc/toplev.c:481
    #20 0x200ea9b in do_compile ../../gcc/toplev.c:2205
    #21 0x200f0c9 in toplev::main(int, char**) ../../gcc/toplev.c:2340
    #22 0x438f452 in main ../../gcc/main.c:39
    #23 0x7ffff6e80b7a in __libc_start_main ../csu/libc-start.c:308
    #24 0x85f579 in _start
(/home/marxin/Programming/gcc2/objdir/gcc/cc1+0x85f579)

Reply via email to