diff options
author | spop <spop@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-09-03 20:05:42 +0000 |
---|---|---|
committer | spop <spop@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-09-03 20:05:42 +0000 |
commit | 9ff256032c64eeed5baff9dfe5e0bf42dfbc3229 (patch) | |
tree | 3121c570d8493a5ae6a5f6645bb5df55a57f04dd /gcc/tree-vect-data-refs.c | |
parent | 6759eb68d2e10fd8493a7eecd0c0e13b0f076bbb (diff) | |
download | gcc-9ff256032c64eeed5baff9dfe5e0bf42dfbc3229.tar.gz |
Use DR_IS_WRITE instead of !DR_IS_READ.
2010-09-03 Sebastian Pop <sebastian.pop@amd.com>
* tree-data-ref.c (dr_may_alias_p): Replace !DR_IS_READ with
DR_IS_WRITE.
(compute_all_dependences): Same.
(create_rdg_edge_for_ddr): Same.
* tree-data-ref.h (DR_IS_WRITE): New.
(ddr_is_anti_dependent): Replace !DR_IS_READ with DR_IS_WRITE.
* tree-if-conv.c (write_memrefs_written_at_least_once): Same.
(write_memrefs_written_at_least_once): Same.
* tree-predcom.c (suitable_component_p): Same.
(determine_roots_comp): Same.
(execute_load_motion): Same.
* tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Same.
(vect_enhance_data_refs_alignment): Same.
(vect_analyze_group_access): Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163841 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-vect-data-refs.c')
-rw-r--r-- | gcc/tree-vect-data-refs.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/gcc/tree-vect-data-refs.c b/gcc/tree-vect-data-refs.c index c76c60bd346..7944d8bcb80 100644 --- a/gcc/tree-vect-data-refs.c +++ b/gcc/tree-vect-data-refs.c @@ -614,7 +614,7 @@ vect_analyze_data_ref_dependence (struct data_dependence_relation *ddr, } /* We do not vectorize basic blocks with write-write dependencies. */ - if (!DR_IS_READ (dra) && !DR_IS_READ (drb)) + if (DR_IS_WRITE (dra) && DR_IS_WRITE (drb)) return true; /* We deal with read-write dependencies in basic blocks later (by @@ -641,7 +641,7 @@ vect_analyze_data_ref_dependence (struct data_dependence_relation *ddr, } /* Do not vectorize basic blcoks with write-write dependences. */ - if (!DR_IS_READ (dra) && !DR_IS_READ (drb)) + if (DR_IS_WRITE (dra) && DR_IS_WRITE (drb)) return true; /* Check if this dependence is allowed in basic block vectorization. */ @@ -1553,7 +1553,7 @@ vect_enhance_data_refs_alignment (loop_vec_info loop_vinfo) dr0 = dr; } - if (!first_store && !DR_IS_READ (dr)) + if (!first_store && DR_IS_WRITE (dr)) first_store = dr; } @@ -1565,7 +1565,7 @@ vect_enhance_data_refs_alignment (loop_vec_info loop_vinfo) if (!supportable_dr_alignment) { dr0 = dr; - if (!first_store && !DR_IS_READ (dr)) + if (!first_store && DR_IS_WRITE (dr)) first_store = dr; } } @@ -2078,7 +2078,7 @@ vect_analyze_group_access (struct data_reference *dr) DR_INIT (STMT_VINFO_DATA_REF ( vinfo_for_stmt (next))))) { - if (!DR_IS_READ (data_ref)) + if (DR_IS_WRITE (data_ref)) { if (vect_print_dump_info (REPORT_DETAILS)) fprintf (vect_dump, "Two store stmts share the same dr."); @@ -2123,7 +2123,7 @@ vect_analyze_group_access (struct data_reference *dr) { /* FORNOW: SLP of accesses with gaps is not supported. */ slp_impossible = true; - if (!DR_IS_READ (data_ref)) + if (DR_IS_WRITE (data_ref)) { if (vect_print_dump_info (REPORT_DETAILS)) fprintf (vect_dump, "interleaved store with gaps"); @@ -2215,7 +2215,7 @@ vect_analyze_group_access (struct data_reference *dr) /* SLP: create an SLP data structure for every interleaving group of stores for further analysis in vect_analyse_slp. */ - if (!DR_IS_READ (dr) && !slp_impossible) + if (DR_IS_WRITE (dr) && !slp_impossible) { if (loop_vinfo) VEC_safe_push (gimple, heap, LOOP_VINFO_STRIDED_STORES (loop_vinfo), |