TM API. More...
#include <stddef.h>#include <stdio.h>

Go to the source code of this file.
Data Structures | |
| struct | tm_adesc |
| Allocation descriptor. More... | |
Defines | |
| #define | tm_ptr_TO_END_IS_VALID 0 |
| If true, a pointer immediately after the end of a node is considered to be "in" the node. | |
Functions | |
| tm_adesc * | tm_adesc_for_size (tm_adesc *desc, int force_new) |
| ???? | |
| void | tm_init (int *argcp, char ***argvp, char ***envpp) |
| API: Initialize the tm allocator. | |
| int | tm_root_add (const char *name, const void *begin, const void *end) |
| API: Add a root set. | |
| void | tm_root_remove (const char *name, const void *begin, const void *end) |
| void * | tm_alloc (size_t size) |
| API: Allocate a node. | |
| void * | tm_alloc_desc (tm_adesc *desc) |
| API: Allocate a node based on a allocation descriptor. | |
| void * | tm_realloc (void *ptr, size_t size) |
| API: Reallocate a node of a givin size. | |
| void | tm_free (void *ptr) |
| API: Explicitly free a node. | |
| void | tm_gc_full () |
| Force a full GC. | |
| void | tm_msg_enable (const char *codes, int enable) |
| Enable or disable messages. | |
| void | tm_msg (const char *format,...) |
| Prints messages to tm_msg_file. | |
| void | tm_msg1 (const char *format,...) |
| Format additional message data. | |
| void | tm_print_stats () |
| API: Print statistics. | |
| void | tm_print_block_stats () |
| API: Print block statistics. | |
| void | tm_print_time_stats () |
| API: Print timing stats. | |
Variables | |
| int | tm_sweep_is_error |
| FILE * | tm_msg_file |
| Debug message file handle. | |
| const char * | tm_msg_prefix |
| long | tm_node_parcel_some_size |
| Nodes to parcel from a tm_block per tm_alloc(). | |
| long | tm_root_scan_some_size |
| Amount of roots words to scan per tm_malloc(). | |
| long | tm_node_scan_some_size |
| Words to scan per tm_alloc(). | |
| long | tm_node_sweep_some_size |
| Nodes to sweep per tm_alloc(). | |
| long | tm_node_unmark_some_size |
| Nodes to unmark per tm_alloc(). | |
| long | tm_block_sweep_some_size |
| Number of blocks per tm_alloc() to sweep after sweep phase. | |
| int | tm_block_min_free |
| Minimum number of tm_blocks to retain on block free list. | |
| size_t | tm_os_alloc_max |
| int | tm_root_scan_full |
| If true, all roots are scanned atomically before moving to the SCAN phase. | |
TM API.
Definition in file tm.h.
1.6.1