diff options
author | Jakub Jelinek <jakub@redhat.com> | 2009-01-08 17:01:42 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2009-01-08 17:01:42 +0100 |
commit | 96867bbd6f4371fbd0049504a3c3725f6abd9fcf (patch) | |
tree | bef5a692dfc16f14cd02d119206305f87c9a97ed /gcc/graphite.c | |
parent | 68f61c3d955e3e9bb65200a27f5ea2136b7cedf7 (diff) | |
download | gcc-96867bbd6f4371fbd0049504a3c3725f6abd9fcf.zip gcc-96867bbd6f4371fbd0049504a3c3725f6abd9fcf.tar.gz gcc-96867bbd6f4371fbd0049504a3c3725f6abd9fcf.tar.bz2 |
re PR tree-optimization/37031 (ICE for h264ref in gather_interchange_stats with -ftree-loop-linear)
PR tree-optimization/37031
* lambda-code.c (lambda_collect_parameters): Call pointer_set_destroy
on parameter_set.
(build_access_matrix): Reserve correct size for AM_MATRIX vector,
allocate it using gc instead of heap, use VEC_quick_push instead of
VEC_safe_push.
* graphite.c (build_access_matrix): Allocate AM_MATRIX vector using gc
instead of heap, use VEC_quick_push instead of VEC_safe_push.
* tree-data-ref.h (struct access_matrix): Change matrix to gc
allocated vector from heap allocated.
* lambda.h: Add DEF_VEC_ALLOC_P for gc allocated lambda_vector.
* tree-loop-linear.c (linear_transform_loops): Allocate nest
vector only after perfect_loop_nest_depth call.
From-SVN: r143188
Diffstat (limited to 'gcc/graphite.c')
-rw-r--r-- | gcc/graphite.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/graphite.c b/gcc/graphite.c index c90ba96..27cadf3 100644 --- a/gcc/graphite.c +++ b/gcc/graphite.c @@ -1,5 +1,5 @@ /* Gimple Represented as Polyhedra. - Copyright (C) 2006, 2007, 2008 Free Software Foundation, Inc. + Copyright (C) 2006, 2007, 2008, 2009 Free Software Foundation, Inc. Contributed by Sebastian Pop <sebastian.pop@inria.fr>. This file is part of GCC. @@ -3630,7 +3630,7 @@ build_access_matrix (data_reference_p ref, graphite_bb_p gb) int i, ndim = DR_NUM_DIMENSIONS (ref); struct access_matrix *am = GGC_NEW (struct access_matrix); - AM_MATRIX (am) = VEC_alloc (lambda_vector, heap, ndim); + AM_MATRIX (am) = VEC_alloc (lambda_vector, gc, ndim); DR_SCOP (ref) = GBB_SCOP (gb); for (i = 0; i < ndim; i++) @@ -3642,7 +3642,7 @@ build_access_matrix (data_reference_p ref, graphite_bb_p gb) if (!build_access_matrix_with_af (af, v, scop, ref_nb_loops (ref))) return false; - VEC_safe_push (lambda_vector, heap, AM_MATRIX (am), v); + VEC_quick_push (lambda_vector, AM_MATRIX (am), v); } DR_ACCESS_MATRIX (ref) = am; |