[gcc(refs/users/marxin/heads/vect_cond_expr-rework-v3)] fix CTOR vectorization

Martin Liska marxin@gcc.gnu.org
Tue Mar 24 14:00:32 GMT 2020


https://gcc.gnu.org/g:3d42842c07f4143042f3dcc39a050b262bcf1b55

commit 3d42842c07f4143042f3dcc39a050b262bcf1b55
Author: Richard Biener <rguenther@suse.de>
Date:   Fri Mar 20 15:00:11 2020 +0100

    fix CTOR vectorization
    
    We failed to handle pattern stmts appropriately.
    
    2020-03-20  Richard Biener  <rguenther@suse.de>
    
            * tree-vect-slp.c (vect_analyze_slp_instance): Push the stmts
            to vectorize for CTOR defs.

Diff:
---
 gcc/ChangeLog       | 5 +++++
 gcc/tree-vect-slp.c | 1 +
 2 files changed, 6 insertions(+)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ab8d421c822..362345516b8 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2020-03-20  Richard Biener  <rguenther@suse.de>
+
+	* tree-vect-slp.c (vect_analyze_slp_instance): Push the stmts
+	to vectorize for CTOR defs.
+
 2020-03-20  Srinath Parvathaneni  <srinath.parvathaneni@arm.com>
             Andre Vieira  <andre.simoesdiasvieira@arm.com>
             Mihail Ionescu  <mihail.ionescu@arm.com>
diff --git a/gcc/tree-vect-slp.c b/gcc/tree-vect-slp.c
index 9d17e3386fa..fb13af7965e 100644
--- a/gcc/tree-vect-slp.c
+++ b/gcc/tree-vect-slp.c
@@ -2257,6 +2257,7 @@ vect_analyze_slp_instance (vec_info *vinfo,
 	      /* Value is defined in another basic block.  */
 	      if (!def_info)
 		return false;
+	      def_info = vect_stmt_to_vectorize (def_info);
 	      scalar_stmts.safe_push (def_info);
 	    }
 	  else


More information about the Gcc-cvs mailing list