Lines Matching refs:BV
35 template <class BV>
68 // lock_id < BV::kSize, can cast to a smaller int.
106 const BV &getLocks(uptr current_epoch) const {
115 BV bv_;
134 template <class BV>
137 typedef BV BitVector;
195 void ensureCurrentEpoch(DeadlockDetectorTLS<BV> *dtls) {
202 bool onLockBefore(DeadlockDetectorTLS<BV> *dtls, uptr cur_node) {
208 u32 findLockContext(DeadlockDetectorTLS<BV> *dtls, uptr node) {
213 void onLockAfter(DeadlockDetectorTLS<BV> *dtls, uptr cur_node, u32 stk = 0) {
221 bool hasAllEdges(DeadlockDetectorTLS<BV> *dtls, uptr cur_node) {
240 uptr addEdges(DeadlockDetectorTLS<BV> *dtls, uptr cur_node, u32 stk,
275 bool onLock(DeadlockDetectorTLS<BV> *dtls, uptr cur_node, u32 stk = 0) {
288 bool onTryLock(DeadlockDetectorTLS<BV> *dtls, uptr cur_node, u32 stk = 0) {
298 bool onFirstLock(DeadlockDetectorTLS<BV> *dtls, uptr node, u32 stk = 0) {
310 uptr findPathToLock(DeadlockDetectorTLS<BV> *dtls, uptr cur_node, uptr *path,
325 void onUnlock(DeadlockDetectorTLS<BV> *dtls, uptr node) {
334 bool onLockFast(DeadlockDetectorTLS<BV> *dtls, uptr node, u32 stk = 0) {
342 bool isHeld(DeadlockDetectorTLS<BV> *dtls, uptr node) const {
399 BV available_nodes_;
400 BV recycled_nodes_;
401 BV tmp_bv_;
402 BVGraph<BV> g_;
403 uptr data_[BV::kSize];
404 Edge edges_[BV::kSize * 32];