[llvm-commits] [compiler-rt] r172721 - /compiler-rt/trunk/lib/msan/msan_interceptors.cc
Kostya Serebryany
kcc at google.com
Thu Jan 17 05:57:07 PST 2013
Author: kcc
Date: Thu Jan 17 07:57:07 2013
New Revision: 172721
URL: http://llvm.org/viewvc/llvm-project?rev=172721&view=rev
Log:
[msan] start using common interceptors in msan
Modified:
compiler-rt/trunk/lib/msan/msan_interceptors.cc
Modified: compiler-rt/trunk/lib/msan/msan_interceptors.cc
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/msan/msan_interceptors.cc?rev=172721&r1=172720&r2=172721&view=diff
==============================================================================
--- compiler-rt/trunk/lib/msan/msan_interceptors.cc (original)
+++ compiler-rt/trunk/lib/msan/msan_interceptors.cc Thu Jan 17 07:57:07 2013
@@ -67,30 +67,6 @@
return res;
}
-INTERCEPTOR(SSIZE_T, read, int fd, void *ptr, SIZE_T count) {
- ENSURE_MSAN_INITED();
- SSIZE_T res = REAL(read)(fd, ptr, count);
- if (res > 0)
- __msan_unpoison(ptr, res);
- return res;
-}
-
-INTERCEPTOR(SSIZE_T, pread, int fd, void *ptr, SIZE_T count, OFF_T offset) {
- ENSURE_MSAN_INITED();
- SSIZE_T res = REAL(pread)(fd, ptr, count, offset);
- if (res > 0)
- __msan_unpoison(ptr, res);
- return res;
-}
-
-INTERCEPTOR(SSIZE_T, pread64, int fd, void *ptr, SIZE_T count, OFF64_T offset) {
- ENSURE_MSAN_INITED();
- SSIZE_T res = REAL(pread64)(fd, ptr, count, offset);
- if (res > 0)
- __msan_unpoison(ptr, res);
- return res;
-}
-
INTERCEPTOR(SSIZE_T, readlink, const char *path, char *buf, SIZE_T bufsiz) {
ENSURE_MSAN_INITED();
SSIZE_T res = REAL(readlink)(path, buf, bufsiz);
@@ -759,6 +735,15 @@
return res;
}
+#define COMMON_INTERCEPTOR_WRITE_RANGE(ptr, size) \
+ __msan_unpoison(ptr, size)
+#define COMMON_INTERCEPTOR_READ_RANGE(ptr, size) do { } while (false)
+#define COMMON_INTERCEPTOR_ENTER(func, ...) ENSURE_MSAN_INITED()
+#define COMMON_INTERCEPTOR_FD_ACQUIRE(fd) do { } while (false)
+#define COMMON_INTERCEPTOR_FD_RELEASE(fd) do { } while (false)
+#define COMMON_INTERCEPTOR_SET_THREAD_NAME(name) do { } while (false) // FIXME
+#include "sanitizer_common/sanitizer_common_interceptors.h"
+
// static
void *fast_memset(void *ptr, int c, SIZE_T n) {
// hack until we have a really fast internal_memset
@@ -868,6 +853,8 @@
void InitializeInterceptors() {
static int inited = 0;
CHECK_EQ(inited, 0);
+ SANITIZER_COMMON_INTERCEPTORS_INIT;
+
INTERCEPT_FUNCTION(mmap);
INTERCEPT_FUNCTION(mmap64);
INTERCEPT_FUNCTION(posix_memalign);
@@ -877,9 +864,6 @@
INTERCEPT_FUNCTION(free);
INTERCEPT_FUNCTION(fread);
INTERCEPT_FUNCTION(fread_unlocked);
- INTERCEPT_FUNCTION(read);
- INTERCEPT_FUNCTION(pread);
- INTERCEPT_FUNCTION(pread64);
INTERCEPT_FUNCTION(readlink);
INTERCEPT_FUNCTION(readdir);
INTERCEPT_FUNCTION(memcpy);
More information about the llvm-commits
mailing list