Lines Matching refs:FactEntry
107 class FactEntry : public CapabilityExpr { class
128 FactEntry(const CapabilityExpr &CE, LockKind LK, SourceLocation Loc, in FactEntry() function in __anon68dfda3c0111::FactEntry
131 virtual ~FactEntry() = default;
145 const FactEntry &entry, ThreadSafetyHandler &Handler,
164 std::vector<std::unique_ptr<const FactEntry>> Facts;
167 FactID newFact(std::unique_ptr<FactEntry> Entry) { in newFact()
172 const FactEntry &operator[](FactID F) const { return *Facts[F]; } in operator []()
211 FactID addLock(FactManager &FM, std::unique_ptr<FactEntry> Entry) { in addLock()
242 const FactEntry *findLock(FactManager &FM, const CapabilityExpr &CapE) const { in findLock()
249 const FactEntry *findLockUniv(FactManager &FM, in findLockUniv()
257 const FactEntry *findPartialMatch(FactManager &FM, in findPartialMatch()
858 class LockableFactEntry : public FactEntry {
862 : FactEntry(CE, LK, Loc, Src) {} in LockableFactEntry()
874 void handleLock(FactSet &FSet, FactManager &FactMan, const FactEntry &entry, in handleLock()
892 class ScopedLockableFactEntry : public FactEntry {
907 : FactEntry(CE, LK_Exclusive, Loc, Acquired) {} in ScopedLockableFactEntry()
939 void handleLock(FactSet &FSet, FactManager &FactMan, const FactEntry &entry, in handleLock()
981 if (const FactEntry *Fact = FSet.findLock(FactMan, Cp)) { in lock()
1000 if (const FactEntry *Neg = FSet.findLock(FactMan, !Cp)) in unlock()
1030 void addLock(FactSet &FSet, std::unique_ptr<FactEntry> Entry,
1297 std::unique_ptr<FactEntry> Entry, in addLock()
1305 const FactEntry *Nen = FSet.findLock(FactMan, NegC); in addLock()
1324 if (const FactEntry *Cp = FSet.findLock(FactMan, *Entry)) { in addLock()
1341 const FactEntry *LDat = FSet.findLock(FactMan, Cp); in removeLock()
1344 if (const FactEntry *Neg = FSet.findLock(FactMan, !Cp)) in removeLock()
1644 const FactEntry *LDat = FSet.findLock(Analyzer->FactMan, !Cp); in warnIfMutexNotHeld()
1664 const FactEntry *LDat = FSet.findLockUniv(Analyzer->FactMan, Cp); in warnIfMutexNotHeld()
1700 const FactEntry *LDat = FSet.findLock(Analyzer->FactMan, Cp); in warnIfMutexHeld()
1859 FactEntry::Asserted), in handleCall()
1872 FactEntry::Asserted), in handleCall()
1886 FactEntry::Asserted), in handleCall()
1947 FactEntry::SourceKind Source = in handleCall()
1948 isScopedVar ? FactEntry::Managed : FactEntry::Acquired; in handleCall()
2212 const FactEntry &LDat2 = FactMan[Fact]; in intersectAndWarn()
2216 const FactEntry &LDat1 = FactMan[*Iter1]; in intersectAndWarn()
2238 const FactEntry *LDat1 = &FactMan[Fact]; in intersectAndWarn()
2239 const FactEntry *LDat2 = FSet2.findLock(FactMan, *LDat1); in intersectAndWarn()
2370 FactEntry::Declared); in runAnalysis()
2375 FactEntry::Declared); in runAnalysis()