LLVM 20.0.0git
|
Public Attributes | |
uintptr_t | owner_thread |
Owning thread ID. | |
heap_size_class_t | size_class [SIZE_CLASS_COUNT] |
Free lists for each size class. | |
atomicptr_t | span_free_deferred |
List of deferred free spans (single linked list) | |
size_t | full_span_count |
Number of full spans. | |
span_t * | span_reserve |
Mapped but unused spans. | |
span_t * | span_reserve_master |
Master span for mapped but unused spans. | |
uint32_t | spans_reserved |
Number of mapped but unused spans. | |
atomic32_t | child_count |
Child count. | |
heap_t * | next_heap |
Next heap in id list. | |
heap_t * | next_orphan |
Next heap in orphan list. | |
int32_t | id |
Heap ID. | |
int | finalize |
Finalization state flag. | |
heap_t * | master_heap |
Master heap owning the memory pages. | |
Definition at line 666 of file rpmalloc.c.
atomic32_t heap_t::child_count |
int heap_t::finalize |
Finalization state flag.
Definition at line 694 of file rpmalloc.c.
Referenced by _rpmalloc_deallocate_direct_small_or_medium(), _rpmalloc_deallocate_huge(), _rpmalloc_deallocate_large(), _rpmalloc_deallocate_small_or_medium(), _rpmalloc_heap_cache_insert(), _rpmalloc_heap_global_finalize(), _rpmalloc_heap_release(), _rpmalloc_heap_unmap(), _rpmalloc_span_release_to_cache(), and rpmalloc_finalize().
size_t heap_t::full_span_count |
Number of full spans.
Definition at line 678 of file rpmalloc.c.
Referenced by _rpmalloc_aligned_allocate(), _rpmalloc_allocate_from_heap_fallback(), _rpmalloc_allocate_huge(), _rpmalloc_allocate_large(), _rpmalloc_deallocate_direct_small_or_medium(), _rpmalloc_deallocate_huge(), _rpmalloc_deallocate_large(), _rpmalloc_heap_cache_adopt_deferred(), _rpmalloc_heap_finalize(), _rpmalloc_heap_global_finalize(), and _rpmalloc_span_initialize_new().
int32_t heap_t::id |
Heap ID.
Definition at line 692 of file rpmalloc.c.
Referenced by _rpmalloc_heap_global_finalize(), and _rpmalloc_heap_initialize().
heap_t* heap_t::master_heap |
Master heap owning the memory pages.
Definition at line 696 of file rpmalloc.c.
Referenced by _rpmalloc_heap_allocate_new(), and _rpmalloc_heap_unmap().
heap_t* heap_t::next_heap |
Next heap in id list.
Definition at line 688 of file rpmalloc.c.
Referenced by _rpmalloc_heap_global_finalize(), _rpmalloc_heap_initialize(), rpmalloc_dump_statistics(), and rpmalloc_finalize().
heap_t* heap_t::next_orphan |
Next heap in orphan list.
Definition at line 690 of file rpmalloc.c.
Referenced by _rpmalloc_heap_extract_orphan(), and _rpmalloc_heap_orphan().
uintptr_t heap_t::owner_thread |
Owning thread ID.
Definition at line 668 of file rpmalloc.c.
Referenced by _rpmalloc_deallocate_direct_small_or_medium(), _rpmalloc_deallocate_huge(), _rpmalloc_deallocate_large(), _rpmalloc_deallocate_small_or_medium(), _rpmalloc_heap_orphan(), and set_thread_heap().
heap_size_class_t heap_t::size_class[SIZE_CLASS_COUNT] |
Free lists for each size class.
Definition at line 670 of file rpmalloc.c.
Referenced by _rpmalloc_allocate_medium(), _rpmalloc_allocate_small(), _rpmalloc_deallocate_direct_small_or_medium(), _rpmalloc_heap_finalize(), _rpmalloc_heap_global_finalize(), _rpmalloc_span_finalize(), _rpmalloc_span_release_to_cache(), and rpmalloc_thread_statistics().
atomicptr_t heap_t::span_free_deferred |
List of deferred free spans (single linked list)
Definition at line 676 of file rpmalloc.c.
Referenced by _rpmalloc_deallocate_defer_free_span(), _rpmalloc_heap_cache_adopt_deferred(), _rpmalloc_heap_finalize(), and rpmalloc_thread_statistics().
span_t* heap_t::span_reserve |
Mapped but unused spans.
Definition at line 680 of file rpmalloc.c.
Referenced by _rpmalloc_deallocate_large(), _rpmalloc_heap_set_reserved_spans(), _rpmalloc_span_map_aligned_count(), and _rpmalloc_span_map_from_reserve().
span_t* heap_t::span_reserve_master |
Master span for mapped but unused spans.
Definition at line 682 of file rpmalloc.c.
Referenced by _rpmalloc_deallocate_large(), _rpmalloc_heap_set_reserved_spans(), _rpmalloc_span_map_aligned_count(), and _rpmalloc_span_map_from_reserve().
uint32_t heap_t::spans_reserved |
Number of mapped but unused spans.
Definition at line 684 of file rpmalloc.c.
Referenced by _rpmalloc_deallocate_large(), _rpmalloc_heap_finalize(), _rpmalloc_heap_reserved_extract(), _rpmalloc_heap_set_reserved_spans(), _rpmalloc_span_map(), _rpmalloc_span_map_aligned_count(), and _rpmalloc_span_map_from_reserve().