reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
85 static atomic_uint32_t *ref_ptr(ClockBlock *cb) { 86 return reinterpret_cast<atomic_uint32_t *>(&cb->table[ClockBlock::kRefIdx]); 91 ClockBlock *cb = ctx->clock_alloc.Map(idx); 103 ctx->clock_alloc.Free(c, cb->table[ClockBlock::kBlockIdx - i]); 421 } else if (size_ > blocks_ * ClockBlock::kClockCount) { 423 ClockBlock *new_cb = ctx->clock_alloc.Map(idx); 424 uptr top = size_ - blocks_ * ClockBlock::kClockCount; 437 ClockBlock *cb = ctx->clock_alloc.Map(idx); 515 const uptr block = tid / ClockBlock::kClockCount; 517 tid %= ClockBlock::kClockCount; 521 ClockBlock *cb = ctx->clock_alloc.Map(idx); 528 uptr ratio = sizeof(ClockBlock::clock[0]) / sizeof(ClockBlock::table[0]); 528 uptr ratio = sizeof(ClockBlock::clock[0]) / sizeof(ClockBlock::table[0]); 531 uptr top = ClockBlock::kClockCount - RoundUpTo(blocks_ + 1, ratio) / ratio; 532 return blocks_ * ClockBlock::kClockCount + top; 538 return tab_->table[ClockBlock::kBlockIdx - bi]; 544 tab_->table[ClockBlock::kBlockIdx - bi] = idx; 581 ClockBlock *cb = ctx->clock_alloc.Map(idx); 583 end_ = pos_ + min(parent_->size_ - block_ * ClockBlock::kClockCount, 584 ClockBlock::kClockCount); 588 parent_->size_ > parent_->blocks_ * ClockBlock::kClockCount) { 591 end_ = pos_ + min(parent_->size_ - block_ * ClockBlock::kClockCount, 592 ClockBlock::kClockCount);projects/compiler-rt/lib/tsan/rtl/tsan_clock.h
20 typedef DenseSlabAlloc<ClockBlock, 1<<16, 1<<10> ClockAlloc; 107 ClockBlock *tab_;projects/compiler-rt/lib/tsan/rtl/tsan_defs.h
68 const unsigned kMaxTid = (1 << kTidBits) - ClockBlock::kClockCount;
projects/compiler-rt/lib/tsan/rtl/tsan_dense_alloc.h57 UnmapOrDie(map_[i], kL2Size * sizeof(T)); 74 T *Map(IndexT idx) { 95 T *map_[kL1Size]; 111 T *batch = (T*)MmapOrDie(kL2Size * sizeof(T), name_); 111 T *batch = (T*)MmapOrDie(kL2Size * sizeof(T), name_); 115 new(batch + i) T;