From 8b6780e6f14939eeeeb343395b349310c5eb9cc7 Mon Sep 17 00:00:00 2001 From: Vitaly Buka Date: Thu, 15 Mar 2018 22:41:28 +0000 Subject: MSan, FreeBSD few tests fixes Summary: pthread_getattr_np_deadlock support pthread_getname_np unsupported Reviewers: krytarowski, vitalybuka Reviewed By: vitalybuka Subscribers: eugenis, srhines, krytarowski, llvm-commits, #sanitizers Differential Revision: https://reviews.llvm.org/D44085 git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@327678 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/msan/pthread_getattr_np_deadlock.cc | 11 ++++++++++- test/msan/pthread_getname_np.cc | 4 +++- 2 files changed, 13 insertions(+), 2 deletions(-) (limited to 'test/msan') diff --git a/test/msan/pthread_getattr_np_deadlock.cc b/test/msan/pthread_getattr_np_deadlock.cc index 98eaf1415..241caa2a2 100644 --- a/test/msan/pthread_getattr_np_deadlock.cc +++ b/test/msan/pthread_getattr_np_deadlock.cc @@ -1,14 +1,23 @@ // RUN: %clangxx_msan -fsanitize-memory-track-origins -O0 %s -o %t && %run %t // Regression test for a deadlock in pthread_getattr_np -// UNSUPPORTED: freebsd #include #include +#if defined(__FreeBSD__) +#include +#endif void *ThreadFn(void *) { pthread_attr_t attr; +#if defined(__FreeBSD__) + // On FreeBSD it needs to allocate attr underlying memory + int res = pthread_attr_init(&attr); + assert(!res); + res = pthread_attr_get_np(pthread_self(), &attr); +#else int res = pthread_getattr_np(pthread_self(), &attr); +#endif assert(!res); return 0; } diff --git a/test/msan/pthread_getname_np.cc b/test/msan/pthread_getname_np.cc index c8d8a213b..e19b652a7 100644 --- a/test/msan/pthread_getname_np.cc +++ b/test/msan/pthread_getname_np.cc @@ -1,5 +1,7 @@ // RUN: %clangxx_msan -std=c++11 -O0 %s -o %t && %run %t -// UNSUPPORTED: android, netbsd +// The main goal is getting the pthread name back and +// FreeBSD based do not support this feature +// UNSUPPORTED: android, netbsd, freebsd // Regression test for a deadlock in pthread_getattr_np -- cgit v1.2.1