Fix PR43023: fuse_partitions_with_similar_memory_accesses.
authorSebastian Pop <spop@gcc.gnu.org>
Fri, 10 Dec 2010 19:16:48 +0000 (19:16 +0000)
committerSebastian Pop <spop@gcc.gnu.org>
Fri, 10 Dec 2010 19:16:48 +0000 (19:16 +0000)
commitcfee318d138c009b2eeb1038d00c6237a2fad4ee
tree34ce9e6bf89c7dc61183702364d0d4937f9a309c
parentb595b1a11eec6a11c32b8a01fd48427a01b75876
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
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/ldist-1.f90
gcc/testsuite/gfortran.dg/ldist-pr43023.f90 [new file with mode: 0644]
gcc/tree-data-ref.c
gcc/tree-data-ref.h
gcc/tree-loop-distribution.c