It gets more difficult to maintain this doesn't do any changes late
(see followups), so kill it.

        * tree-vectorizer.h (vect_determine_partial_vectors_and_peeling):
        Remove.
        * tree-vect-loop.cc (vect_determine_partial_vectors_and_peeling):
        Make static.
        * tree-vect-loop-manip.cc (vect_do_peeling): Do not call it.
---
 gcc/tree-vect-loop-manip.cc | 7 -------
 gcc/tree-vect-loop.cc       | 2 +-
 gcc/tree-vectorizer.h       | 2 --
 3 files changed, 1 insertion(+), 10 deletions(-)

diff --git a/gcc/tree-vect-loop-manip.cc b/gcc/tree-vect-loop-manip.cc
index 3e121a96ddf..675168d8dee 100644
--- a/gcc/tree-vect-loop-manip.cc
+++ b/gcc/tree-vect-loop-manip.cc
@@ -3725,13 +3725,6 @@ vect_do_peeling (loop_vec_info loop_vinfo, tree niters, 
tree nitersm1,
        = fold_build2 (MINUS_EXPR, TREE_TYPE (epilogue_niters),
                       epilogue_niters,
                       build_one_cst (TREE_TYPE (epilogue_niters)));
-
-      /* Decide what to do if the number of epilogue iterations is not
-        a multiple of the epilogue loop's vectorization factor.
-        We should have rejected the loop during the analysis phase
-        if this fails.  */
-      bool res = vect_determine_partial_vectors_and_peeling (epilogue_vinfo);
-      gcc_assert (res);
     }
 
   adjust_vec.release ();
diff --git a/gcc/tree-vect-loop.cc b/gcc/tree-vect-loop.cc
index 0ad328f7905..aa4006e6193 100644
--- a/gcc/tree-vect-loop.cc
+++ b/gcc/tree-vect-loop.cc
@@ -2005,7 +2005,7 @@ vect_get_datarefs_in_loop (loop_p loop, basic_block *bbs,
 
  */
 
-opt_result
+static opt_result
 vect_determine_partial_vectors_and_peeling (loop_vec_info loop_vinfo)
 {
   /* Determine whether there would be any scalar iterations left over.  */
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h
index bb153594f8e..d9088802b75 100644
--- a/gcc/tree-vectorizer.h
+++ b/gcc/tree-vectorizer.h
@@ -2635,8 +2635,6 @@ extern tree vect_create_addr_base_for_vector_ref 
(vec_info *,
 extern tree neutral_op_for_reduction (tree, code_helper, tree, bool = true);
 extern widest_int vect_iv_limit_for_partial_vectors (loop_vec_info loop_vinfo);
 bool vect_rgroup_iv_might_wrap_p (loop_vec_info, rgroup_controls *);
-/* Used in tree-vect-loop-manip.cc */
-extern opt_result vect_determine_partial_vectors_and_peeling (loop_vec_info);
 /* Used in gimple-loop-interchange.c and tree-parloops.cc.  */
 extern bool check_reduction_path (dump_user_location_t, loop_p, gphi *, tree,
                                  enum tree_code);
-- 
2.51.0

Reply via email to