summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulian Lettner <jlettner@apple.com>2019-09-09 20:07:03 +0000
committerJulian Lettner <jlettner@apple.com>2019-09-09 20:07:03 +0000
commita7df678e90f9515add3a14a351432b6ead337526 (patch)
tree9c54d50b5cc96c54e2401c1a8bc55d3c200dc418
parente6ebd8de804b785ccb160e5914578b90edf6e455 (diff)
downloadcompiler-rt-a7df678e90f9515add3a14a351432b6ead337526.tar.gz
[TSan] Add AnnotateIgnoreReadsBegin declaration to tsan/test.h
Declare the family of AnnotateIgnore[Read,Write][Begin,End] TSan annotations in compiler-rt/test/tsan/test.h so that we don't have to declare them separately in every test that needs them. Replace usages. Leave usages that explicitly test the annotation mechanism: thread_end_with_ignore.cpp thread_end_with_ignore3.cpp git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@371446 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/tsan/Darwin/mach_vm_allocate.c5
-rw-r--r--test/tsan/ignore_free.cpp7
-rw-r--r--test/tsan/ignore_malloc.cpp7
-rw-r--r--test/tsan/ignore_race.cpp5
-rw-r--r--test/tsan/ignored-interceptors-mmap.cpp7
-rw-r--r--test/tsan/test.h5
6 files changed, 5 insertions, 31 deletions
diff --git a/test/tsan/Darwin/mach_vm_allocate.c b/test/tsan/Darwin/mach_vm_allocate.c
index df3cdec71..5b1235201 100644
--- a/test/tsan/Darwin/mach_vm_allocate.c
+++ b/test/tsan/Darwin/mach_vm_allocate.c
@@ -11,11 +11,6 @@
#include "../test.h"
-void AnnotateIgnoreReadsBegin(const char *f, int l);
-void AnnotateIgnoreReadsEnd(const char *f, int l);
-void AnnotateIgnoreWritesBegin(const char *f, int l);
-void AnnotateIgnoreWritesEnd(const char *f, int l);
-
static int *global_ptr;
const mach_vm_size_t alloc_size = sizeof(int);
diff --git a/test/tsan/ignore_free.cpp b/test/tsan/ignore_free.cpp
index 4e678952c..51037b14d 100644
--- a/test/tsan/ignore_free.cpp
+++ b/test/tsan/ignore_free.cpp
@@ -1,13 +1,6 @@
// RUN: %clangxx_tsan -O1 %s -o %t && %run %t 2>&1 | FileCheck %s
#include "test.h"
-extern "C" {
-void AnnotateIgnoreReadsBegin(const char *f, int l);
-void AnnotateIgnoreReadsEnd(const char *f, int l);
-void AnnotateIgnoreWritesBegin(const char *f, int l);
-void AnnotateIgnoreWritesEnd(const char *f, int l);
-}
-
void *Thread(void *p) {
*(int*)p = 42;
barrier_wait(&barrier);
diff --git a/test/tsan/ignore_malloc.cpp b/test/tsan/ignore_malloc.cpp
index 100b4e5dc..6f293e3da 100644
--- a/test/tsan/ignore_malloc.cpp
+++ b/test/tsan/ignore_malloc.cpp
@@ -1,13 +1,6 @@
// RUN: %clangxx_tsan -O1 %s -o %t && %run %t 2>&1 | FileCheck %s
#include "test.h"
-extern "C" {
-void AnnotateIgnoreReadsBegin(const char *f, int l);
-void AnnotateIgnoreReadsEnd(const char *f, int l);
-void AnnotateIgnoreWritesBegin(const char *f, int l);
-void AnnotateIgnoreWritesEnd(const char *f, int l);
-}
-
int *g;
void *Thread(void *a) {
diff --git a/test/tsan/ignore_race.cpp b/test/tsan/ignore_race.cpp
index e410006dd..ecbc4c0be 100644
--- a/test/tsan/ignore_race.cpp
+++ b/test/tsan/ignore_race.cpp
@@ -3,11 +3,6 @@
int Global;
-extern "C" void AnnotateIgnoreWritesBegin(const char *f, int l);
-extern "C" void AnnotateIgnoreWritesEnd(const char *f, int l);
-extern "C" void AnnotateIgnoreReadsBegin(const char *f, int l);
-extern "C" void AnnotateIgnoreReadsEnd(const char *f, int l);
-
void *Thread(void *x) {
AnnotateIgnoreWritesBegin(__FILE__, __LINE__);
AnnotateIgnoreReadsBegin(__FILE__, __LINE__);
diff --git a/test/tsan/ignored-interceptors-mmap.cpp b/test/tsan/ignored-interceptors-mmap.cpp
index bcfafa409..c2116130b 100644
--- a/test/tsan/ignored-interceptors-mmap.cpp
+++ b/test/tsan/ignored-interceptors-mmap.cpp
@@ -10,13 +10,6 @@
#include "test.h"
-extern "C" {
-void AnnotateIgnoreReadsBegin(const char *f, int l);
-void AnnotateIgnoreReadsEnd(const char *f, int l);
-void AnnotateIgnoreWritesBegin(const char *f, int l);
-void AnnotateIgnoreWritesEnd(const char *f, int l);
-}
-
// Use atomic to ensure we do not have a race for the pointer value itself. We
// only want to check races in the mmap'd memory to isolate the test that mmap
// respects ignore annotations.
diff --git a/test/tsan/test.h b/test/tsan/test.h
index af2e6f074..4c75572da 100644
--- a/test/tsan/test.h
+++ b/test/tsan/test.h
@@ -75,6 +75,11 @@ void AnnotateRWLockDestroy(const char *f, int l, void *m);
void AnnotateRWLockAcquired(const char *f, int l, void *m, long is_w);
void AnnotateRWLockReleased(const char *f, int l, void *m, long is_w);
+void AnnotateIgnoreReadsBegin(const char *f, int l);
+void AnnotateIgnoreReadsEnd(const char *f, int l);
+void AnnotateIgnoreWritesBegin(const char *f, int l);
+void AnnotateIgnoreWritesEnd(const char *f, int l);
+
#ifdef __cplusplus
}
#endif