aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Pop <sebastian.pop@amd.com>2009-11-25 04:56:49 +0000
committerSebastian Pop <spop@gcc.gnu.org>2009-11-25 04:56:49 +0000
commit75b63a9191017a605ff048e509709750566dbbad (patch)
treea95683f861b95768ae6ddd6d66f9d82eeea55009
parent7cc4ff8d299a5b9727aa3cdcf98ca2b47ad2e7a1 (diff)
downloadgcc-75b63a9191017a605ff048e509709750566dbbad.zip
gcc-75b63a9191017a605ff048e509709750566dbbad.tar.gz
gcc-75b63a9191017a605ff048e509709750566dbbad.tar.bz2
graphite-poly.h (copy_lst): Do full copy of LST.
2009-10-09 Sebastian Pop <sebastian.pop@amd.com> * graphite-poly.h (copy_lst): Do full copy of LST. From-SVN: r154566
-rw-r--r--gcc/ChangeLog.graphite4
-rw-r--r--gcc/graphite-poly.h11
2 files changed, 14 insertions, 1 deletions
diff --git a/gcc/ChangeLog.graphite b/gcc/ChangeLog.graphite
index d640505..6323d1d 100644
--- a/gcc/ChangeLog.graphite
+++ b/gcc/ChangeLog.graphite
@@ -1,3 +1,7 @@
+2009-10-09 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-poly.h (copy_lst): Do full copy of LST.
+
2009-10-07 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (reduction_phi_p): Call remove_invariant_phi
diff --git a/gcc/graphite-poly.h b/gcc/graphite-poly.h
index b3541d6..6ae330c 100644
--- a/gcc/graphite-poly.h
+++ b/gcc/graphite-poly.h
@@ -678,7 +678,16 @@ copy_lst (lst_p lst)
return NULL;
if (LST_LOOP_P (lst))
- return new_lst_loop (VEC_copy (lst_p, heap, LST_SEQ (lst)));
+ {
+ int i;
+ lst_p l;
+ VEC (lst_p, heap) *seq = VEC_alloc (lst_p, heap, 5);
+
+ for (i = 0; VEC_iterate (lst_p, LST_SEQ (lst), i, l); i++)
+ VEC_safe_push (lst_p, heap, seq, copy_lst (l));
+
+ return new_lst_loop (seq);
+ }
return new_lst_stmt (LST_PBB (lst));
}