Home | History | Annotate | Download | only in sanitizer_common

Lines Matching refs:Batch

104   // For large size classes we use one of the chunks to store the batch.
108 void *batch[kMaxNumCached];
319 typedef typename SizeClassMap::TransferBatch Batch;
345 NOINLINE Batch* AllocateBatch(AllocatorStats *stat, AllocatorCache *c,
349 Batch *b = region->free_list.Pop();
356 NOINLINE void DeallocateBatch(AllocatorStats *stat, uptr class_id, Batch *b) {
493 LFStack<Batch> free_list;
517 NOINLINE Batch* PopulateFreeList(AllocatorStats *stat, AllocatorCache *c,
520 Batch *b = region->free_list.Pop();
560 b = (Batch*)c->Allocate(this, SizeClassMap::ClassID(sizeof(Batch)));
562 b = (Batch*)(region_beg + beg_idx);
565 b->batch[i] = (void*)(region_beg + beg_idx + i * size);
692 typedef typename SizeClassMap::TransferBatch Batch;
730 NOINLINE Batch* AllocateBatch(AllocatorStats *stat, AllocatorCache *c,
738 Batch *b = sci->free_list.front();
743 NOINLINE void DeallocateBatch(AllocatorStats *stat, uptr class_id, Batch *b) {
839 IntrusiveList<Batch> free_list;
840 char padding[kCacheLineSize - sizeof(uptr) - sizeof(IntrusiveList<Batch>)];
876 Batch *b = nullptr;
880 b = (Batch*)c->Allocate(this, SizeClassMap::ClassID(sizeof(Batch)));
882 b = (Batch*)i;
885 b->batch[b->count++] = (void*)i;
929 void *res = c->batch[--c->count];
930 PREFETCH(c->batch[c->count - 1]);
945 c->batch[c->count++] = p;
958 typedef typename SizeClassMap::TransferBatch Batch;
962 void *batch[2 * SizeClassMap::kMaxNumCached];
979 Batch *b = allocator->AllocateBatch(&stats_, this, class_id);
982 c->batch[i] = b->batch[i];
985 Deallocate(allocator, SizeClassMap::ClassID(sizeof(Batch)), b);
991 Batch *b;
993 b = (Batch*)Allocate(allocator, SizeClassMap::ClassID(sizeof(Batch)));
995 b = (Batch*)c->batch[0];
998 b->batch[i] = c->batch[i];
999 c->batch[i] = c->batch[i + c->max_count / 2];