summaryrefslogtreecommitdiffstats
path: root/contrib/syslinux-4.02/memdump/memcpy.S
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/syslinux-4.02/memdump/memcpy.S')
-rw-r--r--contrib/syslinux-4.02/memdump/memcpy.S23
1 files changed, 23 insertions, 0 deletions
diff --git a/contrib/syslinux-4.02/memdump/memcpy.S b/contrib/syslinux-4.02/memdump/memcpy.S
new file mode 100644
index 0000000..76eef73
--- /dev/null
+++ b/contrib/syslinux-4.02/memdump/memcpy.S
@@ -0,0 +1,23 @@
+#
+# memcpy.S
+#
+# Simple 16-bit memcpy() implementation
+#
+
+ .text
+ .code16gcc
+ .globl memcpy
+ .type memcpy, @function
+memcpy:
+ cld
+ pushw %di
+ pushw %si
+ movw %ax,%di
+ movw %dx,%si
+ # The third argument is already in cx
+ rep ; movsb
+ popw %si
+ popw %di
+ ret
+
+ .size memcpy,.-memcpy