[git commit ldso-future 1/1] dl-string.h: add optimized memset for i386

Peter S. Mazinger ps.m at gmx.net
Wed Mar 30 11:53:36 UTC 2011


commit: http://git.uclibc.org/uClibc/commit/?id=fc49ec5553d6bed9257cf5f8edff26f4f247c9a8
branch: http://git.uclibc.org/uClibc/commit/?id=refs/heads/ldso-future

Signed-off-by: Peter S. Mazinger <ps.m at gmx.net>
---
 ldso/include/dl-string.h |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/ldso/include/dl-string.h b/ldso/include/dl-string.h
index bfb79de..bf77f84 100644
--- a/ldso/include/dl-string.h
+++ b/ldso/include/dl-string.h
@@ -169,6 +169,19 @@ lessthan4:
 	} while (--n);
 	return to;
 }
+#elif defined(__i386__)
+/* smaller, copied from an earlier libc/string/i386/memset.c */
+static __always_inline void *_dl_memset(void *s, int c, size_t count)
+{
+	int d0, d1;
+	__asm__ __volatile__(
+		"rep\n\t"
+		"stosb"
+		: "=&c" (d0), "=&D" (d1)
+		:"a" (c),"1" (s),"0" (count)
+		:"memory");
+	return s;
+}
 #else
 static __always_inline void * _dl_memset(void *str, int c, size_t len)
 {
-- 
1.7.3.4



More information about the uClibc-cvs mailing list