summaryrefslogtreecommitdiffstats
path: root/compiler-rt/lib/sanitizer_common/tests/sanitizer_test_utils.h
diff options
context:
space:
mode:
authorAlexey Samsonov <samsonov@google.com>2014-03-07 09:39:01 +0000
committerAlexey Samsonov <samsonov@google.com>2014-03-07 09:39:01 +0000
commitfefeecc7b004128ec67e6ad12d70453e5ee784b3 (patch)
tree6ad9cc02c8541b3ab21f928c07a18735aa95f2fa /compiler-rt/lib/sanitizer_common/tests/sanitizer_test_utils.h
parentdf17c83fa8125570a9d27524a675952908af0e4a (diff)
downloadbcm5719-llvm-fefeecc7b004128ec67e6ad12d70453e5ee784b3.tar.gz
bcm5719-llvm-fefeecc7b004128ec67e6ad12d70453e5ee784b3.zip
[ASan] Better way to disable tests for functions unavailable on certain platforms
llvm-svn: 203224
Diffstat (limited to 'compiler-rt/lib/sanitizer_common/tests/sanitizer_test_utils.h')
-rw-r--r--compiler-rt/lib/sanitizer_common/tests/sanitizer_test_utils.h23
1 files changed, 23 insertions, 0 deletions
diff --git a/compiler-rt/lib/sanitizer_common/tests/sanitizer_test_utils.h b/compiler-rt/lib/sanitizer_common/tests/sanitizer_test_utils.h
index 17adb264765..3ec085d6b42 100644
--- a/compiler-rt/lib/sanitizer_common/tests/sanitizer_test_utils.h
+++ b/compiler-rt/lib/sanitizer_common/tests/sanitizer_test_utils.h
@@ -78,5 +78,28 @@ static inline uint32_t my_rand() {
return my_rand_r(&global_seed);
}
+// Set availability of platform-specific functions.
+
+#if !defined(__APPLE__) && !defined(ANDROID) && !defined(__ANDROID__)
+# define SANITIZER_TEST_HAS_POSIX_MEMALIGN 1
+#else
+# define SANITIZER_TEST_HAS_POSIX_MEMALIGN 0
+#endif
+
+#if !defined(__APPLE__) && !defined(__FreeBSD__)
+# define SANITIZER_TEST_HAS_MEMALIGN 1
+# define SANITIZER_TEST_HAS_PVALLOC 1
+# define SANITIZER_TEST_HAS_MALLOC_USABLE_SIZE 1
+#else
+# define SANITIZER_TEST_HAS_MEMALIGN 0
+# define SANITIZER_TEST_HAS_PVALLOC 0
+# define SANITIZER_TEST_HAS_MALLOC_USABLE_SIZE 0
+#endif
+
+#if !defined(__APPLE__)
+# define SANITIZER_TEST_HAS_STRNLEN 1
+#else
+# define SANITIZER_TEST_HAS_STRNLEN 0
+#endif
#endif // SANITIZER_TEST_UTILS_H
OpenPOWER on IntegriCloud