51 #define PADUP(num, pad) (((num) + ((pad)-1)) & ~((pad)-1))
122 if (chunk_size_min >= 1024) {
124 chunk_size_min -= slop_space;
138 #ifndef USE_TERMINATE_PARANOID
146 chunk_size_in_bytes = elem_size + (
uint)
sizeof(
data_t[2]);
164 data_curr_next = mi->
data_curr + (1 + data_offset);
178 #ifdef USE_TERMINATE_PARANOID
185 mi->totalloc += elem_size;
194 memset(
data, 0, elem_size);
201 memcpy(
data, data_from, elem_size);
#define BLI_asan_unpoison(addr, size)
#define BLI_asan_poison(addr, size)
static void memiter_set_rewind_offset(BLI_memiter *mi)
void * BLI_memiter_iter_step(BLI_memiter_handle *iter)
void * BLI_memiter_calloc(BLI_memiter *mi, uint elem_size)
void BLI_memiter_clear(BLI_memiter *mi)
struct BLI_memiter_chunk BLI_memiter_chunk
void BLI_memiter_iter_init(BLI_memiter *mi, BLI_memiter_handle *iter)
void * BLI_memiter_iter_step_size(BLI_memiter_handle *iter, uint *r_size)
void * BLI_memiter_elem_first_size(BLI_memiter *mi, uint *r_size)
static void memiter_init(BLI_memiter *mi)
void BLI_memiter_alloc_from(BLI_memiter *mi, uint elem_size, const void *data_from)
BLI_memiter * BLI_memiter_create(uint chunk_size_min)
uint BLI_memiter_count(const BLI_memiter *mi)
bool BLI_memiter_iter_done(const BLI_memiter_handle *iter)
struct BLI_memiter BLI_memiter
BLI_INLINE void memiter_chunk_step(BLI_memiter_handle *iter)
static void memiter_free_data(BLI_memiter *mi)
struct BLI_memiter_elem BLI_memiter_elem
void * BLI_memiter_alloc(BLI_memiter *mi, uint elem_size)
void BLI_memiter_destroy(BLI_memiter *mi)
BLI_INLINE uint data_offset_from_size(uint size)
void * BLI_memiter_elem_first(BLI_memiter *mi)
Strict compiler flags for areas of code we want to ensure don't do conversions without us knowing abo...
Read Guarded memory(de)allocation.
#define MEM_SIZE_OVERHEAD
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
void(* MEM_freeN)(void *vmemh)
size_t(* MEM_allocN_len)(const void *vmemh)
void *(* MEM_mallocN)(size_t len, const char *str)
static const int chunk_size
_W64 unsigned int uintptr_t
struct BLI_memiter_chunk * next
struct BLI_memiter_elem * elem
uint chunk_size_in_bytes_min
struct BLI_memiter_chunk * tail
struct BLI_memiter_chunk * head