A tm_type represents information about all tm_nodes of a specific size. More...
#include <type.h>
Data Fields | |
tm_list | list |
All types list: tm.types. | |
int | id |
The type id: tm.type_id. | |
struct tm_type * | hash_next |
Hash table next ptr: tm.type_hash[]. | |
size_t | size |
Size of each tm_node. | |
tm_list | blocks |
List of blocks allocated for this type. | |
size_t | n [tm__LAST2] |
Number of nodes, indexed by tm_color: includes tm_TOTAL, tm_B, tm_NU, tm_b, tm_b_NU stats. | |
tm_list | color_list [tm_TOTAL] |
Lists of node by color; see tm_node.list. | |
struct tm_block * | parcel_from_block |
The current block we are parceling from. | |
struct tm_adesc * | desc |
User-specified descriptor handle. |
A tm_type represents information about all tm_nodes of a specific size.
Definition at line 26 of file type.h.
List of blocks allocated for this type.
Definition at line 45 of file type.h.
Referenced by _tm_block_sweep_init(), _tm_type_add_block(), tm_block_scavenge(), tm_type_init(), and tm_validate_lists().
tm_list tm_type::color_list[tm_TOTAL] |
Lists of node by color; see tm_node.list.
Definition at line 51 of file type.h.
Referenced by _tm_check_sweep_error(), _tm_node_sweep_some_for_type(), _tm_type_alloc_node_from_free_list(), tm_node_iterator_init(), tm_node_iterator_next(), tm_node_set_color(), tm_type_init(), and tm_validate_lists().
struct tm_adesc* tm_type::desc [read] |
User-specified descriptor handle.
Definition at line 57 of file type.h.
Referenced by tm_adesc_for_size(), and tm_type_init().
struct tm_type* tm_type::hash_next [read] |
Hash table next ptr: tm.type_hash[].
Definition at line 39 of file type.h.
Referenced by tm_init(), tm_size_to_type_2(), tm_type_new(), and tm_type_new_2().
int tm_type::id |
The type id: tm.type_id.
Definition at line 31 of file type.h.
Referenced by tm_node_iterator_next(), tm_print_block_stats(), tm_print_stats(), and tm_type_init().
size_t tm_type::n[tm__LAST2] |
Number of nodes, indexed by tm_color: includes tm_TOTAL, tm_B, tm_NU, tm_b, tm_b_NU stats.
Definition at line 48 of file type.h.
Referenced by _tm_alloc_type_inner(), _tm_block_unparcel_nodes(), _tm_check_sweep_error(), _tm_node_delete(), _tm_node_init(), _tm_node_parcel_some(), _tm_node_set_color(), _tm_node_sweep_some_for_type(), _tm_type_add_block(), _tm_type_memory_pressureQ(), _tm_type_remove_block(), tm_print_stats(), tm_ptr_to_node(), tm_type_init(), and tm_validate_lists().
struct tm_block* tm_type::parcel_from_block [read] |
The current block we are parceling from.
Definition at line 54 of file type.h.
Referenced by _tm_node_parcel_some(), _tm_type_add_block(), _tm_type_memory_pressureQ(), _tm_type_remove_block(), and tm_type_init().
size_t tm_type::size |
Size of each tm_node.
Definition at line 42 of file type.h.
Referenced by _tm_alloc_desc_inner(), _tm_alloc_type_inner(), _tm_check_sweep_error(), _tm_node_delete(), _tm_node_parcel_some(), _tm_node_sweep(), _tm_node_sweep_some_for_type(), _tm_print_utilization(), _tm_realloc_inner(), _tm_type_add_block(), _tm_type_alloc_node_from_free_list(), tm_print_block_stats(), tm_print_stats(), tm_size_to_type(), tm_size_to_type_2(), tm_type_init(), and tm_type_new_2().