LLVM 20.0.0git
|
Public Attributes | |
void * | free_list |
Free list. | |
uint32_t | block_count |
Total block count of size class. | |
uint32_t | size_class |
Size class. | |
uint32_t | free_list_limit |
Index of last block initialized in free list. | |
uint32_t | used_count |
Number of used blocks remaining when in partial state. | |
atomicptr_t | free_list_deferred |
Deferred free list. | |
uint32_t | list_size |
Size of deferred free list, or list of spans when part of a cache list. | |
uint32_t | block_size |
Size of a block. | |
uint32_t | flags |
Flags and counters. | |
uint32_t | span_count |
Number of spans. | |
uint32_t | total_spans |
Total span counter for master spans. | |
uint32_t | offset_from_master |
Offset from master span for subspans. | |
atomic32_t | remaining_spans |
Remaining span counter, for master spans. | |
uint32_t | align_offset |
Alignment offset. | |
heap_t * | heap |
Owning heap. | |
span_t * | next |
Next span. | |
span_t * | prev |
Previous span. | |
Definition at line 603 of file rpmalloc.c.
uint32_t span_t::align_offset |
Alignment offset.
Definition at line 631 of file rpmalloc.c.
Referenced by _rpmalloc_aligned_allocate(), _rpmalloc_allocate_huge(), _rpmalloc_deallocate_huge(), _rpmalloc_span_initialize(), _rpmalloc_span_mark_as_subspan_unless_master(), and _rpmalloc_span_unmap().
uint32_t span_t::block_count |
Total block count of size class.
Definition at line 607 of file rpmalloc.c.
Referenced by _rpmalloc_allocate_from_heap_fallback(), _rpmalloc_deallocate_defer_small_or_medium(), _rpmalloc_deallocate_direct_small_or_medium(), _rpmalloc_span_initialize_new(), and _rpmalloc_span_is_fully_utilized().
uint32_t span_t::block_size |
Size of a block.
Definition at line 619 of file rpmalloc.c.
Referenced by _rpmalloc_allocate_from_heap_fallback(), _rpmalloc_deallocate_small_or_medium(), _rpmalloc_reallocate(), _rpmalloc_span_initialize_new(), and _rpmalloc_usable_size().
uint32_t span_t::flags |
Flags and counters.
Definition at line 621 of file rpmalloc.c.
Referenced by _rpmalloc_aligned_allocate(), _rpmalloc_deallocate_large(), _rpmalloc_deallocate_small_or_medium(), _rpmalloc_span_initialize(), _rpmalloc_span_initialize_new(), _rpmalloc_span_mark_as_subspan_unless_master(), and _rpmalloc_span_unmap().
void* span_t::free_list |
Free list.
Definition at line 605 of file rpmalloc.c.
Referenced by _rpmalloc_allocate_from_heap_fallback(), _rpmalloc_deallocate_defer_free_span(), _rpmalloc_deallocate_direct_small_or_medium(), _rpmalloc_heap_cache_adopt_deferred(), _rpmalloc_span_extract_free_list_deferred(), _rpmalloc_span_finalize(), _rpmalloc_span_initialize_new(), _rpmalloc_span_is_fully_utilized(), and rpmalloc_thread_statistics().
atomicptr_t span_t::free_list_deferred |
Deferred free list.
Definition at line 615 of file rpmalloc.c.
Referenced by _rpmalloc_allocate_from_heap_fallback(), _rpmalloc_deallocate_defer_small_or_medium(), _rpmalloc_deallocate_direct_small_or_medium(), _rpmalloc_span_extract_free_list_deferred(), and _rpmalloc_span_initialize_new().
uint32_t span_t::free_list_limit |
Index of last block initialized in free list.
Definition at line 611 of file rpmalloc.c.
Referenced by _rpmalloc_allocate_from_heap_fallback(), _rpmalloc_span_initialize_new(), _rpmalloc_span_is_fully_utilized(), and rpmalloc_thread_statistics().
heap_t* span_t::heap |
Owning heap.
Definition at line 633 of file rpmalloc.c.
Referenced by _rpmalloc_aligned_allocate(), _rpmalloc_allocate_huge(), _rpmalloc_allocate_large(), _rpmalloc_deallocate_defer_small_or_medium(), _rpmalloc_deallocate_direct_small_or_medium(), _rpmalloc_deallocate_huge(), _rpmalloc_deallocate_large(), _rpmalloc_deallocate_small_or_medium(), _rpmalloc_heap_cache_adopt_deferred(), _rpmalloc_span_initialize_new(), and _rpmalloc_span_release_to_cache().
uint32_t span_t::list_size |
Size of deferred free list, or list of spans when part of a cache list.
Definition at line 617 of file rpmalloc.c.
Referenced by _rpmalloc_deallocate_defer_small_or_medium(), _rpmalloc_deallocate_direct_small_or_medium(), _rpmalloc_span_extract_free_list_deferred(), _rpmalloc_span_finalize(), _rpmalloc_span_initialize_new(), and rpmalloc_thread_statistics().
span_t* span_t::next |
Next span.
Definition at line 635 of file rpmalloc.c.
Referenced by _rpmalloc_heap_finalize(), _rpmalloc_span_double_link_list_add(), _rpmalloc_span_double_link_list_pop_head(), _rpmalloc_span_double_link_list_remove(), rpmalloc_dump_statistics(), rpmalloc_global_statistics(), and rpmalloc_thread_statistics().
uint32_t span_t::offset_from_master |
Offset from master span for subspans.
Definition at line 627 of file rpmalloc.c.
Referenced by _rpmalloc_deallocate_large(), _rpmalloc_span_mark_as_subspan_unless_master(), and _rpmalloc_span_unmap().
span_t* span_t::prev |
Previous span.
Definition at line 637 of file rpmalloc.c.
Referenced by _rpmalloc_span_double_link_list_remove().
atomic32_t span_t::remaining_spans |
Remaining span counter, for master spans.
Definition at line 629 of file rpmalloc.c.
Referenced by _rpmalloc_deallocate_large(), _rpmalloc_span_initialize(), _rpmalloc_span_unmap(), and rpmalloc_finalize().
uint32_t span_t::size_class |
Size class.
Definition at line 609 of file rpmalloc.c.
Referenced by _rpmalloc_aligned_allocate(), _rpmalloc_allocate_from_heap_fallback(), _rpmalloc_allocate_huge(), _rpmalloc_allocate_large(), _rpmalloc_deallocate(), _rpmalloc_deallocate_defer_free_span(), _rpmalloc_deallocate_direct_small_or_medium(), _rpmalloc_deallocate_large(), _rpmalloc_deallocate_small_or_medium(), _rpmalloc_heap_cache_adopt_deferred(), _rpmalloc_reallocate(), _rpmalloc_span_initialize_new(), _rpmalloc_span_release_to_cache(), _rpmalloc_usable_size(), and rpmalloc_thread_statistics().
uint32_t span_t::span_count |
Number of spans.
Definition at line 623 of file rpmalloc.c.
Referenced by _rpmalloc_aligned_allocate(), _rpmalloc_allocate_huge(), _rpmalloc_allocate_large(), _rpmalloc_deallocate_defer_free_span(), _rpmalloc_deallocate_huge(), _rpmalloc_deallocate_large(), _rpmalloc_heap_cache_adopt_deferred(), _rpmalloc_heap_cache_insert(), _rpmalloc_reallocate(), _rpmalloc_span_initialize(), _rpmalloc_span_initialize_new(), _rpmalloc_span_map(), _rpmalloc_span_mark_as_subspan_unless_master(), _rpmalloc_span_release_to_cache(), _rpmalloc_span_unmap(), _rpmalloc_usable_size(), and rpmalloc_thread_statistics().
uint32_t span_t::total_spans |
Total span counter for master spans.
Definition at line 625 of file rpmalloc.c.
Referenced by _rpmalloc_span_initialize(), and _rpmalloc_span_unmap().
uint32_t span_t::used_count |
Number of used blocks remaining when in partial state.
Definition at line 613 of file rpmalloc.c.
Referenced by _rpmalloc_allocate_from_heap_fallback(), _rpmalloc_deallocate_direct_small_or_medium(), _rpmalloc_span_extract_free_list_deferred(), _rpmalloc_span_finalize(), _rpmalloc_span_initialize_new(), and rpmalloc_thread_statistics().