Add ffs and memcmp16 to x86_64.

Change-Id: I652c1356f1c7c52299977181c2cf154386979380
diff --git a/libc/arch-x86_64/string/ffs.S b/libc/arch-x86_64/string/ffs.S
new file mode 100644
index 0000000..2666bc4
--- /dev/null
+++ b/libc/arch-x86_64/string/ffs.S
@@ -0,0 +1,18 @@
+/*	$OpenBSD: ffs.S,v 1.1 2004/01/28 01:44:45 mickey Exp $	*/
+/*
+ * Written by J.T. Conklin <jtc@netbsd.org>.
+ * Public domain.
+ * Adapted for NetBSD/x86_64 by Frank van der Linden <fvdl@wasabisystems.com>
+ */
+
+#include <machine/asm.h>
+
+ENTRY(ffs)
+	bsfl	%edi,%eax
+	jz	L1	 		/* ZF is set if all bits are 0 */
+	incl	%eax			/* bits numbered from 1, not 0 */
+	ret
+
+	_ALIGN_TEXT
+L1:	xorl	%eax,%eax		/* clear result */
+	ret
diff --git a/libc/arch-x86_64/x86_64.mk b/libc/arch-x86_64/x86_64.mk
index 244eb56..b17b138 100644
--- a/libc/arch-x86_64/x86_64.mk
+++ b/libc/arch-x86_64/x86_64.mk
@@ -9,6 +9,8 @@
     arch-x86_64/bionic/__set_tls.c \
     arch-x86_64/bionic/sigsetjmp.S \
     arch-x86_64/bionic/syscall.S \
+    arch-x86_64/string/ffs.S \
+    string/memcmp16.c \
 
 _LIBC_ARCH_STATIC_SRC_FILES := \
     bionic/dl_iterate_phdr_static.c \