summaryrefslogtreecommitdiffstats
path: root/newlib/libc/machine/ft32/memcpy.S
diff options
context:
space:
mode:
authorJeff Johnston <jjohnstn@redhat.com>2015-09-04 13:17:53 -0400
committerJeff Johnston <jjohnstn@redhat.com>2015-09-04 14:37:37 -0400
commit948b5f00435ff00e8873ea1326271d0069e41301 (patch)
tree667d4b7826ecb1a70ec4461dbc7316a1e487d898 /newlib/libc/machine/ft32/memcpy.S
parentdc09f27aaa27e1b72c2fcec3b7d6b1e29cab1d28 (diff)
downloadcygnal-948b5f00435ff00e8873ea1326271d0069e41301.tar.gz
cygnal-948b5f00435ff00e8873ea1326271d0069e41301.tar.bz2
cygnal-948b5f00435ff00e8873ea1326271d0069e41301.zip
Add support for ft32 to newlib.
Diffstat (limited to 'newlib/libc/machine/ft32/memcpy.S')
-rw-r--r--newlib/libc/machine/ft32/memcpy.S32
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
+