am 4a8c4ce4
: Merge "libc: remove bcopy from memmove on 64-bit architectures"
* commit '4a8c4ce403f702c0b8279873fae3d62497c4a123': libc: remove bcopy from memmove on 64-bit architectures
This commit is contained in:
commit
37763e7a7a
@ -35,10 +35,6 @@
|
|||||||
#include <private/bionic_asm.h>
|
#include <private/bionic_asm.h>
|
||||||
|
|
||||||
/* Parameters and result. */
|
/* Parameters and result. */
|
||||||
#ifdef BCOPY
|
|
||||||
#define origdstin x1
|
|
||||||
#define origsrc x0
|
|
||||||
#endif
|
|
||||||
#define dstin x0
|
#define dstin x0
|
||||||
#define src x1
|
#define src x1
|
||||||
#define count x2
|
#define count x2
|
||||||
@ -59,13 +55,7 @@
|
|||||||
#define D_l x13
|
#define D_l x13
|
||||||
#define D_h x14
|
#define D_h x14
|
||||||
|
|
||||||
#ifdef BCOPY
|
#if defined(WMEMMOVE)
|
||||||
ENTRY(bcopy)
|
|
||||||
/* Swap src and dst so that a branch to memcpy doesn't cause issues. */
|
|
||||||
mov tmp1, origsrc
|
|
||||||
mov origsrc, origdstin
|
|
||||||
mov origdstin, tmp1
|
|
||||||
#elif defined(WMEMMOVE)
|
|
||||||
ENTRY(wmemmove)
|
ENTRY(wmemmove)
|
||||||
lsl count, count, #2
|
lsl count, count, #2
|
||||||
#else
|
#else
|
||||||
@ -332,9 +322,7 @@ ENTRY(memmove)
|
|||||||
tst count, #0x3f
|
tst count, #0x3f
|
||||||
b.ne .Ltail63down
|
b.ne .Ltail63down
|
||||||
ret
|
ret
|
||||||
#ifdef BCOPY
|
#if defined(WMEMMOVE)
|
||||||
END(bcopy)
|
|
||||||
#elif defined(WMEMMOVE)
|
|
||||||
END(wmemmove)
|
END(wmemmove)
|
||||||
#else
|
#else
|
||||||
END(memmove)
|
END(memmove)
|
||||||
|
@ -91,9 +91,6 @@ name: \
|
|||||||
.section .text.sse2,"ax",@progbits
|
.section .text.sse2,"ax",@progbits
|
||||||
ENTRY (MEMMOVE)
|
ENTRY (MEMMOVE)
|
||||||
ENTRANCE
|
ENTRANCE
|
||||||
#ifdef USE_AS_BCOPY
|
|
||||||
xchg %rsi, %rdi
|
|
||||||
#endif
|
|
||||||
mov %rdi, %rax
|
mov %rdi, %rax
|
||||||
|
|
||||||
/* Check whether we should copy backward or forward. */
|
/* Check whether we should copy backward or forward. */
|
||||||
|
Loading…
Reference in New Issue
Block a user