diff options
author | Jeff Johnston <jjohnstn@redhat.com> | 2002-04-20 00:29:51 +0000 |
---|---|---|
committer | Jeff Johnston <jjohnstn@redhat.com> | 2002-04-20 00:29:51 +0000 |
commit | 59be22909b8ed45624a24fe9952d69a1280bd858 (patch) | |
tree | ae61de2700d322ec1d33d8d19b3ad8c67973122a /newlib/libc/machine/xscale/strcpy.c | |
parent | 2dd4c4dc18707380351de8dd7eeef630bf6a60ab (diff) | |
download | cygnal-59be22909b8ed45624a24fe9952d69a1280bd858.tar.gz cygnal-59be22909b8ed45624a24fe9952d69a1280bd858.tar.bz2 cygnal-59be22909b8ed45624a24fe9952d69a1280bd858.zip |
2002-04-19 Bill Siegmund
* libc/machine/xscale/memchr.c: Don't use multi-line strings.
* libc/machine/xscale/memcmp.c: Ditto.
* libc/machine/xscale/memcpy.c: Ditto.
* libc/machine/xscale/memmove.c: Ditto.
* libc/machine/xscale/memset.c: Ditto.
* libc/machine/xscale/strchr.c: Ditto.
* libc/machine/xscale/strcmp.c: Ditto.
* libc/machine/xscale/strcpy.c: Ditto.
* libc/machine/xscale/strlen.c: Ditto.
Diffstat (limited to 'newlib/libc/machine/xscale/strcpy.c')
-rw-r--r-- | newlib/libc/machine/xscale/strcpy.c | 38 |
1 files changed, 19 insertions, 19 deletions
diff --git a/newlib/libc/machine/xscale/strcpy.c b/newlib/libc/machine/xscale/strcpy.c index 707902671..46db2ba6a 100644 --- a/newlib/libc/machine/xscale/strcpy.c +++ b/newlib/libc/machine/xscale/strcpy.c @@ -28,25 +28,25 @@ strcpy (char *dest, const char *src) R4 = 0xfefefeff [ == ~(0x80808080 << 1) ] R5 = 0x80808080 */ - asm ("mov r5, #0x80 - ldr r1, [%1, #0] - add r5, r5, #0x8000 - add r5, r5, r5, lsl #16 - mvn r4, r5, lsl #1 - - add r3, r1, r5 - bic r3, r3, r1 - ands r2, r3, r4 - bne 1f -0: - ldr r3, [%1, #0] - ldr r1, [%1, #4]! -" PRELOADSTR("%1") " - str r3, [%0], #4 - add r2, r1, r4 - bic r2, r2, r1 - ands r3, r2, r5 - beq 0b + asm ("mov r5, #0x80\n\ + ldr r1, [%1, #0]\n\ + add r5, r5, #0x8000\n\ + add r5, r5, r5, lsl #16\n\ + mvn r4, r5, lsl #1\n\ +\n\ + add r3, r1, r5\n\ + bic r3, r3, r1\n\ + ands r2, r3, r4\n\ + bne 1f\n\ +0:\n\ + ldr r3, [%1, #0]\n\ + ldr r1, [%1, #4]!\n\ +" PRELOADSTR("%1") "\n\ + str r3, [%0], #4\n\ + add r2, r1, r4\n\ + bic r2, r2, r1\n\ + ands r3, r2, r5\n\ + beq 0b\n\ 1:" : "=&r" (dest), "=&r" (src) : "0" (dest), "1" (src) |