WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] Fix memset/memcmp/memmove declaration/definition.

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] Fix memset/memcmp/memmove declaration/definition.
From: BitKeeper Bot <riel@xxxxxxxxxxx>
Date: Wed, 20 Apr 2005 14:29:18 +0000
Delivery-date: Wed, 20 Apr 2005 15:02:34 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: Xen Development List <xen-devel@xxxxxxxxxxxxxxxxxxx>
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
ChangeSet 1.1342, 2005/04/20 15:29:18+01:00, kaf24@xxxxxxxxxxxxxxxxxxxx

        Fix memset/memcmp/memmove declaration/definition.
        Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>



 arch/x86/string.c               |   27 +++++++++++++++++++++++++++
 include/asm-x86/x86_32/string.h |   21 ++++++++++++---------
 include/asm-x86/x86_64/string.h |   12 +++++++++++-
 3 files changed, 50 insertions(+), 10 deletions(-)


diff -Nru a/xen/arch/x86/string.c b/xen/arch/x86/string.c
--- /dev/null   Wed Dec 31 16:00:00 196900
+++ b/xen/arch/x86/string.c     2005-04-20 11:02:48 -04:00
@@ -0,0 +1,27 @@
+/******************************************************************************
+ * string.c
+ * 
+ * These provide something for compiler-emitted string operations to link
+ * against.
+ */
+
+#include <xen/config.h>
+#include <xen/lib.h>
+
+#undef memmove
+void *memmove(void *dest, const void *src, size_t count)
+{
+    return __memmove(dest, src, count);
+}
+
+#undef memcpy
+void *memcpy(void *dest, const void *src, size_t count)
+{
+    return __memcpy(dest, src, count);
+}
+
+#undef memset
+void *memset(void *s, int c, size_t count)
+{
+    return __memset(s, c, count);
+}
diff -Nru a/xen/include/asm-x86/x86_32/string.h 
b/xen/include/asm-x86/x86_32/string.h
--- a/xen/include/asm-x86/x86_32/string.h       2005-04-20 11:02:48 -04:00
+++ b/xen/include/asm-x86/x86_32/string.h       2005-04-20 11:02:48 -04:00
@@ -184,7 +184,7 @@
 return __res;
 }
 
-static inline void * __memcpy(void * to, const void * from, size_t n)
+static inline void * __variable_memcpy(void * to, const void * from, size_t n)
 {
 int d0, d1, d2;
 __asm__ __volatile__(
@@ -272,12 +272,13 @@
 }
 
 #define __HAVE_ARCH_MEMCPY
-static always_inline __attribute_used__
-void memcpy(void *t, const void *f, size_t n)
+#define memcpy(t,f,n) (__memcpy((t),(f),(n)))
+static always_inline
+void *__memcpy(void *t, const void *f, size_t n)
 {
-       (__builtin_constant_p(n) ?
+       return (__builtin_constant_p(n) ?
         __constant_memcpy((t),(f),(n)) :
-        __memcpy((t),(f),(n)));
+        __variable_memcpy((t),(f),(n)));
 }
 
 /*
@@ -299,7 +300,8 @@
 */
 
 #define __HAVE_ARCH_MEMMOVE
-static inline void * memmove(void * dest,const void * src, size_t n)
+#define memmove(dest,src,n) (__memmove((dest),(src),(n)))
+static inline void *__memmove(void * dest,const void * src, size_t n)
 {
 int d0, d1, d2;
 if (dest<src)
@@ -455,16 +457,17 @@
  __constant_c_and_count_memset((s),(c),(count)) : \
  __constant_c_memset((s),(c),(count)))
 
-#define __memset(s, c, count) \
+#define __var_x_memset(s, c, count) \
 (__builtin_constant_p(count) ? \
  __constant_count_memset((s),(c),(count)) : \
  __memset_generic((s),(c),(count)))
 
 #define __HAVE_ARCH_MEMSET
-#define memset(s, c, count) \
+#define memset(s, c, count) (__memset((s),(c),(count)))
+#define __memset(s, c, count) \
 (__builtin_constant_p(c) ? \
  __constant_c_x_memset((s),(0x01010101UL*(unsigned char)(c)),(count)) : \
- __memset((s),(c),(count)))
+ __var_x_memset((s),(c),(count)))
 
 /*
  * find the first occurrence of byte 'c', or 1 past the area if none
diff -Nru a/xen/include/asm-x86/x86_64/string.h 
b/xen/include/asm-x86/x86_64/string.h
--- a/xen/include/asm-x86/x86_64/string.h       2005-04-20 11:02:48 -04:00
+++ b/xen/include/asm-x86/x86_64/string.h       2005-04-20 11:02:48 -04:00
@@ -1,6 +1,16 @@
 #ifndef _X86_64_STRING_H_
 #define _X86_64_STRING_H_
 
-/* nothing */
+#define __HAVE_ARCH_MEMMOVE
+#define memmove(dest,src,n) (__memmove((dest),(src),(n)))
+#define __memmove(dest,src,n) (__builtin_memmove((dest),(src),(n)))
+
+#define __HAVE_ARCH_MEMCPY
+#define memcpy(t,f,n) (__memcpy((t),(f),(n)))
+#define __memcpy(t,f,n) (__builtin_memcpy((t),(f),(n)))
+
+#define __HAVE_ARCH_MEMSET
+#define memset(s, c, count) (__memset((s),(c),(count)))
+#define __memset(s, c, count) (__builtin_memset((s),(c),(count)))
 
 #endif

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] Fix memset/memcmp/memmove declaration/definition., BitKeeper Bot <=