summaryrefslogtreecommitdiff
path: root/arch/x86/boot/compressed/string.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/x86/boot/compressed/string.c')
-rw-r--r--arch/x86/boot/compressed/string.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/x86/boot/compressed/string.c b/arch/x86/boot/compressed/string.c
new file mode 100644
index 00000000..ffb9c5c9
--- /dev/null
+++ b/arch/x86/boot/compressed/string.c
@@ -0,0 +1,11 @@
+#include "misc.h"
+
+int memcmp(const void *s1, const void *s2, size_t len)
+{
+ u8 diff;
+ asm("repe; cmpsb; setnz %0"
+ : "=qm" (diff), "+D" (s1), "+S" (s2), "+c" (len));
+ return diff;
+}
+
+#include "../string.c"