diff options
Diffstat (limited to 'firmware/asm/arm/memcpy.S')
-rw-r--r-- | firmware/asm/arm/memcpy.S | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/firmware/asm/arm/memcpy.S b/firmware/asm/arm/memcpy.S index 2a55fb5656..83d43293e6 100644 --- a/firmware/asm/arm/memcpy.S +++ b/firmware/asm/arm/memcpy.S | |||
@@ -36,17 +36,25 @@ | |||
36 | #endif | 36 | #endif |
37 | 37 | ||
38 | /* Prototype: void *memcpy(void *dest, const void *src, size_t n); */ | 38 | /* Prototype: void *memcpy(void *dest, const void *src, size_t n); */ |
39 | /* Prototype: void *mempcpy(void *dest, const void *src, size_t n); */ | ||
39 | 40 | ||
40 | .section .icode,"ax",%progbits | 41 | .section .icode,"ax",%progbits |
41 | 42 | ||
42 | .align 2 | 43 | .align 2 |
43 | .global memcpy | 44 | .global memcpy |
44 | .type memcpy,%function | 45 | .type memcpy,%function |
46 | .global mempcpy | ||
47 | .type mempcpy,%function | ||
48 | |||
49 | mempcpy: | ||
50 | add r3, r0, r2 | ||
51 | stmfd sp!, {r3, r4, lr} | ||
52 | b 0f | ||
45 | 53 | ||
46 | memcpy: | 54 | memcpy: |
47 | stmfd sp!, {r0, r4, lr} | 55 | stmfd sp!, {r0, r4, lr} |
48 | 56 | ||
49 | subs r2, r2, #4 | 57 | 0: subs r2, r2, #4 |
50 | blt 8f | 58 | blt 8f |
51 | ands ip, r0, #3 | 59 | ands ip, r0, #3 |
52 | bne 9f | 60 | bne 9f |