# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1195911446 0
# Node ID 5e8e82e80f3b8c9c7de31be2faf04f3103dc1f7b
# Parent 96409cebd74bebbc8572cafb6ab019bbb49bdd17
Fix non-optimized compilation of Xen's memcmp
Even when using __builtin_memcmp, gcc may emit external references to
memcmp (when not optimizing for instance), so this #define does not
always provide a completely suitable memcmp().
Signed-off-by: Samuel Thibault <samuel.thibault@xxxxxxxxxx>
Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
xen/common/string.c | 1 +
xen/include/asm-x86/string.h | 3 ++-
2 files changed, 3 insertions(+), 1 deletion(-)
diff -r 96409cebd74b -r 5e8e82e80f3b xen/common/string.c
--- a/xen/common/string.c Sat Nov 24 13:31:39 2007 +0000
+++ b/xen/common/string.c Sat Nov 24 13:37:26 2007 +0000
@@ -370,6 +370,7 @@ void * memmove(void * dest,const void *s
#endif
#ifndef __HAVE_ARCH_MEMCMP
+#undef memcmp
/**
* memcmp - Compare two areas of memory
* @cs: One area of memory
diff -r 96409cebd74b -r 5e8e82e80f3b xen/include/asm-x86/string.h
--- a/xen/include/asm-x86/string.h Sat Nov 24 13:31:39 2007 +0000
+++ b/xen/include/asm-x86/string.h Sat Nov 24 13:37:26 2007 +0000
@@ -109,7 +109,8 @@ void *__memcpy(void *t, const void *f, s
#define __HAVE_ARCH_MEMMOVE
extern void *memmove(void *dest, const void *src, size_t n);
-#define __HAVE_ARCH_MEMCMP
+/* Some versions of gcc emit references to memcmp despite this macro defn. */
+/*#define __HAVE_ARCH_MEMCMP*/
#define memcmp __builtin_memcmp
static inline void *__memset_generic(void *s, char c, size_t count)
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|