Internal memcpy using LDRD/STRD

2013-05-16  Greta Yorsh  <Greta.Yorsh@arm.com>

gcc/

	* config/arm/arm-protos.h (gen_movmem_ldrd_strd): New declaration.
	* config/arm/arm.c (next_consecutive_mem): New function.
	(gen_movmem_ldrd_strd): Likewise.
	* config/arm/arm.md (movmemqi): Update condition and code.
	(unaligned_loaddi, unaligned_storedi): New patterns.

gcc/testsuite

	* gcc.target/arm/unaligned-memcpy-2.c: Adjust expected output.
	* gcc.target/arm/unaligned-memcpy-3.c: Likewise.
	* gcc.target/arm/unaligned-memcpy-4.c: Likewise.



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