/art/runtime/gc/space/ |
D | dlmalloc_space.cc | 240 size_t DlMallocSpace::FreeList(Thread* self, size_t num_ptrs, mirror::Object** ptrs) { in FreeList() argument 241 DCHECK(ptrs != nullptr); in FreeList() 246 mirror::Object* ptr = ptrs[i]; in FreeList() 250 __builtin_prefetch(reinterpret_cast<char*>(ptrs[i + look_ahead]) - sizeof(size_t)); in FreeList() 258 RegisterRecentFree(ptrs[i]); in FreeList() 265 if (!Contains(ptrs[i])) { in FreeList() 267 LOG(ERROR) << "FreeList[" << i << "] (" << ptrs[i] << ") not in bounds of heap " << *this; in FreeList() 269 size_t size = mspace_usable_size(ptrs[i]); in FreeList() 270 memset(ptrs[i], 0xEF, size); in FreeList() 278 mspace_bulk_free(mspace_, reinterpret_cast<void**>(ptrs), num_ptrs); in FreeList()
|
D | rosalloc_space.cc | 272 size_t RosAllocSpace::FreeList(Thread* self, size_t num_ptrs, mirror::Object** ptrs) { in FreeList() argument 273 DCHECK(ptrs != nullptr); in FreeList() 278 __builtin_prefetch(reinterpret_cast<char*>(ptrs[i + kPrefetchLookAhead])); in FreeList() 281 verify_bytes += AllocationSizeNonvirtual<true>(ptrs[i], nullptr); in FreeList() 288 RegisterRecentFree(ptrs[i]); in FreeList() 295 if (!Contains(ptrs[i])) { in FreeList() 297 LOG(ERROR) << "FreeList[" << i << "] (" << ptrs[i] << ") not in bounds of heap " << *this; in FreeList() 299 size_t size = rosalloc_->UsableSize(ptrs[i]); in FreeList() 300 memset(ptrs[i], 0xEF, size); in FreeList() 306 const size_t bytes_freed = rosalloc_->BulkFree(self, reinterpret_cast<void**>(ptrs), num_ptrs); in FreeList()
|
D | memory_tool_malloc_space-inl.h | 252 Thread* self, size_t num_ptrs, mirror::Object** ptrs) { in FreeList() argument 256 std::sort(ptrs, ptrs + num_ptrs, [](mirror::Object* a, mirror::Object* b) in FreeList() 261 freed += Free(self, ptrs[i]); in FreeList() 262 ptrs[i] = nullptr; in FreeList()
|
D | zygote_space.cc | 111 void ZygoteSpace::SweepCallback(size_t num_ptrs, mirror::Object** ptrs, void* arg) { in SweepCallback() argument 122 bitmap->Clear(ptrs[i]); in SweepCallback() 128 card_table->MarkCard(ptrs[i]); in SweepCallback()
|
D | zygote_space.h | 56 size_t FreeList(Thread* self, size_t num_ptrs, mirror::Object** ptrs) override; 90 static void SweepCallback(size_t num_ptrs, mirror::Object** ptrs, void* arg);
|
D | malloc_space.h | 59 size_t FreeList(Thread* self, size_t num_ptrs, mirror::Object** ptrs) override 205 static void SweepCallback(size_t num_ptrs, mirror::Object** ptrs, void* arg)
|
D | malloc_space.cc | 258 void MallocSpace::SweepCallback(size_t num_ptrs, mirror::Object** ptrs, void* arg) { in SweepCallback() argument 268 bitmap->Clear(ptrs[i]); in SweepCallback() 275 context->freed.bytes += space->FreeList(self, num_ptrs, ptrs); in SweepCallback()
|
D | memory_tool_malloc_space.h | 48 size_t FreeList(Thread* self, size_t num_ptrs, mirror::Object** ptrs) override
|
D | large_object_space.cc | 214 size_t LargeObjectSpace::FreeList(Thread* self, size_t num_ptrs, mirror::Object** ptrs) { in FreeList() argument 218 CHECK(Contains(ptrs[i])); in FreeList() 220 total += Free(self, ptrs[i]); in FreeList() 594 void LargeObjectSpace::SweepCallback(size_t num_ptrs, mirror::Object** ptrs, void* arg) { in SweepCallback() argument 604 bitmap->Clear(ptrs[i]); in SweepCallback() 608 context->freed.bytes += space->FreeList(self, num_ptrs, ptrs); in SweepCallback()
|
D | large_object_space.h | 69 size_t FreeList(Thread* self, size_t num_ptrs, mirror::Object** ptrs) override; 121 static void SweepCallback(size_t num_ptrs, mirror::Object** ptrs, void* arg);
|
D | dlmalloc_space.h | 79 size_t FreeList(Thread* self, size_t num_ptrs, mirror::Object** ptrs) override
|
D | rosalloc_space.h | 75 size_t FreeList(Thread* self, size_t num_ptrs, mirror::Object** ptrs) override
|
D | space.h | 232 virtual size_t FreeList(Thread* self, size_t num_ptrs, mirror::Object** ptrs) = 0;
|
/art/runtime/gc/accounting/ |
D | space_bitmap.h | 44 typedef void SweepCallback(size_t ptr_count, mirror::Object** ptrs, void* arg);
|
/art/runtime/gc/allocator/ |
D | rosalloc.h | 854 size_t BulkFree(Thread* self, void** ptrs, size_t num_ptrs)
|
D | rosalloc.cc | 1006 size_t RosAlloc::BulkFree(Thread* self, void** ptrs, size_t num_ptrs) { in BulkFree() argument 1011 freed_bytes += FreeInternal(self, ptrs[i]); in BulkFree() 1026 void* ptr = ptrs[i]; in BulkFree()
|