lambda-code.c (lambda_transform_legal_p): Use DDR_NUM_DIST_VECTS for testing whether...
authorSebastian Pop <pop@cri.ensmp.fr>
Sat, 5 Nov 2005 16:50:47 +0000 (17:50 +0100)
committerSebastian Pop <spop@gcc.gnu.org>
Sat, 5 Nov 2005 16:50:47 +0000 (16:50 +0000)
commit304afda64b71d7db8236375440c79ff0a7c3a748
tree04c21f33875e763a6900f3781420822aed5db6ec
parent541c886c9f35a68fbe4e01d82c43909e9d0b4aa7
lambda-code.c (lambda_transform_legal_p): Use DDR_NUM_DIST_VECTS for testing whether the data_dependence_relation...

* lambda-code.c (lambda_transform_legal_p): Use DDR_NUM_DIST_VECTS
for testing whether the data_dependence_relation contains distance
vectors.  Iterate over all distance vectors of the ddr.
* lambda.h: Define a vec of lambda_vector pointers.
* tree-data-ref.c (dump_data_dependence_relation,
dump_data_dependence_direction): Iterate over all distance and
direction vectors of the ddr.
(initialize_data_dependence_relation): Initialize DDR_DIR_VECTS and
DDR_DIST_VECTS.
(build_classic_dist_vector, build_classic_dir_vector): Push a set
of distance/direction vectors instead of a single one.
* tree-data-ref.h (dir_vects, dist_vects): Replace dir/dist
lambda_vectors with a vec of lambda_vectors.
(DDR_DIR_VECT, DDR_DIST_VECT): Redefined as operations on vec.
(DDR_DIR_VECTS, DDR_DIST_VECTS, DDR_NUM_DIR_VECTS,
DDR_NUM_DIST_VECTS): New.
* tree-loop-linear.c (gather_interchange_stats): Test for the
existence of distance vectors only after having checked that there
is a dependence.  Iterate over all distance vectors of the ddr.
(linear_transform_loops): Use dump_data_dependence_relation.
* tree-vect-analyze.c (vect_analyze_data_ref_dependence): Test for
distance vectors using DDR_NUM_DIST_VECTS.  Iterate over all the
distance vectors of the ddr.

From-SVN: r106530
gcc/ChangeLog
gcc/lambda-code.c
gcc/lambda.h
gcc/tree-data-ref.c
gcc/tree-data-ref.h
gcc/tree-loop-linear.c
gcc/tree-vect-analyze.c