diff options
Diffstat (limited to 'newlib/libc/machine/ft32/memcpy.S')
-rw-r--r-- | newlib/libc/machine/ft32/memcpy.S | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/newlib/libc/machine/ft32/memcpy.S b/newlib/libc/machine/ft32/memcpy.S new file mode 100644 index 000000000..b29179b78 --- /dev/null +++ b/newlib/libc/machine/ft32/memcpy.S @@ -0,0 +1,32 @@ +/* A memcpy.c for FT32 + Copyright (C) 2014 FTDI (support@ftdichip.com) + + The authors hereby grant permission to use, copy, modify, distribute, + and license this software and its documentation for any purpose, provided + that existing copyright notices are retained in all copies and that this + notice is included verbatim in any distributions. No written agreement, + license, or royalty fee is required for any of the authorized uses. + Modifications to this software may be copyrighted by their authors + and need not follow the licensing terms described here, provided that + the new terms are clearly indicated on the first page of each file where + they apply. */ + + .text + .global memcpy + .type memcpy,@function +memcpy: + ldk $r3,32764 +1: + cmp $r2,$r3 + jmpc lte,2f + memcpy.b $r0,$r1,$r3 + add $r0,$r0,$r3 + add $r1,$r1,$r3 + sub $r2,$r2,$r3 + jmp 1b +2: + memcpy.b $r0,$r1,$r2 + return +.Lend2: + .size memcpy,.Lend2-memcpy + |