Go to file
Kamil Rytarowski 7160c2f770 Prevent Thread Exited/Joined events race
Summary:
Add atomic verification to ensure that Thread is Joined after marking it
Finished.

It is required for NetBSD in order to prevent Thread Exited/Joined race,
that may occur when native system libpthread(3) cannot be reliably traced
in a way to guarantee that the mentioned events happen one after another.

This change fixes at least TSan and LSan on NetBSD.

Sponsored by <The NetBSD Foundation>

Reviewers: joerg, dvyukov, vitalybuka

Reviewed By: dvyukov

Subscribers: llvm-commits, kubamracek, #sanitizers

Tags: #sanitizers

Differential Revision: https://reviews.llvm.org/D40294

llvm-svn: 319004
2017-11-26 20:20:42 +00:00
clang Determine the attribute subject for diagnostics based on declarative information in DeclNodes.td. This greatly reduces the number of enumerated values used for more complex diagnostics; these are now only required when the "attribute only applies to" diagnostic needs to be generated manually as part of semantic processing. 2017-11-26 20:01:12 +00:00
clang-tools-extra [clang-tidy] Fix link error (http://llvm.org/PR35417). 2017-11-25 08:52:42 +00:00
compiler-rt Prevent Thread Exited/Joined events race 2017-11-26 20:20:42 +00:00
debuginfo-tests Re-revert "Refactor debuginfo-tests." 2017-11-21 01:20:28 +00:00
libclc math: Implement minmag 2017-11-15 04:10:39 +00:00
libcxx More of P0600; marking allocation routines as [[nodiscard]] 2017-11-26 02:55:38 +00:00
libcxxabi [demangler] Support for abi_tag attribute 2017-11-22 20:38:22 +00:00
libunwind [libunwind][CMake] Provide option to disable instalation of the library 2017-11-17 23:29:46 +00:00
lld Delete dead code. 2017-11-24 19:06:14 +00:00
lldb Due to changes for DWZ I would need to update those such as renaming it to 2017-11-25 17:16:56 +00:00
llgo irgen: Create functions instead of global variables for builtin hash and equal algorithms. 2017-06-04 22:11:28 +00:00
llvm [X86][SSE] Add SSE42 tests to the clear upper tests 2017-11-26 20:03:53 +00:00
openmp doxygen: disable the html timestamp: this is breaking the reproducible build of openmp 2017-11-25 14:12:33 +00:00
parallel-libs [Axccel] Remove -Wno-missing-braces in build 2016-12-19 21:34:07 +00:00
polly [MaximalStaticExpansion] Simplify this code a bit. NFCI. 2017-11-25 23:01:31 +00:00
README.md Add an svn project to contain the files that appear at the root of the 2017-10-19 21:09:49 +00:00

README.md

Low Level Virtual Machine (LLVM)

This directory and its subdirectories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and runtime environments.