diff options
author | xiaofeng@google.com <xiaofeng@google.com@630680e5-0e50-0410-840e-4b1c322b438d> | 2013-07-25 19:55:35 +0000 |
---|---|---|
committer | xiaofeng@google.com <xiaofeng@google.com@630680e5-0e50-0410-840e-4b1c322b438d> | 2013-07-25 19:55:35 +0000 |
commit | 4f68d92cfa26f5a478686a4d656740ee1688b38b (patch) | |
tree | 380023fd6968b5cf89ae6a447402d80beaa2aa29 /src/google/protobuf/stubs/atomicops.h | |
parent | c9f69500b7d8c616ab107ed0748ae8a3754eef0d (diff) |
Add support for ThreadSanitizer atomicops API to protobuf - patch from glider@
Diffstat (limited to 'src/google/protobuf/stubs/atomicops.h')
-rw-r--r-- | src/google/protobuf/stubs/atomicops.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/google/protobuf/stubs/atomicops.h b/src/google/protobuf/stubs/atomicops.h index 8ece86b3..ab935b02 100644 --- a/src/google/protobuf/stubs/atomicops.h +++ b/src/google/protobuf/stubs/atomicops.h @@ -160,8 +160,11 @@ Atomic64 Release_Load(volatile const Atomic64* ptr); #define GOOGLE_PROTOBUF_ATOMICOPS_ERROR \ #error "Atomic operations are not supported on your platform" +// ThreadSanitizer, http://clang.llvm.org/docs/ThreadSanitizer.html. +#if defined(THREAD_SANITIZER) +#include <google/protobuf/stubs/atomicops_internals_tsan.h> // MSVC. -#if defined(_MSC_VER) +#elif defined(_MSC_VER) #if defined(GOOGLE_PROTOBUF_ARCH_IA32) || defined(GOOGLE_PROTOBUF_ARCH_X64) #include <google/protobuf/stubs/atomicops_internals_x86_msvc.h> #else |