diff options
Diffstat (limited to 'newlib/libc/machine/xscale/strlen.c')
-rw-r--r-- | newlib/libc/machine/xscale/strlen.c | 94 |
1 files changed, 47 insertions, 47 deletions
diff --git a/newlib/libc/machine/xscale/strlen.c b/newlib/libc/machine/xscale/strlen.c index a8bc0851d..e113ade34 100644 --- a/newlib/libc/machine/xscale/strlen.c +++ b/newlib/libc/machine/xscale/strlen.c @@ -28,68 +28,68 @@ strlen (const char *str) R4 = 0xfefefeff [ == ~(0x80808080 << 1) ] R5 = 0x80808080 */ - asm ("mov r5, #0x80\n\ - add r5, r5, #0x8000\n\ - add r5, r5, r5, lsl #16\n\ - mvn r4, r5, lsl #1\n\ + asm ("mov r5, #0x80 + add r5, r5, #0x8000 + add r5, r5, r5, lsl #16 + mvn r4, r5, lsl #1 " #if defined __ARM_ARCH_5__ || defined __ARM_ARCH_5T__ || defined __ARM_ARCH_5E__ || defined __ARM_ARCH_5TE__ -" tst %0, #0x7\n\ - ldreqd r6, [%0]\n\ - beq 1f\n\ - ldr r2, [%0]\n\ - add r3, r2, r4\n\ - bic r3, r3, r2\n\ - ands r2, r3, r5\n\ - bne 2f\n\ - sub %0, %0, #4\n\ -\n\ -0:\n\ - ldrd r6, [%0, #8]!\n\ +" tst %0, #0x7 + ldreqd r6, [%0] + beq 1f + ldr r2, [%0] + add r3, r2, r4 + bic r3, r3, r2 + ands r2, r3, r5 + bne 2f + sub %0, %0, #4 + +0: + ldrd r6, [%0, #8]! " PRELOADSTR ("%0") -"\n\ -1:\n\ - add r3, r6, r4\n\ - add r2, r7, r4\n\ - bic r3, r3, r6\n\ - bic r2, r2, r7\n\ - and r3, r3, r5\n\ - and r2, r2, r5\n\ - orrs r3, r2, r3\n\ - beq 0b\n\ +" +1: + add r3, r6, r4 + add r2, r7, r4 + bic r3, r3, r6 + bic r2, r2, r7 + and r3, r3, r5 + and r2, r2, r5 + orrs r3, r2, r3 + beq 0b " #else -" sub %0, %0, #4\n\ -\n\ -0:\n\ - ldr r6, [%0, #4]!\n\ +" sub %0, %0, #4 + +0: + ldr r6, [%0, #4]! " PRELOADSTR ("%0") -"\n\ - add r3, r6, r4\n\ - bic r3, r3, r6\n\ - ands r3, r3, r5\n\ - beq 0b\n\ +" + add r3, r6, r4 + bic r3, r3, r6 + ands r3, r3, r5 + beq 0b " #endif /* __ARM_ARCH_5[T][E]__ */ -"\n\ -2:\n\ - ldrb r3, [%0]\n\ - cmp r3, #0x0\n\ - beq 1f\n\ -\n\ -0:\n\ - ldrb r3, [%0, #1]!\n\ +" +2: + ldrb r3, [%0] + cmp r3, #0x0 + beq 1f + +0: + ldrb r3, [%0, #1]! " PRELOADSTR ("%0") -"\n\ - cmp r3, #0x0\n\ - bne 0b\n\ -1:\n\ +" + cmp r3, #0x0 + bne 0b +1: " : "=r" (str) : "0" (str) : "r2", "r3", "r4", "r5", "r6", "r7"); |