aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--xen/common/string.c1
-rw-r--r--xen/include/asm-x86/string.h3
2 files changed, 3 insertions, 1 deletions
diff --git a/xen/common/string.c b/xen/common/string.c
index 562f6cb585..5a357430f1 100644
--- a/xen/common/string.c
+++ b/xen/common/string.c
@@ -370,6 +370,7 @@ void * memmove(void * dest,const void *src,size_t count)
#endif
#ifndef __HAVE_ARCH_MEMCMP
+#undef memcmp
/**
* memcmp - Compare two areas of memory
* @cs: One area of memory
diff --git a/xen/include/asm-x86/string.h b/xen/include/asm-x86/string.h
index 2bbdf0ce42..5921d22c85 100644
--- a/xen/include/asm-x86/string.h
+++ b/xen/include/asm-x86/string.h
@@ -109,7 +109,8 @@ void *__memcpy(void *t, const void *f, size_t n)
#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)