mi-malloc  1.4
Zero initialized re-allocation

The zero-initialized re-allocations are only valid on memory that was originally allocated with zero initialization too. More...

Functions

void * mi_rezalloc (void *p, size_t newsize)
 
void * mi_rezalloc_aligned (void *p, size_t newsize, size_t alignment)
 
void * mi_rezalloc_aligned_at (void *p, size_t newsize, size_t alignment, size_t offset)
 
void * mi_recalloc_aligned (void *p, size_t newcount, size_t size, size_t alignment)
 
void * mi_recalloc_aligned_at (void *p, size_t newcount, size_t size, size_t alignment, size_t offset)
 
void * mi_heap_rezalloc (mi_heap_t *heap, void *p, size_t newsize)
 
void * mi_heap_recalloc (mi_heap_t *heap, void *p, size_t newcount, size_t size)
 
void * mi_heap_rezalloc_aligned (mi_heap_t *heap, void *p, size_t newsize, size_t alignment)
 
void * mi_heap_rezalloc_aligned_at (mi_heap_t *heap, void *p, size_t newsize, size_t alignment, size_t offset)
 
void * mi_heap_recalloc_aligned (mi_heap_t *heap, void *p, size_t newcount, size_t size, size_t alignment)
 
void * mi_heap_recalloc_aligned_at (mi_heap_t *heap, void *p, size_t newcount, size_t size, size_t alignment, size_t offset)
 

Detailed Description

The zero-initialized re-allocations are only valid on memory that was originally allocated with zero initialization too.

e.g. mi_calloc, mi_zalloc, mi_zalloc_aligned etc. see https://github.com/microsoft/mimalloc/issues/63#issuecomment-508272992

Function Documentation

◆ mi_heap_recalloc()

void* mi_heap_recalloc ( mi_heap_t heap,
void *  p,
size_t  newcount,
size_t  size 
)

◆ mi_heap_recalloc_aligned()

void* mi_heap_recalloc_aligned ( mi_heap_t heap,
void *  p,
size_t  newcount,
size_t  size,
size_t  alignment 
)

◆ mi_heap_recalloc_aligned_at()

void* mi_heap_recalloc_aligned_at ( mi_heap_t heap,
void *  p,
size_t  newcount,
size_t  size,
size_t  alignment,
size_t  offset 
)

◆ mi_heap_rezalloc()

void* mi_heap_rezalloc ( mi_heap_t heap,
void *  p,
size_t  newsize 
)

◆ mi_heap_rezalloc_aligned()

void* mi_heap_rezalloc_aligned ( mi_heap_t heap,
void *  p,
size_t  newsize,
size_t  alignment 
)

◆ mi_heap_rezalloc_aligned_at()

void* mi_heap_rezalloc_aligned_at ( mi_heap_t heap,
void *  p,
size_t  newsize,
size_t  alignment,
size_t  offset 
)

◆ mi_recalloc_aligned()

void* mi_recalloc_aligned ( void *  p,
size_t  newcount,
size_t  size,
size_t  alignment 
)

◆ mi_recalloc_aligned_at()

void* mi_recalloc_aligned_at ( void *  p,
size_t  newcount,
size_t  size,
size_t  alignment,
size_t  offset 
)

◆ mi_rezalloc()

void* mi_rezalloc ( void *  p,
size_t  newsize 
)

◆ mi_rezalloc_aligned()

void* mi_rezalloc_aligned ( void *  p,
size_t  newsize,
size_t  alignment 
)

◆ mi_rezalloc_aligned_at()

void* mi_rezalloc_aligned_at ( void *  p,
size_t  newsize,
size_t  alignment,
size_t  offset 
)