diff options
author | Sebastian Pop <spop@gcc.gnu.org> | 2010-12-10 19:16:48 +0000 |
---|---|---|
committer | Sebastian Pop <spop@gcc.gnu.org> | 2010-12-10 19:16:48 +0000 |
commit | cfee318d138c009b2eeb1038d00c6237a2fad4ee (patch) | |
tree | 34ce9e6bf89c7dc61183702364d0d4937f9a309c /gcc/tree-data-ref.h | |
parent | b595b1a11eec6a11c32b8a01fd48427a01b75876 (diff) | |
download | gcc-cfee318d138c009b2eeb1038d00c6237a2fad4ee.zip gcc-cfee318d138c009b2eeb1038d00c6237a2fad4ee.tar.gz gcc-cfee318d138c009b2eeb1038d00c6237a2fad4ee.tar.bz2 |
Fix PR43023: fuse_partitions_with_similar_memory_accesses.
2010-12-10 Sebastian Pop <sebastian.pop@amd.com>
PR tree-optimization/43023
* tree-data-ref.c (mem_write_stride_of_same_size_as_unit_type_p):
Removed.
(stores_zero_from_loop): Call stmt_stores_zero.
* tree-data-ref.h (stmt_stores_zero): New.
* tree-loop-distribution.c (generate_memset_zero): Do not return a
boolean. Call gcc_assert on stride_of_unit_type_p.
(generate_builtin): Call stmt_stores_zero.
(rdg_flag_all_uses): Removed.
(rdg_flag_similar_memory_accesses): Removed.
(build_rdg_partition_for_component): Removed parameter
other_stores. Removed call to rdg_flag_similar_memory_accesses.
(can_generate_builtin): New.
(similar_memory_accesses): New.
(fuse_partitions_with_similar_memory_accesses): New.
(rdg_build_partitions): Call
fuse_partitions_with_similar_memory_accesses.
* gfortran.dg/ldist-1.f90: Adjust pattern.
* gfortran.dg/ldist-pr43023.f90: New.
From-SVN: r167697
Diffstat (limited to 'gcc/tree-data-ref.h')
-rw-r--r-- | gcc/tree-data-ref.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/tree-data-ref.h b/gcc/tree-data-ref.h index d929f31..b4f317f 100644 --- a/gcc/tree-data-ref.h +++ b/gcc/tree-data-ref.h @@ -602,6 +602,7 @@ void stores_zero_from_loop (struct loop *, VEC (gimple, heap) **); void remove_similar_memory_refs (VEC (gimple, heap) **); bool rdg_defs_used_in_other_loops_p (struct graph *, int); bool have_similar_memory_accesses (gimple, gimple); +bool stmt_with_adjacent_zero_store_dr_p (gimple); /* Returns true when STRIDE is equal in absolute value to the size of the unit type of TYPE. */ |