libc: use Cortex-A7/A53 memset on Kryo
Tested on OnePlus 3 with MSM8996
Before (Krait):
BM_string_memset/8 1000k 7 1.071 GiB/s
BM_string_memset/64 1000k 9 6.720 GiB/s
BM_string_memset/512 1000k 19 26.699 GiB/s
BM_string_memset/1024 1000k 29 34.214 GiB/s
BM_string_memset/8Ki 10M 184 44.302 GiB/s
BM_string_memset/16Ki 5M 351 46.656 GiB/s
BM_string_memset/32Ki 5M 686 47.744 GiB/s
BM_string_memset/64Ki 1000k 1355 48.342 GiB/s
After (A7/A53):
BM_string_memset/8 1000k 7 1.017 GiB/s
BM_string_memset/64 1000k 7 8.039 GiB/s
BM_string_memset/512 1000k 13 37.976 GiB/s
BM_string_memset/1024 1000k 21 47.595 GiB/s
BM_string_memset/8Ki 10M 150 54.354 GiB/s
BM_string_memset/16Ki 10M 285 57.336 GiB/s
BM_string_memset/32Ki 5M 555 59.016 GiB/s
BM_string_memset/64Ki 1000k 1097 59.720 GiB/s
Test: make otapackage
Test: Verified this wins in all dimensions on a Pixel device.
Change-Id: I4cb72cc0363877de7c41d6f991149fda42fd0b4b
diff --git a/libc/Android.bp b/libc/Android.bp
index 9773542..de270c2 100644
--- a/libc/Android.bp
+++ b/libc/Android.bp
@@ -1019,7 +1019,7 @@
kryo: {
srcs: [
"arch-arm/krait/bionic/memcpy.S",
- "arch-arm/krait/bionic/memset.S",
+ "arch-arm/cortex-a7/bionic/memset.S",
"arch-arm/krait/bionic/strcmp.S",
"arch-arm/krait/bionic/__strcat_chk.S",
"arch-arm/krait/bionic/__strcpy_chk.S",