From 48eda34624fe5de050ae5ee38a360155ab188c39 Mon Sep 17 00:00:00 2001 From: Andrew MacLeod Date: Mon, 25 Nov 2024 09:50:33 -0500 Subject: [PATCH] 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. --- 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)) -- 2.47.2