diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2018-06-27 21:01:53 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2018-06-27 21:01:53 +0000 |
commit | e214f046af3ae7313a1a868615e728233a00e3b7 (patch) | |
tree | e0c24313b2200a0e2e282480aa5f86f13cab2fab /llvm/lib/Target/X86/X86InstrInfo.cpp | |
parent | 880e34ed45aa1bfae2648d5d3426e6525fafecff (diff) | |
download | bcm5719-llvm-e214f046af3ae7313a1a868615e728233a00e3b7.tar.gz bcm5719-llvm-e214f046af3ae7313a1a868615e728233a00e3b7.zip |
[X86] Make folding table checking threadsafe
This is a benign race, but tsan likes to complain about it. Just make it
happy.
llvm-svn: 335788
Diffstat (limited to 'llvm/lib/Target/X86/X86InstrInfo.cpp')
-rw-r--r-- | llvm/lib/Target/X86/X86InstrInfo.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/llvm/lib/Target/X86/X86InstrInfo.cpp b/llvm/lib/Target/X86/X86InstrInfo.cpp index a5c6b19dd0a..7096e8284ed 100644 --- a/llvm/lib/Target/X86/X86InstrInfo.cpp +++ b/llvm/lib/Target/X86/X86InstrInfo.cpp @@ -5413,8 +5413,7 @@ X86InstrInfo::X86InstrInfo(X86Subtarget &STI) #ifndef NDEBUG // Make sure the tables are sorted. - static bool FoldTablesChecked = false; - if (!FoldTablesChecked) { + static bool LLVM_ATTRIBUTE_UNUSED FoldTablesChecked = [] { assert(std::is_sorted(std::begin(MemoryFoldTable2Addr), std::end(MemoryFoldTable2Addr)) && std::adjacent_find(std::begin(MemoryFoldTable2Addr), @@ -5451,8 +5450,8 @@ X86InstrInfo::X86InstrInfo(X86Subtarget &STI) std::end(MemoryFoldTable4)) == std::end(MemoryFoldTable4) && "MemoryFoldTable4 is not sorted and unique!"); - FoldTablesChecked = true; - } + return true; + }(); #endif } |