OSDN Git Service

PR tree-optimization/51356
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 1 Dec 2011 19:14:03 +0000 (19:14 +0000)
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 1 Dec 2011 19:14:03 +0000 (19:14 +0000)
* tree-vect-patterns.c (vect_recog_bool_pattern): Give up if
vectype doesn't have VECTOR_MODE_P.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@181891 138bc75d-0d04-0410-961f-82ee72b054a4

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

index 0ab88fa..c8a71db 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 2241447..306bac2 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;