aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Support/MemoryBuffer.cpp
diff options
context:
space:
mode:
authorAaron Puchert <aaron.puchert@sap.com>2021-05-03 13:57:44 +0200
committerAaron Puchert <aaron.puchert@sap.com>2021-05-03 14:03:17 +0200
commit530e074faafe995a560e80815f5af8306670ea7b (patch)
treed931f4435219aa110c1966b9ca5d232bbd91acd4 /llvm/lib/Support/MemoryBuffer.cpp
parent876bf516e7d4bba615da6cf791372fb36fc8f947 (diff)
downloadllvm-530e074faafe995a560e80815f5af8306670ea7b.zip
llvm-530e074faafe995a560e80815f5af8306670ea7b.tar.gz
llvm-530e074faafe995a560e80815f5af8306670ea7b.tar.bz2
Thread safety analysis: Replace flags in FactEntry by SourceKind (NFC)
The motivation here is to make it available in the base class whether a fact is managed or not. That would have meant three flags on the base class, so I had a look whether we really have 8 possible combinations. It turns out we don't: asserted and declared are obviously mutually exclusive. Managed facts are only created when we acquire a capability through a scoped capability. Adopting an asserted or declared lock will not (in fact can not, because Facts are immutable) make them managed. We probably don't want to allow adopting an asserted lock (because then the function should probably have a release attribute, and then the assertion is pointless), but we might at some point decide to replace a declared fact on adoption. Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D100801
Diffstat (limited to 'llvm/lib/Support/MemoryBuffer.cpp')
0 files changed, 0 insertions, 0 deletions