tree-data-ref.c (compute_all_dependences): Change the type of dependence_relations...
authorKazu Hirata <kazu@cs.umass.edu>
Mon, 16 May 2005 15:18:15 +0000 (15:18 +0000)
committerKazu Hirata <kazu@gcc.gnu.org>
Mon, 16 May 2005 15:18:15 +0000 (15:18 +0000)
* tree-data-ref.c (compute_all_dependences): Change the type
of dependence_relations to VEC(ddr_p,heap)**.
(compute_data_dependences_for_loop): Change the type of
allrelations to VEC(ddr_p,heap)*.

From-SVN: r99778

gcc/ChangeLog
gcc/tree-data-ref.c

index 8b3e864..5739c60 100644 (file)
@@ -5,6 +5,11 @@
        (mem_loc_descriptor, add_const_value_attributes,
        dwarf2out_init): Adjust uses of used_rtx_varray.
 
+       * tree-data-ref.c (compute_all_dependences): Change the type
+       of dependence_relations to VEC(ddr_p,heap)**.
+       (compute_data_dependences_for_loop): Change the type of
+       allrelations to VEC(ddr_p,heap)*.
+
 2005-05-16  Richard Sandiford  <rsandifo@redhat.com>
 
        * Makefile.in (options.c): Tell optc-gen.awk to include config.h,
index 90770e2..b1d1605 100644 (file)
@@ -2178,6 +2178,11 @@ compute_affine_dependence (struct data_dependence_relation *ddr)
     fprintf (dump_file, ")\n");
 }
 
+
+typedef struct data_dependence_relation *ddr_p;
+DEF_VEC_P(ddr_p);
+DEF_VEC_ALLOC_P(ddr_p,heap);
+
 /* Compute a subset of the data dependence relation graph.  Don't
    compute read-read relations, and avoid the computation of the
    opposite relation, i.e. when AB has been computed, don't compute BA.
@@ -2186,7 +2191,7 @@ compute_affine_dependence (struct data_dependence_relation *ddr)
 
 static void 
 compute_all_dependences (varray_type datarefs, 
-                        varray_type *dependence_relations)
+                        VEC(ddr_p,heap) **dependence_relations)
 {
   unsigned int i, j, N;
 
@@ -2202,7 +2207,7 @@ compute_all_dependences (varray_type datarefs,
        b = VARRAY_GENERIC_PTR (datarefs, j);
        ddr = initialize_data_dependence_relation (a, b);
 
-       VARRAY_PUSH_GENERIC_PTR (*dependence_relations, ddr);
+       VEC_safe_push (ddr_p, heap, *dependence_relations, ddr);
        compute_affine_dependence (ddr);
        compute_subscript_distance (ddr);
       }
@@ -2329,7 +2334,8 @@ compute_data_dependences_for_loop (unsigned nb_loops,
                                   varray_type *dependence_relations)
 {
   unsigned int i;
-  varray_type allrelations;
+  VEC(ddr_p,heap) *allrelations;
+  struct data_dependence_relation *ddr;
 
   /* If one of the data references is not computable, give up without
      spending time to compute other dependences.  */
@@ -2346,13 +2352,11 @@ compute_data_dependences_for_loop (unsigned nb_loops,
       return;
     }
 
-  VARRAY_GENERIC_PTR_INIT (allrelations, 1, "Data dependence relations");
+  allrelations = NULL;
   compute_all_dependences (*datarefs, &allrelations);
 
-  for (i = 0; i < VARRAY_ACTIVE_SIZE (allrelations); i++)
+  for (i = 0; VEC_iterate (ddr_p, allrelations, i, ddr); i++)
     {
-      struct data_dependence_relation *ddr;
-      ddr = VARRAY_GENERIC_PTR (allrelations, i);
       if (build_classic_dist_vector (ddr, nb_loops, loop->depth))
        {
          VARRAY_PUSH_GENERIC_PTR (*dependence_relations, ddr);