summaryrefslogtreecommitdiffstats
path: root/base
diff options
context:
space:
mode:
authortimurrrr@chromium.org <timurrrr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-09-18 16:37:47 +0000
committertimurrrr@chromium.org <timurrrr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-09-18 16:37:47 +0000
commit83f6cdd6000b4632d094c5e36f2633fb9cf7641f (patch)
treed0b29c941846b118be6084ffe5bdfecac87e707c /base
parentcca048bf67b8a044dc69c54f9fd691ef9143b865 (diff)
downloadchromium_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.cc5
-rw-r--r--base/dynamic_annotations.h15
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();