diff options
author | timurrrr@chromium.org <timurrrr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-09-18 16:37:47 +0000 |
---|---|---|
committer | timurrrr@chromium.org <timurrrr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-09-18 16:37:47 +0000 |
commit | 83f6cdd6000b4632d094c5e36f2633fb9cf7641f (patch) | |
tree | d0b29c941846b118be6084ffe5bdfecac87e707c /base | |
parent | cca048bf67b8a044dc69c54f9fd691ef9143b865 (diff) | |
download | chromium_src-83f6cdd6000b4632d094c5e36f2633fb9cf7641f.zip chromium_src-83f6cdd6000b4632d094c5e36f2633fb9cf7641f.tar.gz chromium_src-83f6cdd6000b4632d094c5e36f2633fb9cf7641f.tar.bz2 |
s/NDEBUG/NVALGRIND/g in base/dynamic_annotations.* to allow
ThreadSanitizer runs on release binaries.
This is a copy of http://codereview.chromium.org/201060
I wasn't a commiter at that time.
Please note that http://codereview.chromium.org/195078 was submitted recently which defines NVALGRIND for non-valgrind Release builds.
Review URL: http://codereview.chromium.org/195091
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26576 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base')
-rw-r--r-- | base/dynamic_annotations.cc | 5 | ||||
-rw-r--r-- | base/dynamic_annotations.h | 15 |
2 files changed, 9 insertions, 11 deletions
diff --git a/base/dynamic_annotations.cc b/base/dynamic_annotations.cc index 1b16292..2ee0975 100644 --- a/base/dynamic_annotations.cc +++ b/base/dynamic_annotations.cc @@ -3,9 +3,8 @@ // found in the LICENSE file. #include "base/dynamic_annotations.h" -#include "base/third_party/valgrind/valgrind.h" -#ifndef NDEBUG +#ifndef NVALGRIND // Each function is empty and called (via a macro) only in debug mode. // The arguments are captured by dynamic tools at runtime. @@ -56,7 +55,7 @@ extern "C" void AnnotateIgnoreWritesBegin(const char *file, int line) {} extern "C" void AnnotateIgnoreWritesEnd(const char *file, int line) {} extern "C" void AnnotateNoOp(const char *file, int line, const volatile void *arg) {} -#endif // NDEBUG +#endif // NVALGRIND // When running under valgrind, a non-zero value will be returned. extern "C" int RunningOnValgrind() { diff --git a/base/dynamic_annotations.h b/base/dynamic_annotations.h index d75b773..23a2a27 100644 --- a/base/dynamic_annotations.h +++ b/base/dynamic_annotations.h @@ -17,19 +17,18 @@ // dynamic analysis tool being used. // // This file supports the following dynamic analysis tools: -// - None (NDEBUG is defined). +// - None (NVALGRIND is defined). // Macros are defined empty. -// - ThreadSanitizer (NDEBUG is not defined). +// - ThreadSanitizer (NVALGRIND is not defined). // Macros are defined as calls to non-inlinable empty functions // that are intercepted by ThreadSanitizer. // #ifndef BASE_DYNAMIC_ANNOTATIONS_H_ #define BASE_DYNAMIC_ANNOTATIONS_H_ -// All the annotation macros are in effect only in debug mode. -#ifndef NDEBUG -// Debug build. +#include "base/third_party/valgrind/valgrind.h" +#ifndef NVALGRIND // ------------------------------------------------------------- // Annotations useful when implementing condition variables such as CondVar, // using conditional critical sections (Await/LockWhen) and when constructing @@ -309,8 +308,8 @@ inline T ANNOTATE_UNPROTECTED_READ(const volatile T &x) { static static_var ## _annotator the ## static_var ## _annotator;\ } -#else // NDEBUG is defined -// Release build, empty macros. +#else +// NVALGRIND is defined, empty macros. #define ANNOTATE_RWLOCK_CREATE(lock) // empty #define ANNOTATE_RWLOCK_DESTROY(lock) // empty @@ -344,7 +343,7 @@ inline T ANNOTATE_UNPROTECTED_READ(const volatile T &x) { #define ANNOTATE_UNPROTECTED_READ(x) (x) #define ANNOTATE_BENIGN_RACE_STATIC(static_var, description) // empty -#endif // NDEBUG +#endif // NVALGRIND // Return non-zero value if running under valgrind. extern "C" int RunningOnValgrind(); |