Lines Matching refs:CheckKind
87 CheckerKind CheckKind) const;
172 const Expr *MtxExpr, CheckerKind CheckKind,
177 CheckerKind CheckKind) const;
180 CheckerKind CheckKind) const;
184 CheckerKind CheckKind) const;
186 CheckerKind CheckKind) const;
188 CheckerKind CheckKind) const;
190 CheckerKind CheckKind) const;
192 CheckerKind CheckKind) const;
194 CheckerKind CheckKind) const;
197 LockingSemantics Semantics, CheckerKind CheckKind) const;
201 CheckerKind CheckKind) const;
204 CheckerKind CheckKind) const;
208 CheckerKind CheckKind) const;
210 CheckerKind CheckKind) const;
213 LockingSemantics Semantics, CheckerKind CheckKind) const;
233 void initBugType(CheckerKind CheckKind) const { in initBugType()
234 if (BT_doublelock[CheckKind]) in initBugType()
236 BT_doublelock[CheckKind].reset( in initBugType()
237 new BugType{CheckNames[CheckKind], "Double locking", "Lock checker"}); in initBugType()
238 BT_doubleunlock[CheckKind].reset( in initBugType()
239 new BugType{CheckNames[CheckKind], "Double unlocking", "Lock checker"}); in initBugType()
240 BT_destroylock[CheckKind].reset(new BugType{ in initBugType()
241 CheckNames[CheckKind], "Use destroyed lock", "Lock checker"}); in initBugType()
242 BT_initlock[CheckKind].reset(new BugType{ in initBugType()
243 CheckNames[CheckKind], "Init invalid lock", "Lock checker"}); in initBugType()
244 BT_lor[CheckKind].reset(new BugType{CheckNames[CheckKind], in initBugType()
357 CheckerKind CheckKind) const { in AcquirePthreadLock()
359 PthreadSemantics, CheckKind); in AcquirePthreadLock()
364 CheckerKind CheckKind) const { in AcquireXNULock()
366 XNUSemantics, CheckKind); in AcquireXNULock()
371 CheckerKind CheckKind) const { in TryPthreadLock()
373 PthreadSemantics, CheckKind); in TryPthreadLock()
377 CheckerKind CheckKind) const { in TryXNULock()
379 PthreadSemantics, CheckKind); in TryXNULock()
384 CheckerKind CheckKind) const { in TryFuchsiaLock()
386 PthreadSemantics, CheckKind); in TryFuchsiaLock()
390 CheckerKind CheckKind) const { in TryC11Lock()
392 PthreadSemantics, CheckKind); in TryC11Lock()
399 CheckerKind CheckKind) const { in AcquireLockAux()
400 if (!ChecksEnabled[CheckKind]) in AcquireLockAux()
414 reportBug(C, BT_doublelock, MtxExpr, CheckKind, in AcquireLockAux()
418 reportBug(C, BT_destroylock, MtxExpr, CheckKind, in AcquireLockAux()
470 CheckerKind CheckKind) const { in ReleaseAnyLock()
471 ReleaseLockAux(Call, C, Call.getArgExpr(0), Call.getArgSVal(0), CheckKind); in ReleaseAnyLock()
477 CheckerKind CheckKind) const { in ReleaseLockAux()
478 if (!ChecksEnabled[CheckKind]) in ReleaseLockAux()
492 reportBug(C, BT_doubleunlock, MtxExpr, CheckKind, in ReleaseLockAux()
496 reportBug(C, BT_destroylock, MtxExpr, CheckKind, in ReleaseLockAux()
507 reportBug(C, BT_lor, MtxExpr, CheckKind, in ReleaseLockAux()
522 CheckerKind CheckKind) const { in DestroyPthreadLock()
524 PthreadSemantics, CheckKind); in DestroyPthreadLock()
529 CheckerKind CheckKind) const { in DestroyXNULock()
531 CheckKind); in DestroyXNULock()
538 CheckerKind CheckKind) const { in DestroyLockAux()
539 if (!ChecksEnabled[CheckKind]) in DestroyLockAux()
585 reportBug(C, BT_destroylock, MtxExpr, CheckKind, Message); in DestroyLockAux()
589 CheckerKind CheckKind) const { in InitAnyLock()
590 InitLockAux(Call, C, Call.getArgExpr(0), Call.getArgSVal(0), CheckKind); in InitAnyLock()
595 CheckerKind CheckKind) const { in InitLockAux()
596 if (!ChecksEnabled[CheckKind]) in InitLockAux()
620 reportBug(C, BT_initlock, MtxExpr, CheckKind, Message); in InitLockAux()
625 const Expr *MtxExpr, CheckerKind CheckKind, in reportBug() argument
630 initBugType(CheckKind); in reportBug()
632 std::make_unique<PathSensitiveBugReport>(*BT[CheckKind], Desc, N); in reportBug()