diff options
author | Andrew MacLeod <amacleod@redhat.com> | 2024-05-09 14:14:31 -0400 |
---|---|---|
committer | Andrew MacLeod <amacleod@redhat.com> | 2024-05-23 16:49:33 -0400 |
commit | a049f08239ada7d4187e9c12fab9c879668a0d05 (patch) | |
tree | 275293edacec292c34eb2c71a394d36fe8588690 /gcc/tree-vrp.cc | |
parent | 76153635b9dc811b3ddc2c2e028d74c92d174c2e (diff) | |
download | gcc-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/tree-vrp.cc')
-rw-r--r-- | gcc/tree-vrp.cc | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/gcc/tree-vrp.cc b/gcc/tree-vrp.cc index a36c08f..be9df39 100644 --- a/gcc/tree-vrp.cc +++ b/gcc/tree-vrp.cc @@ -210,14 +210,14 @@ remove_unreachable::handle_early (gimple *s, edge e) // Check if every export use is dominated by this branch. tree name; - FOR_EACH_GORI_EXPORT_NAME (m_ranger.gori (), e->src, name) + FOR_EACH_GORI_EXPORT_NAME (*(m_ranger.gori ().map ()), e->src, name) { if (!fully_replaceable (name, e->src)) return; } // Set the global value for each. - FOR_EACH_GORI_EXPORT_NAME (m_ranger.gori (), e->src, name) + FOR_EACH_GORI_EXPORT_NAME (*(m_ranger.gori ().map ()), e->src, name) { Value_Range r (TREE_TYPE (name)); m_ranger.range_on_entry (r, e->dest, name); @@ -287,7 +287,7 @@ remove_unreachable::remove_and_update_globals () gcc_checking_assert (gimple_code (s) == GIMPLE_COND); bool dominate_exit_p = true; - FOR_EACH_GORI_EXPORT_NAME (m_ranger.gori (), e->src, name) + FOR_EACH_GORI_EXPORT_NAME (*(m_ranger.gori ().map ()), e->src, name) { // Ensure the cache is set for NAME in the succ block. Value_Range r(TREE_TYPE (name)); @@ -304,7 +304,8 @@ remove_unreachable::remove_and_update_globals () // If the exit is dominated, add to the export list. Otherwise if this // isn't the final VRP pass, leave the call in the IL. if (dominate_exit_p) - bitmap_ior_into (all_exports, m_ranger.gori ().exports (e->src)); + bitmap_ior_into (all_exports, + m_ranger.gori ().map ()->exports (e->src)); else if (!final_p) continue; |