diff --git a/libc/include/string.h b/libc/include/string.h
index 8730ea3..8e472e7 100644
--- a/libc/include/string.h
+++ b/libc/include/string.h
@@ -93,10 +93,6 @@
     __attribute__((__error__("memcpy called with size bigger than source")));
 extern void __memcpy_overlap_error()
     __attribute__((__error__("memcpy called with overlapping regions")));
-extern void *__memcpy_real(void *, const void *, size_t)
-    __asm__(__USER_LABEL_PREFIX__ "memcpy");
-extern void *__memcpy_chk2(void *, const void *, size_t, size_t, size_t);
-
 
 __BIONIC_FORTIFY_INLINE
 void *memcpy (void *dest, const void *src, size_t copy_amount) {
@@ -118,11 +114,7 @@
         __memcpy_overlap_error();
     }
 
-    if (__builtin_constant_p(copy_amount) && __builtin_constant_p(d - s)) {
-         return __memcpy_real(dest, src, copy_amount);
-    }
-
-    return __memcpy_chk2(dest, src, copy_amount, d_len, s_len);
+    return __builtin___memcpy_chk(dest, src, copy_amount, d_len);
 }
 
 __BIONIC_FORTIFY_INLINE
