diff options
author | spop <spop@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-05-16 16:02:02 +0000 |
---|---|---|
committer | spop <spop@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-05-16 16:02:02 +0000 |
commit | c127dd86af4a31150d186e0febf6992215184ce4 (patch) | |
tree | 3a23f8dccec8694c7100a8d3bb896105dd71f2a5 /gcc/tree-data-ref.h | |
parent | 376456ce759d913b92a6f99f1d44a51dd7754661 (diff) | |
download | gcc-c127dd86af4a31150d186e0febf6992215184ce4.tar.gz |
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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@135426 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-data-ref.h')
-rw-r--r-- | gcc/tree-data-ref.h | 5 |
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) |