LLVM 20.0.0git
Public Attributes | List of all members
span_t Struct Reference

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_theap
 Owning heap.
 
span_tnext
 Next span.
 
span_tprev
 Previous span.
 

Detailed Description

Definition at line 603 of file rpmalloc.c.

Member Data Documentation

◆ align_offset

uint32_t span_t::align_offset

◆ block_count

uint32_t span_t::block_count

◆ block_size

uint32_t span_t::block_size

◆ flags

uint32_t span_t::flags

◆ free_list

void* span_t::free_list

◆ free_list_deferred

atomicptr_t span_t::free_list_deferred

◆ free_list_limit

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

heap_t* span_t::heap

◆ list_size

uint32_t span_t::list_size

◆ next

span_t* span_t::next

◆ offset_from_master

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().

◆ prev

span_t* span_t::prev

Previous span.

Definition at line 637 of file rpmalloc.c.

Referenced by _rpmalloc_span_double_link_list_remove().

◆ remaining_spans

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().

◆ size_class

uint32_t span_t::size_class

◆ span_count

uint32_t span_t::span_count

◆ total_spans

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().

◆ used_count

uint32_t span_t::used_count

The documentation for this struct was generated from the following file: