OSDN Git Service

* tree-loop-linear.c (compute_data_dependences_for_loop): Adjust calls.
authorspop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 29 Mar 2006 20:25:23 +0000 (20:25 +0000)
committerspop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 29 Mar 2006 20:25:23 +0000 (20:25 +0000)
* tree-data-ref.c (find_data_references_in_loop,
compute_data_dependences_for_loop): Use pointers to VEC.
(analyze_all_data_dependences): Adjust calls.
* tree-data-ref.h (find_data_references_in_loop,
compute_data_dependences_for_loop): Adjust declarations.
* tree-vect-analyze.c (vect_analyze_data_refs): Adjust call to
compute_data_dependences_for_loop.

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

gcc/ChangeLog
gcc/tree-data-ref.c
gcc/tree-data-ref.h
gcc/tree-loop-linear.c
gcc/tree-vect-analyze.c

index 4d499c3..519980b 100644 (file)
@@ -1,3 +1,14 @@
+2006-03-29  Sebastian Pop  <pop@cri.ensmp.fr>
+
+       * tree-loop-linear.c (compute_data_dependences_for_loop): Adjust calls.
+       * tree-data-ref.c (find_data_references_in_loop,
+       compute_data_dependences_for_loop): Use pointers to VEC.
+       (analyze_all_data_dependences): Adjust calls.
+       * tree-data-ref.h (find_data_references_in_loop,
+       compute_data_dependences_for_loop): Adjust declarations.
+       * tree-vect-analyze.c (vect_analyze_data_refs): Adjust call to
+       compute_data_dependences_for_loop.
+
 2006-03-29  Paul Brook  <paul@codesourcery.com>
 
        * config/arm/vfp.md (movsf_vfp): Disparage w<->r alternatives.
index 7f9dc32..dd9e4d6 100644 (file)
@@ -3968,7 +3968,7 @@ compute_all_dependences (VEC (data_reference_p, heap) *datarefs,
 
 tree 
 find_data_references_in_loop (struct loop *loop,
-                             VEC (data_reference_p, heap) *datarefs)
+                             VEC (data_reference_p, heap) **datarefs)
 {
   basic_block bb, *bbs;
   unsigned int i;
@@ -4012,7 +4012,7 @@ find_data_references_in_loop (struct loop *loop,
                    dr = create_data_ref (opnd0, stmt, false);
                    if (dr) 
                      {
-                       VEC_safe_push (data_reference_p, heap, datarefs, dr);
+                       VEC_safe_push (data_reference_p, heap, *datarefs, dr);
                        one_inserted = true;
                      }
                  }
@@ -4024,7 +4024,7 @@ find_data_references_in_loop (struct loop *loop,
                    dr = create_data_ref (opnd1, stmt, true);
                    if (dr) 
                      {
-                       VEC_safe_push (data_reference_p, heap, datarefs, dr);
+                       VEC_safe_push (data_reference_p, heap, *datarefs, dr);
                        one_inserted = true;
                      }
                  }
@@ -4049,7 +4049,7 @@ find_data_references_in_loop (struct loop *loop,
                      dr = create_data_ref (TREE_VALUE (args), stmt, true);
                      if (dr)
                        {
-                         VEC_safe_push (data_reference_p, heap, datarefs, dr);
+                         VEC_safe_push (data_reference_p, heap, *datarefs, dr);
                          one_inserted = true;
                        }
                    }
@@ -4080,7 +4080,7 @@ find_data_references_in_loop (struct loop *loop,
                  DR_OFFSET_MISALIGNMENT (res) = NULL_TREE;
                  DR_MEMTAG (res) = NULL_TREE;
                  DR_PTR_INFO (res) = NULL;
-                 VEC_safe_push (data_reference_p, heap, datarefs, res);
+                 VEC_safe_push (data_reference_p, heap, *datarefs, res);
 
                  free (bbs);
                  return chrec_dont_know;
@@ -4149,8 +4149,8 @@ find_loop_nest (struct loop *loop, VEC (loop_p, heap) *loop_nest)
 void
 compute_data_dependences_for_loop (struct loop *loop, 
                                   bool compute_self_and_read_read_dependences,
-                                  VEC (data_reference_p, heap) *datarefs,
-                                  VEC (ddr_p, heap) *dependence_relations)
+                                  VEC (data_reference_p, heap) **datarefs,
+                                  VEC (ddr_p, heap) **dependence_relations)
 {
   struct loop *loop_nest = loop;
   VEC (loop_p, heap) *vloops = VEC_alloc (loop_p, heap, 3);
@@ -4169,10 +4169,10 @@ compute_data_dependences_for_loop (struct loop *loop,
       /* Insert a single relation into dependence_relations:
         chrec_dont_know.  */
       ddr = initialize_data_dependence_relation (NULL, NULL, vloops);
-      VEC_safe_push (ddr_p, heap, dependence_relations, ddr);
+      VEC_safe_push (ddr_p, heap, *dependence_relations, ddr);
     }
   else
-    compute_all_dependences (datarefs, dependence_relations, vloops,
+    compute_all_dependences (*datarefs, *dependence_relations, vloops,
                             compute_self_and_read_read_dependences);
 
   if (dump_file && (dump_flags & TDF_STATS))
@@ -4258,7 +4258,7 @@ analyze_all_data_dependences (struct loops *loops)
 
   /* Compute DDs on the whole function.  */
   compute_data_dependences_for_loop (loops->parray[0], false,
-                                    datarefs, dependence_relations);
+                                    &datarefs, &dependence_relations);
 
   if (dump_file)
     {
index c5976f9..8cf17ae 100644 (file)
@@ -270,10 +270,10 @@ DEF_VEC_ALLOC_P(ddr_p,heap);
 \f
 
 extern tree find_data_references_in_loop (struct loop *,
-                                         VEC (data_reference_p, heap) *);
+                                         VEC (data_reference_p, heap) **);
 extern void compute_data_dependences_for_loop (struct loop *, bool,
-                                              VEC (data_reference_p, heap) *,
-                                              VEC (ddr_p, heap) *);
+                                              VEC (data_reference_p, heap) **,
+                                              VEC (ddr_p, heap) **);
 extern void print_direction_vector (FILE *, lambda_vector, int);
 extern void print_dir_vectors (FILE *, VEC (lambda_vector, heap) *, int);
 extern void print_dist_vectors (FILE *, VEC (lambda_vector, heap) *, int);
index a47981c..bf353e5 100644 (file)
@@ -289,8 +289,8 @@ linear_transform_loops (struct loops *loops)
  
       datarefs = VEC_alloc (data_reference_p, heap, 10);
       dependence_relations = VEC_alloc (ddr_p, heap, 10 * 10);
-      compute_data_dependences_for_loop (loop_nest, true, datarefs,
-                                        dependence_relations);
+      compute_data_dependences_for_loop (loop_nest, true, &datarefs,
+                                        &dependence_relations);
 
       if (dump_file && (dump_flags & TDF_DETAILS))
        dump_ddrs (dump_file, dependence_relations);
index f631942..b031ceb 100644 (file)
@@ -1334,8 +1334,8 @@ vect_analyze_data_refs (loop_vec_info loop_vinfo)
     fprintf (vect_dump, "=== vect_analyze_data_refs ===");
 
   compute_data_dependences_for_loop (loop, false,
-                                     LOOP_VINFO_DATAREFS (loop_vinfo),
-                                     LOOP_VINFO_DDRS (loop_vinfo));
+                                     &LOOP_VINFO_DATAREFS (loop_vinfo),
+                                     &LOOP_VINFO_DDRS (loop_vinfo));
 
   /* Go through the data-refs, check that the analysis succeeded. Update pointer
      from stmt_vec_info struct to DR and vectype.  */