https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106593
Bug ID: 106593 Summary: [13 Regression] ICE in range_on_path_entry, at gimple-range-path.cc:164 since r13-2020-g16b013c9d9b4d950 Product: gcc Version: 13.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org CC: rguenth at gcc dot gnu.org Blocks: 26163 Target Milestone: --- The following crashes, reduced from 507.cactuBSSN_r: $ cat cactu.i int *PUGHInterp_DriverInterpolatePrepareParameterTable_N_boundary_points_to_omit, *PUGHInterp_DriverInterpolatePrepareParameterTable_bbox; double * PUGHInterp_DriverInterpolatePrepareParameterTable_boundary_extrapolation_tolerance; void PUGHInterp_DriverInterpolatePrepareParameterTable() { int i; for (; i; i++) if (PUGHInterp_DriverInterpolatePrepareParameterTable_bbox[i]) { PUGHInterp_DriverInterpolatePrepareParameterTable_N_boundary_points_to_omit [i] = 0; PUGHInterp_DriverInterpolatePrepareParameterTable_boundary_extrapolation_tolerance [i] = 0.0; } } $ gcc -Ofast cactu.i -march=znver2 -c during GIMPLE pass: threadfull cactu.i: In function 'PUGHInterp_DriverInterpolatePrepareParameterTable': cactu.i:8:1: internal compiler error: in range_on_path_entry, at gimple-range-path.cc:164 8 | PUGHInterp_DriverInterpolatePrepareParameterTable() { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 0x7d243c path_range_query::range_on_path_entry(vrange&, tree_node*) /home/marxin/Programming/gcc/gcc/gimple-range-path.cc:164 0x111bd50 path_range_query::ssa_range_in_phi(vrange&, gphi*) /home/marxin/Programming/gcc/gcc/gimple-range-path.cc:321 0x111b27d path_range_query::range_defined_in_block(vrange&, tree_node*, basic_block_def*) /home/marxin/Programming/gcc/gcc/gimple-range-path.cc:348 0x111b36a path_range_query::compute_ranges_in_phis(basic_block_def*) /home/marxin/Programming/gcc/gcc/gimple-range-path.cc:394 0x111be9c path_range_query::compute_ranges_in_block(basic_block_def*) /home/marxin/Programming/gcc/gcc/gimple-range-path.cc:442 0x111c882 path_range_query::compute_ranges(vec<basic_block_def*, va_heap, vl_ptr> const&, bitmap_head const*) /home/marxin/Programming/gcc/gcc/gimple-range-path.cc:673 0x11a53a2 back_threader::find_taken_edge_cond(vec<basic_block_def*, va_heap, vl_ptr> const&, gcond*) /home/marxin/Programming/gcc/gcc/tree-ssa-threadbackward.cc:317 0x11a5e93 back_threader::maybe_register_path() /home/marxin/Programming/gcc/gcc/tree-ssa-threadbackward.cc:231 0x11a645e back_threader::find_paths_to_names(basic_block_def*, bitmap_head*, unsigned int) /home/marxin/Programming/gcc/gcc/tree-ssa-threadbackward.cc:355 0x11a6c9b back_threader::find_paths_to_names(basic_block_def*, bitmap_head*, unsigned int) /home/marxin/Programming/gcc/gcc/tree-ssa-threadbackward.cc:471 0x11a7455 back_threader::find_paths(basic_block_def*, tree_node*) /home/marxin/Programming/gcc/gcc/tree-ssa-threadbackward.cc:529 0x11a7651 back_threader::thread_blocks() /home/marxin/Programming/gcc/gcc/tree-ssa-threadbackward.cc:943 0x11a76f8 execute /home/marxin/Programming/gcc/gcc/tree-ssa-threadbackward.cc:1073 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. Referenced Bugs: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26163 [Bug 26163] [meta-bug] missed optimization in SPEC (2k17, 2k and 2k6 and 95)