void* _realloc_impl( void* oldptr, size_t size, int krn) { if (krn == 1){ // kernel uint8_t* newptr = tlsf_realloc(kernel_heap, oldptr, size); return newptr; } else { // processes void* heapStart = sdk_prc_getHeapPointer(); uint8_t* newptr = tlsf_realloc(heapStart, oldptr, size); return newptr; } }
//----------------------------------------------------------------// void* zipfs_realloc ( void* ptr, size_t size ) { if ( sTlsfPool ) { return tlsf_realloc ( sTlsfPool->mPool, ptr, size ); } return realloc ( ptr, size ); }
/** * Deallocate and reallocate with a different size. */ ATTR_REALLOC void *realloc(void *ptr, size_t size) { unsigned old_state = irq_disable(); void *result = tlsf_realloc(gheap, ptr, size); irq_restore(old_state); return result; }
void *krealloc(void *oldptr, size_t bytes) { uint32_t flags; void *ptr; save_flags_cli(flags); ptr = tlsf_realloc(g_kheap, oldptr, bytes); restore_flags(flags); return ptr; }
void* AllocatorTLSF_Impl::Reallocate(void* _Pointer, size_t _NumBytes) { size_t oldBlockSize = _Pointer ? tlsf_block_size(_Pointer) : 0; void* p = tlsf_realloc(hPool, _Pointer, _NumBytes); if (p) { size_t blockSizeDiff = tlsf_block_size(p) - oldBlockSize; Stats.BytesAllocated += blockSizeDiff; Stats.BytesFree -= blockSizeDiff; Stats.PeakBytesAllocated = __max(Stats.PeakBytesAllocated, Stats.BytesAllocated); } return 0; }
void * myrealloc(void *ptr, size_t bytes) { hts_lwmutex_lock(&mutex); void *r = tlsf_realloc(gpool, ptr, bytes); hts_lwmutex_unlock(&mutex); if(r == NULL) { memtrace(); tracelog(TRACE_NO_PROP, TRACE_ERROR, "MEMORY", "realloc(%d) failed", (int)bytes); errno = ENOMEM; } return r; }
void *realloc(void *ptr, size_t bytes) { void *r; if(bytes == 0) { free(ptr); return NULL; } hts_lwmutex_lock(&mutex); r = tlsf_realloc(gpool, ptr, bytes); hts_lwmutex_unlock(&mutex); if(r == NULL) { memtrace(); panic("OOM: realloc(%p, %d)", ptr, (int)bytes); } return r; }
static void *g_realloc(void *ptr, size_t osize, size_t size) { void* p = NULL; if (ptr && size == 0) { g_free(ptr); } else if (ptr == NULL) { if (size <= 256) p = tlsf_malloc(memory_pool, size); if (p == NULL) p = ::malloc(size); } else { if (memory_pool <= ptr && ptr < memory_pool_end) { if (size <= 256) p = tlsf_realloc(memory_pool, ptr, size); if (p == NULL) { p = ::malloc(size); memcpy(p, ptr, osize); tlsf_free(memory_pool, ptr); } } else { p = ::realloc(ptr, size); } } return p; }
void* realloc( void* ptr, size_t size ) { return tlsf_realloc( g_tlsfPool, ptr, size ); }
void *realloc(void *oldmem, size_t bytes) { return tlsf_realloc(tlsf_mem_pool, oldmem, bytes); }
void * pvPortRealloc( void *pv, size_t xWantedSize ){ vTaskSuspendAll(); void * res = tlsf_realloc(pv, xWantedSize); xTaskResumeAll(); return res; }