aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
diff options
context:
space:
mode:
authorjerryyin <zhuoryin@amd.com>2020-09-21 11:22:56 -0700
committerjerryyin <zhuoryin@amd.com>2020-09-21 11:37:57 -0700
commitf87ceb63eb011e5cd653218af619097b58bf568f (patch)
tree148eac6231a3d72849805c7e9b38c8014f7dc963 /llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
parent746a2c3775658c4485a8e71a7d46ee55c30615b8 (diff)
downloadllvm-f87ceb63eb011e5cd653218af619097b58bf568f.zip
llvm-f87ceb63eb011e5cd653218af619097b58bf568f.tar.gz
llvm-f87ceb63eb011e5cd653218af619097b58bf568f.tar.bz2
[AMDGPU] Adding mutex to guard lld::elf::link interface use
check-mlir target run tests simultaneously with multiple threads. This caused multiple threads to invoke the `lld::elf::link()` interface at the same time. Since the interface does not have a thread-safe implementation, add a metex to prevent multi-threaded access. I discovered this by looking the the failure stack trace. lld/ELF/symbolTable.cpp, SymbolTable::insert() hit into an assert with related to Epoch Trackers. The root cause is to due to there is no protection around the symMap (update) which is implemented in non-thread safe data structure: denseMap. Differential Revision: https://reviews.llvm.org/D88038
Diffstat (limited to 'llvm/lib/ProfileData/Coverage/CoverageMapping.cpp')
0 files changed, 0 insertions, 0 deletions