diff --git a/Android.build_one.mk b/Android.build_one.mk
index 1705cf2..c0ff16c 100644
--- a/Android.build_one.mk
+++ b/Android.build_one.mk
@@ -25,11 +25,10 @@
 vg_local_android_arch := $(TARGET_ARCH)
 endif
 
-# For arm and arm64 targets, clang compiled module has other
-# undefined errors, see bug 28454823.
-ifeq ($(filter $TARGET_ARCH,x86 x86_64),)
-  LOCAL_CLANG := false
-endif
+# For arm64 target, clang compiled valgrind has setjmp/longjump problems,
+# and gcc compiled valgrind failed many art test too.
+# See bug 28454823 and 29282211.
+LOCAL_CLANG_arm64 := false
 
 # Do not call (builtin) memset from VG(memset).
 LOCAL_CLANG_CFLAGS += -fno-builtin-memset
diff --git a/coregrind/m_main.c b/coregrind/m_main.c
index 140efbf..66f04df 100644
--- a/coregrind/m_main.c
+++ b/coregrind/m_main.c
@@ -2883,6 +2883,46 @@
    VG_(printf)("Something called __aeabi_unwind_cpp_pr1()\n");
    vg_assert(0);
 }
+
+#if defined(ANDROID) && defined(__clang__)
+/* Replace __aeabi_memcpy* functions with vgPlain_memcpy. */
+void* __aeabi_memcpy(void *dest, const void *src, SizeT n);
+void* __aeabi_memcpy(void *dest, const void *src, SizeT n)
+{
+    return VG_(memcpy)(dest, src, n);
+}
+
+void* __aeabi_memcpy4(void *dest, const void *src, SizeT n);
+void* __aeabi_memcpy4(void *dest, const void *src, SizeT n)
+{
+    return VG_(memcpy)(dest, src, n);
+}
+
+void* __aeabi_memcpy8(void *dest, const void *src, SizeT n);
+void* __aeabi_memcpy8(void *dest, const void *src, SizeT n)
+{
+    return VG_(memcpy)(dest, src, n);
+}
+
+/* Replace __aeabi_memclr* functions with vgPlain_memset. */
+void* __aeabi_memclr(void *dest, SizeT n);
+void* __aeabi_memclr(void *dest, SizeT n)
+{
+    return VG_(memset)(dest, 0, n);
+}
+
+void* __aeabi_memclr4(void *dest, SizeT n);
+void* __aeabi_memclr4(void *dest, SizeT n)
+{
+    return VG_(memset)(dest, 0, n);
+}
+
+void* __aeabi_memclr8(void *dest, SizeT n);
+void* __aeabi_memclr8(void *dest, SizeT n)
+{
+    return VG_(memset)(dest, 0, n);
+}
+#endif /* ANDROID __clang__ */
 #endif
 
 /* ---------------- Requirement 2 ---------------- */
