2013-10-01  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/58553
	* tree-loop-distribution.c (struct partition_s): Add niter member.
	(classify_partition): Populate niter member for the partition
	and properly identify whether the relevant store happens before
	or after the loop exit.
	(generate_memset_builtin): Use niter member from the partition.
	(generate_memcpy_builtin): Likewise.

	* gcc.dg/torture/pr58553.c: New testcase.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@203054 138bc75d-0d04-0410-961f-82ee72b054a4