From 5073668c61818d54189e08ca0cfa690558751870 Mon Sep 17 00:00:00 2001 From: Will Newton Date: Mon, 1 Jul 2013 09:58:34 +0000 Subject: memcpy-armv7a.S: Improve performance with misaligned buffers. Adjust the conditions for entering the aligned copy loop to improve performance on mutually misaligned buffer copies. 2013-07-01 Will Newton * libc/machine/arm/memcpy-armv7a.S: Adjust entry to aligned loop to improve misaligned copy performance. --- newlib/ChangeLog | 5 +++++ newlib/libc/machine/arm/memcpy-armv7a.S | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'newlib') diff --git a/newlib/ChangeLog b/newlib/ChangeLog index d5b7c7b44..5b73e71ab 100644 --- a/newlib/ChangeLog +++ b/newlib/ChangeLog @@ -1,3 +1,8 @@ +2013-07-01 Will Newton + + * libc/machine/arm/memcpy-armv7a.S: Adjust entry to + aligned loop to improve misaligned copy performance. + 2013-06-26 Jeff Johnston * libc/include/stdio.h: Specify std streams always in terms diff --git a/newlib/libc/machine/arm/memcpy-armv7a.S b/newlib/libc/machine/arm/memcpy-armv7a.S index de5bf9ad8..cd7962e07 100644 --- a/newlib/libc/machine/arm/memcpy-armv7a.S +++ b/newlib/libc/machine/arm/memcpy-armv7a.S @@ -242,8 +242,8 @@ def_fn memcpy p2align=6 .Lcpy_not_short: /* At least 64 bytes to copy, but don't know the alignment yet. */ str tmp2, [sp, #-FRAME_SIZE]! - and tmp2, src, #3 - and tmp1, dst, #3 + and tmp2, src, #7 + and tmp1, dst, #7 cmp tmp1, tmp2 bne .Lcpy_notaligned -- cgit v1.2.3