This removes an odd special-case of VECTOR_BOOLEAN_TYPE_P typed
conversions from vectorizable_assignment that was obsoleted by
making all integer mode VECTOR_BOOLEAN_TYPE_P types have 1-bit
precision bool components with 605c2a393d3a2db8

Bootstrapped and tested on x86_64-unknown-linux-gnu, pushed.

2020-12-10  Richard Biener  <rguent...@suse.de>

        * tree-vect-stmts.c (vectorizable_assignment): Remove special
        allowance of VECTOR_BOOLEAN_TYPE_P conversions.
---
 gcc/tree-vect-stmts.c | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)

diff --git a/gcc/tree-vect-stmts.c b/gcc/tree-vect-stmts.c
index d3ab8aa1c29..11737a38a56 100644
--- a/gcc/tree-vect-stmts.c
+++ b/gcc/tree-vect-stmts.c
@@ -5143,12 +5143,7 @@ vectorizable_assignment (vec_info *vinfo,
       /* But a conversion that does not change the bit-pattern is ok.  */
       && !((TYPE_PRECISION (TREE_TYPE (scalar_dest))
            > TYPE_PRECISION (TREE_TYPE (op)))
-          && TYPE_UNSIGNED (TREE_TYPE (op)))
-      /* Conversion between boolean types of different sizes is
-        a simple assignment in case their vectypes are same
-        boolean vectors.  */
-      && (!VECTOR_BOOLEAN_TYPE_P (vectype)
-         || !VECTOR_BOOLEAN_TYPE_P (vectype_in)))
+          && TYPE_UNSIGNED (TREE_TYPE (op))))
     {
       if (dump_enabled_p ())
         dump_printf_loc (MSG_MISSED_OPTIMIZATION, vect_location,
-- 
2.26.2

Reply via email to