summaryrefslogtreecommitdiff
path: root/sys/lib/libkern/arch/x86_64/bzero.S
diff options
context:
space:
mode:
Diffstat (limited to 'sys/lib/libkern/arch/x86_64/bzero.S')
-rw-r--r--sys/lib/libkern/arch/x86_64/bzero.S44
1 files changed, 0 insertions, 44 deletions
diff --git a/sys/lib/libkern/arch/x86_64/bzero.S b/sys/lib/libkern/arch/x86_64/bzero.S
deleted file mode 100644
index 6e4fe834d1a..00000000000
--- a/sys/lib/libkern/arch/x86_64/bzero.S
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Written by J.T. Conklin <jtc@netbsd.org>.
- * Public domain.
- * Adapted for NetBSD/x86_64 by Frank van der Linden <fvdl@wasabisystems.com>
- */
-
-#include <machine/asm.h>
-
-#if defined(LIBC_SCCS)
- RCSID("$NetBSD: bzero.S,v 1.1 2001/06/19 00:22:45 fvdl Exp $")
-#endif
-
-ENTRY(bzero)
- movq %rsi,%rdx
-
- cld /* set fill direction forward */
- xorq %rax,%rax /* set fill data to 0 */
-
- /*
- * if the string is too short, it's really not worth the overhead
- * of aligning to word boundries, etc. So we jump to a plain
- * unaligned set.
- */
- cmpq $16,%rdx
- jb L1
-
- movq %rdi,%rcx /* compute misalignment */
- negq %rcx
- andq $7,%rcx
- subq %rcx,%rdx
- rep /* zero until word aligned */
- stosb
-
- movq %rdx,%rcx /* zero by words */
- shrq $3,%rcx
- andq $7,%rdx
- rep
- stosq
-
-L1: movq %rdx,%rcx /* zero remainder by bytes */
- rep
- stosb
-
- ret