[PATCH] D14424: [tsan] Enable new/delete C++ interceptors for OS X

Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Nov 6 03:09:58 PST 2015


This revision was automatically updated to reflect the committed changes.
Closed by commit rL252284: [tsan] Enable new/delete C++ interceptors for OS X (authored by kuba.brecka).

Changed prior to commit:
  http://reviews.llvm.org/D14424?vs=39485&id=39506#toc

Repository:
  rL LLVM

http://reviews.llvm.org/D14424

Files:
  compiler-rt/trunk/lib/tsan/CMakeLists.txt
  compiler-rt/trunk/lib/tsan/rtl/tsan_new_delete.cc

Index: compiler-rt/trunk/lib/tsan/CMakeLists.txt
===================================================================
--- compiler-rt/trunk/lib/tsan/CMakeLists.txt
+++ compiler-rt/trunk/lib/tsan/CMakeLists.txt
@@ -92,7 +92,7 @@
     SHARED
     OS ${TSAN_SUPPORTED_OS}
     ARCHS ${TSAN_SUPPORTED_ARCH}
-    SOURCES ${TSAN_SOURCES}
+    SOURCES ${TSAN_SOURCES} ${TSAN_CXX_SOURCES}
     OBJECT_LIBS RTInterception
                 RTSanitizerCommon
                 RTSanitizerCommonLibc
Index: compiler-rt/trunk/lib/tsan/rtl/tsan_new_delete.cc
===================================================================
--- compiler-rt/trunk/lib/tsan/rtl/tsan_new_delete.cc
+++ compiler-rt/trunk/lib/tsan/rtl/tsan_new_delete.cc
@@ -12,14 +12,22 @@
 // Interceptors for operators new and delete.
 //===----------------------------------------------------------------------===//
 #include "sanitizer_common/sanitizer_internal_defs.h"
+#include "interception/interception.h"
 #include "tsan_interceptors.h"
 
 using namespace __tsan;  // NOLINT
 
 namespace std {
 struct nothrow_t {};
 }  // namespace std
 
+DECLARE_REAL(void *, malloc, uptr size)
+DECLARE_REAL(void, free, void *ptr)
+#if SANITIZER_MAC
+#define __libc_malloc REAL(malloc)
+#define __libc_free REAL(free)
+#endif
+
 #define OPERATOR_NEW_BODY(mangled_name) \
   if (cur_thread()->in_symbolizer) \
     return __libc_malloc(size); \


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D14424.39506.patch
Type: text/x-patch
Size: 1388 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151106/e57946a8/attachment.bin>


More information about the llvm-commits mailing list