https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96822
Bug ID: 96822 Summary: [11 regression] Starting with r11-2833 ICE in decompose, at wide-int.h:984 Product: gcc Version: 11.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: seurer at gcc dot gnu.org Target Milestone: --- g:bf19cbc9cea6161f3deb63040601090828c44c53, r11-2883 Unfortunately this is in one of the SPEC 2006 test cases. seurer@genoa:~/gcc/cpu2006/benchspec/CPU2006/456.hmmer/build/build_base_ppc64.0000$ /home/seurer/gcc/git/install/gcc-test/bin/gcc -c -o revcomp.o -DSPEC_CPU -DNDEBUG -m64 -O3 -mcpu=power8 -ffast-math -funroll-loops -fpeel-loops -fvect-cost-model -mpopcntd -mrecip=rsqrt revcomp.c during GIMPLE pass: vrp revcomp.c: In function 'revcomp': revcomp.c:35:1: internal compiler error: in decompose, at wide-int.h:984 35 | revcomp(char *comp, char *seq) | ^~~~~~~ 0x10f4b30f wi::int_traits<generic_wide_int<wide_int_ref_storage<false, false> > >::decompose(long*, unsigned int, generic_wide_int<wide_int_ref_storage<false, false> > const&) /home/seurer/gcc/git/gcc-test/gcc/wide-int.h:984 0x10f4b30f wide_int_ref_storage<false, false>::wide_int_ref_storage<generic_wide_int<wide_int_ref_storage<false, false> > >(generic_wide_int<wide_int_ref_storage<false, false> > const&, unsigned int) /home/seurer/gcc/git/gcc-test/gcc/wide-int.h:1034 0x10f4b30f generic_wide_int<wide_int_ref_storage<false, false> >::generic_wide_int<generic_wide_int<wide_int_ref_storage<false, false> > >(generic_wide_int<wide_int_ref_storage<false, false> > const&, unsigned int) /home/seurer/gcc/git/gcc-test/gcc/wide-int.h:790 0x10f4b30f bool wi::lts_p<generic_wide_int<wide_int_ref_storage<false, false> >, generic_wide_int<wide_int_ref_storage<false, false> > >(generic_wide_int<wide_int_ref_storage<false, false> > const&, generic_wide_int<wide_int_ref_storage<false, false> > const&) /home/seurer/gcc/git/gcc-test/gcc/wide-int.h:1902 0x10f4b30f bool wi::lt_p<generic_wide_int<wide_int_ref_storage<false, false> >, generic_wide_int<wide_int_ref_storage<false, false> > >(generic_wide_int<wide_int_ref_storage<false, false> > const&, generic_wide_int<wide_int_ref_storage<false, false> > const&, signop) /home/seurer/gcc/git/gcc-test/gcc/wide-int.h:1959 0x10f4b30f irange::irange_intersect(irange const&) /home/seurer/gcc/git/gcc-test/gcc/value-range.cc:1701 0x10f4b48f irange::intersect(irange const*) /home/seurer/gcc/git/gcc-test/gcc/value-range.cc:1539 0x10ed3e17 find_case_label_range(gswitch*, irange const*) /home/seurer/gcc/git/gcc-test/gcc/tree-vrp.c:3853 0x10ed43ef find_case_label_range(gswitch*, irange const*) /home/seurer/gcc/git/gcc-test/gcc/tree-vrp.c:3814 0x10ee1b0f simplify_stmt_for_jump_threading /home/seurer/gcc/git/gcc-test/gcc/tree-vrp.c:4184 0x10dee153 simplify_control_stmt_condition /home/seurer/gcc/git/gcc-test/gcc/tree-ssa-threadedge.c:554 0x10def903 thread_through_normal_block /home/seurer/gcc/git/gcc-test/gcc/tree-ssa-threadedge.c:1101 0x10df2593 thread_across_edge /home/seurer/gcc/git/gcc-test/gcc/tree-ssa-threadedge.c:1372 0x10df2ed7 thread_outgoing_edges(basic_block_def*, gcond*, const_and_copies*, avail_exprs_stack*, evrp_range_analyzer*, tree_node* (*)(gimple*, gimple*, avail_exprs_stack*, basic_block_def*)) /home/seurer/gcc/git/gcc-test/gcc/tree-ssa-threadedge.c:1463 0x10ecbef7 vrp_dom_walker::after_dom_children(basic_block_def*) /home/seurer/gcc/git/gcc-test/gcc/tree-vrp.c:4284 0x1178d383 dom_walker::walk(basic_block_def*) /home/seurer/gcc/git/gcc-test/gcc/domwalk.c:352 0x10ee1eef identify_jump_threads /home/seurer/gcc/git/gcc-test/gcc/tree-vrp.c:4339 0x10ee1eef execute_vrp /home/seurer/gcc/git/gcc-test/gcc/tree-vrp.c:4478 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.