aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimple-range-cache.cc
diff options
context:
space:
mode:
authorAndrew MacLeod <amacleod@redhat.com>2024-05-09 14:14:31 -0400
committerAndrew MacLeod <amacleod@redhat.com>2024-05-23 16:49:33 -0400
commita049f08239ada7d4187e9c12fab9c879668a0d05 (patch)
tree275293edacec292c34eb2c71a394d36fe8588690 /gcc/gimple-range-cache.cc
parent76153635b9dc811b3ddc2c2e028d74c92d174c2e (diff)
downloadgcc-a049f08239ada7d4187e9c12fab9c879668a0d05.zip
gcc-a049f08239ada7d4187e9c12fab9c879668a0d05.tar.gz
gcc-a049f08239ada7d4187e9c12fab9c879668a0d05.tar.bz2
Gori_compute no longer inherits from gori_map.
This patch moves the gori_compute object away from inheriting a gori_map object and instead it as a local member. Export it via map (). * gimple-range-cache.cc (ranger_cache::ranger_cache): Access gori_map via member call. (ranger_cache::dump_bb): Likewise. (ranger_cache::get_global_range): Likewise. (ranger_cache::set_global_range): Likewise. (ranger_cache::register_inferred_value): Likewise. * gimple-range-fold.cc (fold_using_range::range_of_range_op): Likewise. (fold_using_range::range_of_address): Likewise. (fold_using_range::range_of_phi): Likewise. * gimple-range-gori.cc (gori_compute::compute_operand_range_switch): likewise. (gori_compute::compute_operand_range): Likewise. (gori_compute::compute_logical_operands): Likewise. (gori_compute::refine_using_relation): Likewise. (gori_compute::compute_operand1_and_operand2_range): Likewise. (gori_compute::may_recompute_p): Likewise. (gori_compute::has_edge_range_p): Likewise. (gori_compute::outgoing_edge_range_p): Likewise. (gori_compute::condexpr_adjust): Likewise. * gimple-range-gori.h (class gori_compute): Do not inherit from gori_map. (gori_compute::m_map): New. * gimple-range-path.cc (gimple-range-path.cc): Use gori_map member. (path_range_query::compute_exit_dependencies): Likewise. * gimple-range.cc (gimple_ranger::range_of_stmt): Likewise. (gimple_ranger::register_transitive_inferred_ranges): Likewise. * tree-ssa-dom.cc (set_global_ranges_from_unreachable_edges): Likewise. * tree-ssa-threadedge.cc (compute_exit_dependencies): Likewise. * tree-vrp.cc (remove_unreachable::handle_early): Likewise. (remove_unreachable::remove_and_update_globals): Likewise.
Diffstat (limited to 'gcc/gimple-range-cache.cc')
-rw-r--r--gcc/gimple-range-cache.cc16
1 files changed, 8 insertions, 8 deletions
diff --git a/gcc/gimple-range-cache.cc b/gcc/gimple-range-cache.cc
index 34dc9c4..c524758 100644
--- a/gcc/gimple-range-cache.cc
+++ b/gcc/gimple-range-cache.cc
@@ -969,7 +969,7 @@ ranger_cache::ranger_cache (int not_executable_flag, bool use_imm_uses)
{
basic_block bb = BASIC_BLOCK_FOR_FN (cfun, x);
if (bb)
- m_gori.exports (bb);
+ m_gori.map ()->exports (bb);
}
m_update = new update_list ();
}
@@ -1000,7 +1000,7 @@ ranger_cache::dump (FILE *f)
void
ranger_cache::dump_bb (FILE *f, basic_block bb)
{
- m_gori.gori_map::dump (f, bb, false);
+ m_gori.map ()->dump (f, bb, false);
m_on_entry.dump (f, bb);
m_relation->dump (f, bb);
}
@@ -1033,8 +1033,8 @@ ranger_cache::get_global_range (vrange &r, tree name, bool &current_p)
current_p = false;
if (had_global)
current_p = r.singleton_p ()
- || m_temporal->current_p (name, m_gori.depend1 (name),
- m_gori.depend2 (name));
+ || m_temporal->current_p (name, m_gori.map ()->depend1 (name),
+ m_gori.map ()->depend2 (name));
else
{
// If no global value has been set and value is VARYING, fold the stmt
@@ -1071,8 +1071,8 @@ ranger_cache::set_global_range (tree name, const vrange &r, bool changed)
if (!changed)
{
// If there are dependencies, make sure this is not out of date.
- if (!m_temporal->current_p (name, m_gori.depend1 (name),
- m_gori.depend2 (name)))
+ if (!m_temporal->current_p (name, m_gori.map ()->depend1 (name),
+ m_gori.map ()->depend2 (name)))
m_temporal->set_timestamp (name);
return;
}
@@ -1097,7 +1097,7 @@ ranger_cache::set_global_range (tree name, const vrange &r, bool changed)
if (r.singleton_p ()
|| (POINTER_TYPE_P (TREE_TYPE (name)) && r.nonzero_p ()))
- m_gori.set_range_invariant (name);
+ m_gori.map ()->set_range_invariant (name);
m_temporal->set_timestamp (name);
}
@@ -1783,7 +1783,7 @@ ranger_cache::register_inferred_value (const vrange &ir, tree name,
m_on_entry.set_bb_range (name, bb, r);
// If this range was invariant before, remove invariant.
if (!m_gori.has_edge_range_p (name))
- m_gori.set_range_invariant (name, false);
+ m_gori.map ()->set_range_invariant (name, false);
}
}