tree-vectorize.c (vect_is_simple_use): gimple_min_invariant is invariant.
authorJan Hubicka <jh@suse.cz>
Tue, 1 May 2007 11:19:59 +0000 (13:19 +0200)
committerJan Hubicka <hubicka@gcc.gnu.org>
Tue, 1 May 2007 11:19:59 +0000 (11:19 +0000)
* tree-vectorize.c (vect_is_simple_use): gimple_min_invariant is
invariant.

From-SVN: r124324

gcc/ChangeLog
gcc/tree-vectorizer.c

index 88d090a6ec8ab33f3fb045aba7e7ee1eeb71821b..fd5f595f9344482edde7f0a928f80fc589d50862 100644 (file)
@@ -1,3 +1,8 @@
+2007-05-01  Jan Hubicka  <jh@suse.cz>
+
+       * tree-vectorize.c (vect_is_simple_use): gimple_min_invariant is
+       invariant.
+
 2007-05-01  Jan Hubicka  <jh@suse.cz>
 
        * tree.h (maybe_fold_offset_to_component_ref): Remove.
index d235a4917bae464ea5db01800be4baf2c9004bec..f635334f19d2ad1c290581dd8699a1b3f108c62f 100644 (file)
@@ -1644,6 +1644,12 @@ vect_is_simple_use (tree operand, loop_vec_info loop_vinfo, tree *def_stmt,
       *dt = vect_constant_def;
       return true;
     }
+  if (is_gimple_min_invariant (operand))
+   {
+      *def = operand;
+      *dt = vect_invariant_def;
+      return true;
+   }
     
   if (TREE_CODE (operand) != SSA_NAME)
     {
@@ -1671,7 +1677,7 @@ vect_is_simple_use (tree operand, loop_vec_info loop_vinfo, tree *def_stmt,
   if (IS_EMPTY_STMT (*def_stmt))
     {
       tree arg = TREE_OPERAND (*def_stmt, 0);
-      if (TREE_CODE (arg) == INTEGER_CST || TREE_CODE (arg) == REAL_CST)
+      if (is_gimple_min_invariant (arg))
         {
           *def = operand;
           *dt = vect_invariant_def;