diff mbox series

[COMMITTED] Remove compare_names* from legacy cond folding.

Message ID 20230426083328.313566-1-aldyh@redhat.com
State New
Headers show
Series [COMMITTED] Remove compare_names* from legacy cond folding. | expand

Commit Message

Aldy Hernandez April 26, 2023, 8:33 a.m. UTC
In a test run I have asserted that the legacy conditional folding only
gets overflows, so this removal is safe.

gcc/ChangeLog:

	* vr-values.cc (get_vr_for_comparison): Remove.
	(compare_name_with_value): Same.
	(vrp_evaluate_conditional_warnv_with_ops): Remove calls to
	compare_name_with_value.
	* vr-values.h: Remove compare_name_with_value.
	Remove get_vr_for_comparison.
---
 gcc/vr-values.cc | 57 ------------------------------------------------
 gcc/vr-values.h  |  2 --
 2 files changed, 59 deletions(-)
diff mbox series

Patch

diff --git a/gcc/vr-values.cc b/gcc/vr-values.cc
index 365f4976a39..1d757eeffc3 100644
--- a/gcc/vr-values.cc
+++ b/gcc/vr-values.cc
@@ -615,58 +615,6 @@  bounds_of_var_in_loop (tree *min, tree *max, range_query *query,
   return true;
 }
 
-/* Helper that gets the value range of the SSA_NAME with version I
-   or a symbolic range containing the SSA_NAME only if the value range
-   is varying or undefined.  Uses TEM as storage for the alternate range.  */
-
-const value_range *
-simplify_using_ranges::get_vr_for_comparison (int i, value_range *tem,
-					      gimple *s)
-{
-  /* Shallow-copy equiv bitmap.  */
-  const value_range *vr = query->get_value_range (ssa_name (i), s);
-
-  /* If name N_i does not have a valid range, use N_i as its own
-     range.  This allows us to compare against names that may
-     have N_i in their ranges.  */
-  if (vr->varying_p () || vr->undefined_p ())
-    {
-      tree ssa = ssa_name (i);
-      tem->set (ssa, ssa);
-      return tem;
-    }
-
-  return vr;
-}
-
-/* Compare all the value ranges for names equivalent to VAR with VAL
-   using comparison code COMP.  Return the same value returned by
-   compare_range_with_value, including the setting of
-   *STRICT_OVERFLOW_P.  */
-
-tree
-simplify_using_ranges::compare_name_with_value
-				(enum tree_code comp, tree var, tree val,
-				 bool *strict_overflow_p, gimple *s)
-{
-  /* Start at -1.  Set it to 0 if we do a comparison without relying
-     on overflow, or 1 if all comparisons rely on overflow.  */
-  int used_strict_overflow = -1;
-
-  /* Compare vars' value range with val.  */
-  value_range tem_vr;
-  const value_range *equiv_vr
-    = get_vr_for_comparison (SSA_NAME_VERSION (var), &tem_vr, s);
-  bool sop = false;
-  tree retval = compare_range_with_value (comp, equiv_vr, val, &sop);
-  if (retval)
-    used_strict_overflow = sop ? 1 : 0;
-
-  if (retval && used_strict_overflow > 0)
-    *strict_overflow_p = true;
-  return retval;
-}
-
 /* Helper function for vrp_evaluate_conditional_warnv & other
    optimizers.  */
 
@@ -780,11 +728,6 @@  simplify_using_ranges::vrp_evaluate_conditional_warnv_with_ops
     return ret;
   if (only_ranges)
     *only_ranges = false;
-  if (TREE_CODE (op0) == SSA_NAME)
-    return compare_name_with_value (code, op0, op1, strict_overflow_p, stmt);
-  else if (TREE_CODE (op1) == SSA_NAME)
-    return compare_name_with_value (swap_tree_comparison (code), op1, op0,
-				    strict_overflow_p, stmt);
   return NULL_TREE;
 }
 
diff --git a/gcc/vr-values.h b/gcc/vr-values.h
index 00fcf7702aa..a89902c9c51 100644
--- a/gcc/vr-values.h
+++ b/gcc/vr-values.h
@@ -52,8 +52,6 @@  private:
 
   bool two_valued_val_range_p (tree, tree *, tree *, gimple *);
   bool op_with_boolean_value_range_p (tree, gimple *);
-  tree compare_name_with_value (enum tree_code, tree, tree, bool *, gimple *);
-  const value_range *get_vr_for_comparison (int, value_range *, gimple *s);
   tree vrp_evaluate_conditional_warnv_with_ops_using_ranges (enum tree_code,
 							     tree, tree,
 							     bool *, gimple *s);