aboutsummaryrefslogtreecommitdiff
path: root/gcc/lambda.h
diff options
context:
space:
mode:
authorJan Sjodin <jan.sjodin@amd.com>2008-05-20 19:11:56 +0000
committerSebastian Pop <spop@gcc.gnu.org>2008-05-20 19:11:56 +0000
commit9f275479a9813d4165e9e6766e4f7c6eec1b9792 (patch)
treeea4cf8fac1c14940e25a8a624cebe081009b766c /gcc/lambda.h
parent5f620f482ec35b18c419368a8cae2218bd4cacf5 (diff)
downloadgcc-9f275479a9813d4165e9e6766e4f7c6eec1b9792.zip
gcc-9f275479a9813d4165e9e6766e4f7c6eec1b9792.tar.gz
gcc-9f275479a9813d4165e9e6766e4f7c6eec1b9792.tar.bz2
tree-loop-linear.c (gather_interchange_stats): Look in the access matrix...
2008-05-20 Jan Sjodin <jan.sjodin@amd.com> Sebastian Pop <sebastian.pop@amd.com> * tree-loop-linear.c (gather_interchange_stats): Look in the access matrix, and never look at the tree representation of the memory accesses. (linear_transform_loops): Computes parameters and access matrices. * tree-data-ref.c (compute_data_dependences_for_loop): Returns false when fails. (access_matrix_get_index_for_parameter): New. * tree-data-ref.h (struct access_matrix): New. (AM_LOOP_NEST_NUM, AM_NB_INDUCTION_VARS, AM_PARAMETERS, AM_MATRIX, AM_NB_PARAMETERS, AM_CONST_COLUMN_INDEX, AM_NB_COLUMNS, AM_GET_SUBSCRIPT_ACCESS_VECTOR, AM_GET_ACCESS_MATRIX_ELEMENT, am_vector_index_for_loop): New. (struct data_reference): Add field access_matrix. (DR_ACCESS_MATRIX): New. (compute_data_dependences_for_loop): Update declaration. (lambda_collect_parameters, lambda_compute_access_matrices): Declared. * lambda.h (lambda_vector_vec_p): Declared. * lambda-code.c: Depend on pointer-set.h. (lambda_collect_parameters_from_af, lambda_collect_parameters, av_for_af_base, av_for_af, build_access_matrix, lambda_compute_access_matrices): New. * Makefile.in (lambda-code.o): Depend on pointer-set.h. Co-Authored-By: Sebastian Pop <sebastian.pop@amd.com> From-SVN: r135672
Diffstat (limited to 'gcc/lambda.h')
-rw-r--r--gcc/lambda.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/lambda.h b/gcc/lambda.h
index 641b3bc..40e8502 100644
--- a/gcc/lambda.h
+++ b/gcc/lambda.h
@@ -28,10 +28,13 @@ along with GCC; see the file COPYING3. If not see
and scalar multiplication. In this vector space, an element is a list of
integers. */
typedef int *lambda_vector;
-
DEF_VEC_P(lambda_vector);
DEF_VEC_ALLOC_P(lambda_vector,heap);
+typedef VEC(lambda_vector, heap) *lambda_vector_vec_p;
+DEF_VEC_P (lambda_vector_vec_p);
+DEF_VEC_ALLOC_P (lambda_vector_vec_p, heap);
+
/* An integer matrix. A matrix consists of m vectors of length n (IE
all vectors are the same length). */
typedef lambda_vector *lambda_matrix;
@@ -487,4 +490,3 @@ dependence_level (lambda_vector dist_vect, int length)
}
#endif /* LAMBDA_H */
-