Fix ffs on x86 for old API levels.

<strings.h>'s ffs used to work by accident. In the past, <strings.h> used
to incorrectly declare ffs for all platforms at all API levels. In the
unified headers, there's no such declaration for x86 before API 18 (which
makes sense, because that function was missing on x86 until then).

But as long as there was a declaration for ffs, the compiler just inlined
__builtin_ffs. There was no problem at link time because the compiler didn't
actually add a reference to the missing ffs symbol.

Restore the old behavior by manually instructing the compiler to inline its
builtin in these cases.

Bug: https://github.com/android-ndk/ndk/issues/439
Test: built new NDK 'ffs' test
Change-Id: I840e99f237c86f7cb028a0f67aaa8c6ff3eda245
diff --git a/libc/include/strings.h b/libc/include/strings.h
index 021e2b4..11f3213 100644
--- a/libc/include/strings.h
+++ b/libc/include/strings.h
@@ -54,8 +54,12 @@
 #define bzero(b, len) (void)(__builtin_memset((b), '\0', (len)))
 #endif
 
+#if !defined(__i386__) || __ANDROID_API__ >= __ANDROID_API_J_MR2__
 int ffs(int) __INTRODUCED_IN_X86(18);
+#endif
 
 __END_DECLS
 
+#include <android/legacy_strings_inlines.h>
+
 #endif /* !defined(_STRINGS_H_) */