summaryrefslogtreecommitdiff
path: root/gcc/tree-data-ref.h
diff options
context:
space:
mode:
authorSebastian Pop <sebastian.pop@amd.com>2008-05-16 16:02:02 +0000
committerSebastian Pop <spop@gcc.gnu.org>2008-05-16 16:02:02 +0000
commitb3924be9712d2b49b59048aff6ba5d288227c40c (patch)
tree3a23f8dccec8694c7100a8d3bb896105dd71f2a5 /gcc/tree-data-ref.h
parent5b7971f01cf2b0709995c7249e6c21a38acc5f7b (diff)
downloadgcc-b3924be9712d2b49b59048aff6ba5d288227c40c.tar.gz
re PR tree-optimization/36228 (redundant runtime check while vectorizing)
2008-05-16 Sebastian Pop <sebastian.pop@amd.com> Jan Sjodin <jan.sjodin@amd.com> PR tree-optimization/36228 * tree-data-ref.c (initialize_data_dependence_relation): Fast dependence test when the references are the same, call compute_self_dependence. * tree-data-ref.h (struct data_dependence_relation): Add self_reference_p. (DDR_SELF_REFERENCE): New. * testsuite/gcc.dg/vect/pr36228.c: New. Co-Authored-By: Jan Sjodin <jan.sjodin@amd.com> From-SVN: r135426
Diffstat (limited to 'gcc/tree-data-ref.h')
-rw-r--r--gcc/tree-data-ref.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/tree-data-ref.h b/gcc/tree-data-ref.h
index 8db6f7383e8..5e668cbaf43 100644
--- a/gcc/tree-data-ref.h
+++ b/gcc/tree-data-ref.h
@@ -221,6 +221,10 @@ struct data_dependence_relation
a distance vector. */
bool affine_p;
+ /* Set to true when the dependence relation is on the same data
+ access. */
+ bool self_reference_p;
+
/* A "yes/no/maybe" field for the dependence relation:
- when "ARE_DEPENDENT == NULL_TREE", there exist a dependence
@@ -273,6 +277,7 @@ DEF_VEC_ALLOC_P(ddr_p,heap);
the loop nest. */
#define DDR_NB_LOOPS(DDR) (VEC_length (loop_p, DDR_LOOP_NEST (DDR)))
#define DDR_INNER_LOOP(DDR) DDR->inner_loop
+#define DDR_SELF_REFERENCE(DDR) DDR->self_reference_p
#define DDR_DIST_VECTS(DDR) ((DDR)->dist_vects)
#define DDR_DIR_VECTS(DDR) ((DDR)->dir_vects)