]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR tree-optimization/51356 (FAIL: gfortran.dg/anyallcount_1.f90 -O3 (internal...
authorJakub Jelinek <jakub@redhat.com>
Thu, 1 Dec 2011 19:14:03 +0000 (20:14 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Thu, 1 Dec 2011 19:14:03 +0000 (20:14 +0100)
PR tree-optimization/51356
* tree-vect-patterns.c (vect_recog_bool_pattern): Give up if
vectype doesn't have VECTOR_MODE_P.

From-SVN: r181891

gcc/ChangeLog
gcc/tree-vect-patterns.c

index 0ab88fa1198ffa5f01e6fd773517c87a9a293067..c8a71dbd53aba46c4af908be6224dc16c0c47426 100644 (file)
@@ -1,5 +1,9 @@
 2011-12-01  Jakub Jelinek  <jakub@redhat.com>
 
+       PR tree-optimization/51356
+       * tree-vect-patterns.c (vect_recog_bool_pattern): Give up if
+       vectype doesn't have VECTOR_MODE_P.
+
        PR debug/50317
        * tree-ssa-dce.c (remove_dead_stmt): Add a debug stmt when removing
        as unnecessary a store to a variable with gimple reg type.
index 22414475f6f8695762f57e1cfa1a548c9eeadd5b..306bac28c18fef74540b95d06ab47e0057db506c 100644 (file)
@@ -2074,6 +2074,8 @@ vect_recog_bool_pattern (VEC (gimple, heap) **stmts, tree *type_in,
       stmt_vec_info pattern_stmt_info;
       vectype = STMT_VINFO_VECTYPE (stmt_vinfo);
       gcc_assert (vectype != NULL_TREE);
+      if (!VECTOR_MODE_P (TYPE_MODE (vectype)))
+       return NULL;
       if (!check_bool_pattern (var, loop_vinfo))
        return NULL;