summaryrefslogtreecommitdiffstats
path: root/sys/lib/libkern/arch/amd64
diff options
context:
space:
mode:
authortedu <tedu@openbsd.org>2014-11-29 18:51:23 +0000
committertedu <tedu@openbsd.org>2014-11-29 18:51:23 +0000
commit737e061132473fb2b37fc15648b2a2378e910cae (patch)
tree0f60e22e8c133876ab658db83b19114dbef7cc43 /sys/lib/libkern/arch/amd64
parentrestore the "hot" memcpy that existed before recent conversion flipflop (diff)
downloadwireguard-openbsd-737e061132473fb2b37fc15648b2a2378e910cae.tar.xz
wireguard-openbsd-737e061132473fb2b37fc15648b2a2378e910cae.zip
it should not be necessary to clear the direction flag
ok deraadt
Diffstat (limited to 'sys/lib/libkern/arch/amd64')
-rw-r--r--sys/lib/libkern/arch/amd64/bcmp.S1
-rw-r--r--sys/lib/libkern/arch/amd64/bzero.S1
-rw-r--r--sys/lib/libkern/arch/amd64/memchr.S1
-rw-r--r--sys/lib/libkern/arch/amd64/memcmp.S1
-rw-r--r--sys/lib/libkern/arch/amd64/memmove.S1
-rw-r--r--sys/lib/libkern/arch/amd64/memset.S2
-rw-r--r--sys/lib/libkern/arch/amd64/scanc.S1
-rw-r--r--sys/lib/libkern/arch/amd64/skpc.S1
8 files changed, 0 insertions, 9 deletions
diff --git a/sys/lib/libkern/arch/amd64/bcmp.S b/sys/lib/libkern/arch/amd64/bcmp.S
index 3c96a90b340..4cb1b3d6894 100644
--- a/sys/lib/libkern/arch/amd64/bcmp.S
+++ b/sys/lib/libkern/arch/amd64/bcmp.S
@@ -2,7 +2,6 @@
ENTRY(bcmp)
xorl %eax,%eax /* clear return value */
- cld /* set compare direction forward */
movq %rdx,%rcx /* compare by words */
shrq $3,%rcx
diff --git a/sys/lib/libkern/arch/amd64/bzero.S b/sys/lib/libkern/arch/amd64/bzero.S
index 76adafc20ab..354e2066ed3 100644
--- a/sys/lib/libkern/arch/amd64/bzero.S
+++ b/sys/lib/libkern/arch/amd64/bzero.S
@@ -9,7 +9,6 @@
ENTRY(bzero)
movq %rsi,%rdx
- cld /* set fill direction forward */
xorq %rax,%rax /* set fill data to 0 */
/*
diff --git a/sys/lib/libkern/arch/amd64/memchr.S b/sys/lib/libkern/arch/amd64/memchr.S
index 88fa37462d2..1738e17f8ee 100644
--- a/sys/lib/libkern/arch/amd64/memchr.S
+++ b/sys/lib/libkern/arch/amd64/memchr.S
@@ -11,7 +11,6 @@ ENTRY(memchr)
movq %rdx,%rcx /* set length of search */
testq %rcx,%rcx /* test for len == 0 */
jz L1
- cld /* set search forward */
repne /* search! */
scasb
jne L1 /* scan failed, return null */
diff --git a/sys/lib/libkern/arch/amd64/memcmp.S b/sys/lib/libkern/arch/amd64/memcmp.S
index d32c66d5b93..0d97f6a9bd2 100644
--- a/sys/lib/libkern/arch/amd64/memcmp.S
+++ b/sys/lib/libkern/arch/amd64/memcmp.S
@@ -7,7 +7,6 @@
#include <machine/asm.h>
ENTRY(memcmp)
- cld /* set compare direction forward */
movq %rdx,%rcx /* compare by longs */
shrq $3,%rcx
repe
diff --git a/sys/lib/libkern/arch/amd64/memmove.S b/sys/lib/libkern/arch/amd64/memmove.S
index 1516c743660..351e4d53a49 100644
--- a/sys/lib/libkern/arch/amd64/memmove.S
+++ b/sys/lib/libkern/arch/amd64/memmove.S
@@ -57,7 +57,6 @@ ENTRY(memcpy)
movq %rdi,%r11 /* save dest */
movq %rdx,%rcx
2:
- cld /* copy forwards. */
shrq $3,%rcx /* copy by words */
rep
movsq
diff --git a/sys/lib/libkern/arch/amd64/memset.S b/sys/lib/libkern/arch/amd64/memset.S
index 670d9426b13..67d6404e932 100644
--- a/sys/lib/libkern/arch/amd64/memset.S
+++ b/sys/lib/libkern/arch/amd64/memset.S
@@ -12,8 +12,6 @@ ENTRY(memset)
movq %rdx,%rcx
movq %rdi,%r11
- cld /* set fill direction forward */
-
/*
* if the string is too short, it's really not worth the overhead
* of aligning to word boundaries, etc. So we jump to a plain
diff --git a/sys/lib/libkern/arch/amd64/scanc.S b/sys/lib/libkern/arch/amd64/scanc.S
index f125ed295d3..4ecaae3c15b 100644
--- a/sys/lib/libkern/arch/amd64/scanc.S
+++ b/sys/lib/libkern/arch/amd64/scanc.S
@@ -43,7 +43,6 @@ ENTRY(scanc)
jz 2f
movq %r11,%rdi
xorq %rax,%rax
- cld
1:
lodsb
testb %dl,(%rax,%rdi)
diff --git a/sys/lib/libkern/arch/amd64/skpc.S b/sys/lib/libkern/arch/amd64/skpc.S
index 7addfa9b74e..5942a1c07e8 100644
--- a/sys/lib/libkern/arch/amd64/skpc.S
+++ b/sys/lib/libkern/arch/amd64/skpc.S
@@ -39,7 +39,6 @@ ENTRY(skpc)
movl %edi,%eax
movq %rsi,%rcx
movq %rdx,%rdi
- cld
repe
scasb
je 1f