diff options
| author | Bob Haarman <llvm@inglorion.net> | 2018-04-17 23:37:18 +0000 |
|---|---|---|
| committer | Bob Haarman <llvm@inglorion.net> | 2018-04-17 23:37:18 +0000 |
| commit | 37a9269cc75a03665ab78eeff4cead1509e1770d (patch) | |
| tree | 51b58dee86415ab920c830852e995d4bff300a6a /llvm/lib/Target/RISCV/RISCVTargetObjectFile.h | |
| parent | 3108802f1696a3635d7e1edcc3fbe523381ed5df (diff) | |
| download | bcm5719-llvm-37a9269cc75a03665ab78eeff4cead1509e1770d.tar.gz bcm5719-llvm-37a9269cc75a03665ab78eeff4cead1509e1770d.zip | |
Fix lock order inversion between ManagedStatic and Statistic
Summary:
Statistic and ManagedStatic both use mutexes. There was a lock order
inversion where, during initialization, Statistic's mutex would be
held while taking ManagedStatic's, and in llvm_shutdown,
ManagedStatic's mutex would be held while taking Statistic's
mutex. This change causes Statistic's initialization code to avoid
holding its mutex while calling ManagedStatic's methods, avoiding the
inversion.
Reviewers: dsanders, rtereshin
Reviewed By: dsanders
Subscribers: hiraditya, llvm-commits
Differential Revision: https://reviews.llvm.org/D45398
llvm-svn: 330236
Diffstat (limited to 'llvm/lib/Target/RISCV/RISCVTargetObjectFile.h')
0 files changed, 0 insertions, 0 deletions

