diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 24a065fa4b24b750831162df55f0946b8821069b..ee49a27d5203a514c68b69c70e8b3e11b5aee91d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,10 @@
+2006-04-02  Sebastian Pop  <pop@cri.ensmp.fr>
+
+	* tree-data-ref.c (compute_all_dependences): Use a pointer to
+	the dependence_relations vector.
+	(compute_data_dependences_for_loop): Adjust call to
+	compute_all_dependences.
+
 2006-04-01  Roger Sayle  <roger@eyesopen.com>
 	    Richard Henderson  <rth@redhat.com>
 
diff --git a/gcc/tree-data-ref.c b/gcc/tree-data-ref.c
index dd9e4d64a94813fb9d663dcaf88af7afa708695b..8b1c4f1801f746c27e1f7bf363422ab77e94fedb 100644
--- a/gcc/tree-data-ref.c
+++ b/gcc/tree-data-ref.c
@@ -3933,7 +3933,7 @@ compute_self_dependence (struct data_dependence_relation *ddr)
 
 static void 
 compute_all_dependences (VEC (data_reference_p, heap) *datarefs,
-			 VEC (ddr_p, heap) *dependence_relations,
+			 VEC (ddr_p, heap) **dependence_relations,
 			 VEC (loop_p, heap) *loop_nest,
 			 bool compute_self_and_rr)
 {
@@ -3946,7 +3946,7 @@ compute_all_dependences (VEC (data_reference_p, heap) *datarefs,
       if (!DR_IS_READ (a) || !DR_IS_READ (b) || compute_self_and_rr)
 	{
 	  ddr = initialize_data_dependence_relation (a, b, loop_nest);
-	  VEC_safe_push (ddr_p, heap, dependence_relations, ddr);
+	  VEC_safe_push (ddr_p, heap, *dependence_relations, ddr);
 	  compute_affine_dependence (ddr);
 	}
 
@@ -3954,7 +3954,7 @@ compute_all_dependences (VEC (data_reference_p, heap) *datarefs,
     for (i = 0; VEC_iterate (data_reference_p, datarefs, i, a); i++)
       {
 	ddr = initialize_data_dependence_relation (a, a, loop_nest);
-	VEC_safe_push (ddr_p, heap, dependence_relations, ddr);
+	VEC_safe_push (ddr_p, heap, *dependence_relations, ddr);
 	compute_self_dependence (ddr);
       }
 }
@@ -4172,7 +4172,7 @@ compute_data_dependences_for_loop (struct loop *loop,
       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))