reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

projects/compiler-rt/lib/tsan/rtl/tsan_clock.cpp
   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.h
   57         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;