summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexey Samsonov <samsonov@google.com>2012-06-05 09:00:36 +0000
committerAlexey Samsonov <samsonov@google.com>2012-06-05 09:00:36 +0000
commitb8f35d95126f506654a1dae60f8220a27efdeaaf (patch)
tree366b7441c14e71f654332c2ac2e1559edc1cfcdb
parent1b12eda7ecd3b39bb15f05876fa740f92604eb53 (diff)
downloadbcm5719-llvm-b8f35d95126f506654a1dae60f8220a27efdeaaf.tar.gz
bcm5719-llvm-b8f35d95126f506654a1dae60f8220a27efdeaaf.zip
[TSan] make TSan runtime use internal_{close,read,write} from sanitizer_libc
llvm-svn: 157992
-rw-r--r--compiler-rt/lib/tsan/rtl/tsan_platform.h4
-rw-r--r--compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc15
-rw-r--r--compiler-rt/lib/tsan/rtl/tsan_printf.cc3
-rw-r--r--compiler-rt/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc3
4 files changed, 6 insertions, 19 deletions
diff --git a/compiler-rt/lib/tsan/rtl/tsan_platform.h b/compiler-rt/lib/tsan/rtl/tsan_platform.h
index 2fc7943918e..e43ec8a5111 100644
--- a/compiler-rt/lib/tsan/rtl/tsan_platform.h
+++ b/compiler-rt/lib/tsan/rtl/tsan_platform.h
@@ -77,11 +77,7 @@ void internal_sleep_ms(u32 ms);
void internal_start_thread(void(*func)(void*), void *arg);
typedef int fd_t;
-const fd_t kInvalidFd = -1;
-void internal_close(fd_t fd);
uptr internal_filesize(fd_t fd); // -1 on error.
-uptr internal_read(fd_t fd, void *p, uptr size);
-uptr internal_write(fd_t fd, const void *p, uptr size);
int internal_dup2(int oldfd, int newfd);
const char *internal_getpwd();
diff --git a/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc b/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
index 21134fc64f0..b755e9e255b 100644
--- a/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
+++ b/compiler-rt/lib/tsan/rtl/tsan_platform_linux.cc
@@ -86,11 +86,6 @@ void internal_sleep_ms(u32 ms) {
usleep(ms * 1000);
}
-void internal_close(fd_t fd) {
- ScopedInRtl in_rtl;
- syscall(__NR_close, fd);
-}
-
uptr internal_filesize(fd_t fd) {
struct stat st = {};
if (syscall(__NR_fstat, fd, &st))
@@ -98,16 +93,6 @@ uptr internal_filesize(fd_t fd) {
return (uptr)st.st_size;
}
-uptr internal_read(fd_t fd, void *p, uptr size) {
- ScopedInRtl in_rtl;
- return syscall(__NR_read, fd, p, size);
-}
-
-uptr internal_write(fd_t fd, const void *p, uptr size) {
- ScopedInRtl in_rtl;
- return syscall(__NR_write, fd, p, size);
-}
-
int internal_dup2(int oldfd, int newfd) {
ScopedInRtl in_rtl;
return syscall(__NR_dup2, oldfd, newfd);
diff --git a/compiler-rt/lib/tsan/rtl/tsan_printf.cc b/compiler-rt/lib/tsan/rtl/tsan_printf.cc
index ef26c28b866..7dc053eb93c 100644
--- a/compiler-rt/lib/tsan/rtl/tsan_printf.cc
+++ b/compiler-rt/lib/tsan/rtl/tsan_printf.cc
@@ -11,12 +11,15 @@
//
//===----------------------------------------------------------------------===//
+#include "sanitizer_common/sanitizer_libc.h"
#include "tsan_defs.h"
#include "tsan_mman.h"
#include "tsan_platform.h"
#include <stdarg.h> // va_list
+using namespace __sanitizer; // NOLINT
+
typedef long long i64; // NOLINT
typedef long iptr; // NOLINT
diff --git a/compiler-rt/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc b/compiler-rt/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc
index becf9e61c22..152cf890f44 100644
--- a/compiler-rt/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc
+++ b/compiler-rt/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc
@@ -10,6 +10,7 @@
// This file is a part of ThreadSanitizer (TSan), a race detector.
//
//===----------------------------------------------------------------------===//
+#include "sanitizer_common/sanitizer_libc.h"
#include "tsan_symbolize.h"
#include "tsan_mman.h"
#include "tsan_rtl.h"
@@ -23,6 +24,8 @@
#include <linux/limits.h>
#include <sys/types.h>
+using namespace __sanitizer; // NOLINT
+
namespace __tsan {
struct ModuleDesc {
OpenPOWER on IntegriCloud