[Sanitizer] Use DEFINE_REAL macro in TSan runtime to call libc implementations of functions. Move strchr to sanitizer_libc.

git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@158517 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/tsan/rtl/tsan_interceptors.cc b/lib/tsan/rtl/tsan_interceptors.cc
index e4d183a..41a1e80 100644
--- a/lib/tsan/rtl/tsan_interceptors.cc
+++ b/lib/tsan/rtl/tsan_interceptors.cc
@@ -287,7 +287,7 @@
   {
     SCOPED_INTERCEPTOR_RAW(calloc, size, n);
     p = user_alloc(thr, pc, n * size);
-    real_memset(p, 0, n * size);
+    REAL(memset)(p, 0, n * size);
   }
   invoke_malloc_hook(p, n * size);
   return p;
@@ -1283,7 +1283,7 @@
 TSAN_INTERCEPTOR(sighandler_t, signal, int sig, sighandler_t h) {
   sigaction_t act = {};
   act.sa_handler = h;
-  real_memset(&act.sa_mask, -1, sizeof(act.sa_mask));
+  REAL(memset)(&act.sa_mask, -1, sizeof(act.sa_mask));
   act.sa_flags = 0;
   sigaction_t old = {};
   int res = sigaction(sig, &act, &old);
@@ -1521,30 +1521,6 @@
   }
 }
 
-void real_memset(void *ptr, int c, uptr size) {
-  REAL(memset)(ptr, c, size);
-}
-
-void real_memcpy(void *dst, const void *src, uptr size) {
-  REAL(memcpy)(dst, src, size);
-}
-
-int internal_strncmp(const char *s1, const char *s2, uptr size) {
-  return REAL(strncmp)(s1, s2, size);
-}
-
-void internal_strcpy(char *s1, const char *s2) {
-  REAL(strcpy)(s1, s2);  // NOLINT
-}
-
-const char *internal_strstr(const char *where, const char *what) {
-  return REAL(strstr)(where, what);
-}
-
-const char *internal_strchr(const char *where, char what) {
-  return (const char*)REAL(strchr)((void*)where, what);
-}
-
 void internal_start_thread(void(*func)(void *arg), void *arg) {
   void *th;
   REAL(pthread_create)(&th, 0, (void*(*)(void *arg))func, arg);