[PATCH v2 07/13] vect: Add EXCLUDE_VIRTUALS argument to _slp_tree::push_vec_def.

Alfie Richards <[email protected]>
Newsgroups gmane.comp.gcc.patches
Message-ID <[email protected]>
This is requried specifically for pushing HSSR loads which not only
define the data loaded, but also do a VDEF to represent the update
to the HSSR state.

gcc/ChangeLog:

	* tree-vect-slp.cc (_slp_tree::push_vec_def): Add exclude_virtuals
	argument.
	* tree-vectorizer.h (_slp_tree::push_vec_def): Ditto.
---
 gcc/tree-vect-slp.cc  | 6 ++++--
 gcc/tree-vectorizer.h | 2 +-
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/gcc/tree-vect-slp.cc b/gcc/tree-vect-slp.cc
index 3d767a5822f..e4a29f85922 100644
--- a/gcc/tree-vect-slp.cc
+++ b/gcc/tree-vect-slp.cc
@@ -163,13 +163,15 @@ _slp_tree::~_slp_tree ()
 /* Push the single SSA definition in DEF to the vector of vector defs.  */
 
 void
-_slp_tree::push_vec_def (gimple *def)
+_slp_tree::push_vec_def (gimple *def, bool exclude_virtuals)
 {
   if (gphi *phi = dyn_cast <gphi *> (def))
     vec_defs.quick_push (gimple_phi_result (phi));
   else
     {
-      def_operand_p defop = single_ssa_def_operand (def, SSA_OP_ALL_DEFS);
+      def_operand_p defop = single_ssa_def_operand (def, exclude_virtuals
+							 ? SSA_OP_DEF
+							 : SSA_OP_ALL_DEFS);
       vec_defs.quick_push (get_def_from_ptr (defop));
     }
 }
diff --git a/gcc/tree-vectorizer.h b/gcc/tree-vectorizer.h
index d15e04de369..01e72b0955b 100644
--- a/gcc/tree-vectorizer.h
+++ b/gcc/tree-vectorizer.h
@@ -322,7 +322,7 @@ struct _slp_tree {
   _slp_tree ();
   ~_slp_tree ();
 
-  void push_vec_def (gimple *def);
+  void push_vec_def (gimple *def, bool exclude_virtuals = false);
   void push_vec_def (tree def) { vec_defs.quick_push (def); }
 
   /* Nodes that contain def-stmts of this node statements operands.  */
-- 
2.43.0
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.