https://gcc.gnu.org/g:48eda34624fe5de050ae5ee38a360155ab188c39
commit r15-5998-g48eda34624fe5de050ae5ee38a360155ab188c39 Author: Andrew MacLeod <amacl...@redhat.com> Date: Mon Nov 25 09:50:33 2024 -0500 Do not calculate an entry range for invariant names. If an SSA_NAME is invariant, do not calculate an on_entry value. PR tree-optimization/117467 * gimple-range-cache.cc (ranger_cache::entry_range): Do not invoke range_from_dom for invariant ssa-names. Diff: --- gcc/gimple-range-cache.cc | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gcc/gimple-range-cache.cc b/gcc/gimple-range-cache.cc index 8b7189eb5b83..c9016fe988db 100644 --- a/gcc/gimple-range-cache.cc +++ b/gcc/gimple-range-cache.cc @@ -1183,6 +1183,13 @@ ranger_cache::entry_range (vrange &r, tree name, basic_block bb, return; } + // If NAME is invariant, simply return the defining range. + if (!gori ().has_edge_range_p (name)) + { + range_of_def (r, name); + return; + } + // Look for the on-entry value of name in BB from the cache. // Otherwise pick up the best available global value. if (!m_on_entry.get_bb_range (r, name, bb))