OSDN Git Service

* configure.ac (gcc_cv_nm): Don't use an in-tree nm if
[pf3gnuchains/gcc-fork.git] / gcc / tree-vect-transform.c
index 2d533e6..b1a9b0a 100644 (file)
@@ -791,6 +791,7 @@ vect_create_epilog_for_reduction (tree vect_def, tree stmt,
   bool extract_scalar_result;
   tree reduction_op;
   tree orig_stmt;
+  tree use_stmt;
   tree operation = TREE_OPERAND (stmt, 1);
   int op_type;
   
@@ -1082,8 +1083,9 @@ vect_create_epilog_for_reduction (tree vect_def, tree stmt,
   gcc_assert (exit_phi);
   /* Replace the uses:  */
   orig_name = PHI_RESULT (exit_phi);
-  FOR_EACH_IMM_USE_SAFE (use_p, imm_iter, orig_name)
-    SET_USE (use_p, new_temp);
+  FOR_EACH_IMM_USE_STMT (use_stmt, imm_iter, orig_name)
+    FOR_EACH_IMM_USE_ON_STMT (use_p, imm_iter)
+      SET_USE (use_p, new_temp);
 } 
 
 
@@ -2769,16 +2771,14 @@ static void
 vect_update_inits_of_drs (loop_vec_info loop_vinfo, tree niters)
 {
   unsigned int i;
-  varray_type datarefs = LOOP_VINFO_DATAREFS (loop_vinfo);
+  VEC (data_reference_p, heap) *datarefs = LOOP_VINFO_DATAREFS (loop_vinfo);
+  struct data_reference *dr;
 
   if (vect_dump && (dump_flags & TDF_DETAILS))
     fprintf (vect_dump, "=== vect_update_inits_of_dr ===");
 
-  for (i = 0; i < VARRAY_ACTIVE_SIZE (datarefs); i++)
-    {
-      struct data_reference *dr = VARRAY_GENERIC_PTR (datarefs, i);
-      vect_update_init_of_dr (dr, niters);
-    }
+  for (i = 0; VEC_iterate (data_reference_p, datarefs, i, dr); i++)
+    vect_update_init_of_dr (dr, niters);
 }