Hide the __bionic_clone and __bionic_clone_entry implementation details.

clone(2) is the public symbol.

Also switch a test from __bionic_clone to clone; testing public API
means the test now works on glibc too.

Change-Id: If59def26a00c3afadb8a6cf9442094c35a59ffde
diff --git a/tests/pthread_test.cpp b/tests/pthread_test.cpp
index 9e7a9bc..6a5e4a6 100644
--- a/tests/pthread_test.cpp
+++ b/tests/pthread_test.cpp
@@ -256,22 +256,6 @@
   ASSERT_EQ(0, pthread_sigmask(SIG_SETMASK, &original_set, NULL));
 }
 
-#if defined(__BIONIC__)
-extern "C" pid_t __bionic_clone(int flags, void* child_stack, pid_t* parent_tid, void* tls, pid_t* child_tid, int (*fn)(void*), void* arg);
-#endif // __BIONIC__
-
-TEST(pthread, __bionic_clone) {
-#if defined(__BIONIC__)
-  // Check that our hand-written clone assembler sets errno correctly on failure.
-  uintptr_t fake_child_stack[16];
-  errno = 0;
-  ASSERT_EQ(-1, __bionic_clone(CLONE_THREAD, &fake_child_stack[16], NULL, NULL, NULL, NULL, NULL));
-  ASSERT_EQ(EINVAL, errno);
-#else // __BIONIC__
-  GTEST_LOG_(INFO) << "This test does nothing.\n";
-#endif // __BIONIC__
-}
-
 TEST(pthread, pthread_setname_np__too_long) {
 #if defined(__BIONIC__) // Not all build servers have a new enough glibc? TODO: remove when they're on gprecise.
   ASSERT_EQ(ERANGE, pthread_setname_np(pthread_self(), "this name is far too long for linux"));
diff --git a/tests/sched_test.cpp b/tests/sched_test.cpp
index 8dba948..7c19962 100644
--- a/tests/sched_test.cpp
+++ b/tests/sched_test.cpp
@@ -51,6 +51,14 @@
 }
 #endif
 
+TEST(sched, clone_errno) {
+  // Check that our hand-written clone assembler sets errno correctly on failure.
+  uintptr_t fake_child_stack[16];
+  errno = 0;
+  ASSERT_EQ(-1, clone(NULL, &fake_child_stack[16], CLONE_THREAD, NULL));
+  ASSERT_EQ(EINVAL, errno);
+}
+
 TEST(sched, cpu_set) {
   cpu_set_t set;