aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenModule.cpp
diff options
context:
space:
mode:
authorNazım Can Altınova <canaltinova@gmail.com>2024-03-26 12:33:51 +0100
committerGitHub <noreply@github.com>2024-03-26 12:33:51 +0100
commitfe97a6148ebce0091c03abd12abd814cb55afe24 (patch)
treed6f74bcfe52e8d5389f398390cc24068f6383837 /clang/lib/CodeGen/CodeGenModule.cpp
parentf01377d8ebcb1f52fe75a236cdf34f1b8b1e99fb (diff)
downloadllvm-fe97a6148ebce0091c03abd12abd814cb55afe24.zip
llvm-fe97a6148ebce0091c03abd12abd814cb55afe24.tar.gz
llvm-fe97a6148ebce0091c03abd12abd814cb55afe24.tar.bz2
[tsan] Add callbacks for futex syscalls and mark them as blocking on tsan (#86537)
Fixes #83844. This PR adds callbacks to mark futex syscalls as blocking. Unfortunately we didn't have a mechanism before to mark syscalls as a blocking call, so I had to implement it, but it mostly reuses the `BlockingCall` implementation [here](https://github.com/llvm/llvm-project/blob/96819daa3d095cf9f662e0229dc82eaaa25480e8/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp#L362-L380). The issue includes some information but this issue was discovered because Rust uses futexes directly. So most likely we need to update Rust as well to use these callbacks. Also see the latest comments in #85188 for some context. I also sent another PR #84162 to mark `pthread_*_lock` calls as blocking.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions