diff options
| author | David Carlier <devnexen@gmail.com> | 2018-06-20 20:17:44 +0000 |
|---|---|---|
| committer | David Carlier <devnexen@gmail.com> | 2018-06-20 20:17:44 +0000 |
| commit | 7d796ececd6323756d5b4f61ec27072e1c1deda5 (patch) | |
| tree | 623019f52b5493b85ae3f9515589a4dfad6268ea | |
| parent | 88de778b9bf82a8973b53e0f7697a898ecc223a5 (diff) | |
| download | bcm5719-llvm-7d796ececd6323756d5b4f61ec27072e1c1deda5.tar.gz bcm5719-llvm-7d796ececd6323756d5b4f61ec27072e1c1deda5.zip | |
[TSan] fix build and couple of unit tests on FreeBSD
Similarly to Msan adding -pie provokes linkage issue, was spotted with pie_test.cc
Set to XFAIL for couple of unit tests.
Reviewers: vitalybuka, krytarowski, dim
Reviewed By: vitalybuka
Differential Revision: https://reviews.llvm.org/D48317
llvm-svn: 335166
| -rw-r--r-- | compiler-rt/lib/tsan/CMakeLists.txt | 5 | ||||
| -rw-r--r-- | compiler-rt/test/tsan/ignored-interceptors-mmap.cc | 1 | ||||
| -rw-r--r-- | compiler-rt/test/tsan/strerror_r.cc | 2 |
3 files changed, 7 insertions, 1 deletions
diff --git a/compiler-rt/lib/tsan/CMakeLists.txt b/compiler-rt/lib/tsan/CMakeLists.txt index 8a414d47276..51a43e17034 100644 --- a/compiler-rt/lib/tsan/CMakeLists.txt +++ b/compiler-rt/lib/tsan/CMakeLists.txt @@ -5,7 +5,10 @@ include_directories(..) set(TSAN_CFLAGS ${SANITIZER_COMMON_CFLAGS}) # SANITIZER_COMMON_CFLAGS contains -fPIC, but it's performance-critical for # TSan runtime to be built with -fPIE to reduce the number of register spills. -append_list_if(COMPILER_RT_HAS_FPIE_FLAG -fPIE TSAN_CFLAGS) +# On FreeBSD however it provokes linkage issue thus we disable it. +if(NOT CMAKE_SYSTEM MATCHES "FreeBSD") + append_list_if(COMPILER_RT_HAS_FPIE_FLAG -fPIE TSAN_CFLAGS) +endif() append_rtti_flag(OFF TSAN_CFLAGS) if(COMPILER_RT_TSAN_DEBUG_OUTPUT) diff --git a/compiler-rt/test/tsan/ignored-interceptors-mmap.cc b/compiler-rt/test/tsan/ignored-interceptors-mmap.cc index 8715883238e..796ea932334 100644 --- a/compiler-rt/test/tsan/ignored-interceptors-mmap.cc +++ b/compiler-rt/test/tsan/ignored-interceptors-mmap.cc @@ -1,6 +1,7 @@ // RUN: %clangxx_tsan -O0 %s -o %t // RUN: not %run %t 2>&1 | FileCheck %s --check-prefix=CHECK-NORMAL // RUN: %env_tsan_opts=ignore_interceptors_accesses=1 %run %t 2>&1 | FileCheck %s --check-prefix=CHECK-IGNORE +// XFAIL: freebsd #include <errno.h> #include <sys/mman.h> diff --git a/compiler-rt/test/tsan/strerror_r.cc b/compiler-rt/test/tsan/strerror_r.cc index 23b77454b94..cfe8a18c173 100644 --- a/compiler-rt/test/tsan/strerror_r.cc +++ b/compiler-rt/test/tsan/strerror_r.cc @@ -1,6 +1,8 @@ // RUN: %clangxx_tsan -O1 -DTEST_ERROR=ERANGE %s -o %t && %run %t 2>&1 | FileCheck --check-prefixes=CHECK,CHECK-SYS %s // RUN: %clangxx_tsan -O1 -DTEST_ERROR=-1 %s -o %t && not %run %t 2>&1 | FileCheck --check-prefixes=CHECK,CHECK-USER %s // UNSUPPORTED: darwin +// This test provokes a data race under FreeBSD +// XFAIL: freebsd #include "test.h" |

