Lines Matching refs:memPool
103 void *allocate(MemoryPool *memPool, size_t size);
587 MemoryPool *memPool; member in rml::internal::TLSData
596 …TLSData(MemoryPool *mPool, Backend *bknd) : memPool(mPool), freeSlabBlocks(bknd), currCacheIdx(0) … in TLSData()
597 MemoryPool *getMemPool() const { return memPool; } in getMemPool()
606 bool lloc_cleaned = lloc.externalCleanup(&memPool->extMemPool); in externalCleanup()
615 TLSData *TLSKey::createTLS(MemoryPool *memPool, Backend *backend) in createTLS() argument
618 TLSData* tls = (TLSData*) memPool->bootStrapBlocks.allocate(memPool, sizeof(TLSData)); in createTLS()
621 new(tls) TLSData(memPool, backend); in createTLS()
628 memPool->extMemPool.allLocalCaches.registerThread(tls); in createTLS()
642 memPool->returnEmptyBlock(block, /*poolTheBlock=*/false); in cleanupBlockBins()
874 void *BootStrapBlocks::allocate(MemoryPool *memPool, size_t size) in allocate() argument
888 bootStrapBlock = memPool->getEmptyBlock(size); in allocate()
1778 memPool->extMemPool.allLocalCaches.unregisterThread(this); in release()
1791 memPool->returnEmptyBlock(threadlessBlock, /*poolTheBlock=*/false); in release()
1793 memPool->extMemPool.orphanedBlocks.put(intptr_t(bin+index), threadlessBlock); in release()
1803 memPool->returnEmptyBlock(threadlessBlock, /*poolTheBlock=*/false); in release()
1805 memPool->extMemPool.orphanedBlocks.put(intptr_t(bin+index), threadlessBlock); in release()
2367 static void *allocateAligned(MemoryPool *memPool, size_t size, size_t alignment) in allocateAligned() argument
2377 result = internalPoolMalloc(memPool, alignUp(size? size: sizeof(size_t), alignment)); in allocateAligned()
2380 result = internalPoolMalloc(memPool, size); in allocateAligned()
2382 void *unaligned = internalPoolMalloc(memPool, size+alignment); in allocateAligned()
2389 TLSData *tls = memPool->getTLS(/*create=*/true); in allocateAligned()
2392 memPool->getFromLLOCache(tls, size, largeObjectAlignment>alignment? in allocateAligned()
2400 static void *reallocAligned(MemoryPool *memPool, void *ptr, in reallocAligned() argument
2415 bool isMemoryBlockHuge = copySize > memPool->extMemPool.backend.getMaxBinnedSize(); in reallocAligned()
2427 if (void *r = memPool->extMemPool.remap(ptr, copySize, newSize, in reallocAligned()
2431 result = alignment ? allocateAligned(memPool, newSize, alignment) : in reallocAligned()
2432 internalPoolMalloc(memPool, newSize); in reallocAligned()
2443 result = alignment ? allocateAligned(memPool, newSize, alignment) : in reallocAligned()
2444 internalPoolMalloc(memPool, newSize); in reallocAligned()
2449 internalPoolFree(memPool, ptr, 0); in reallocAligned()
2550 static void *internalPoolMalloc(MemoryPool* memPool, size_t size) in internalPoolMalloc() argument
2555 if (!memPool) return nullptr; in internalPoolMalloc()
2559 TLSData *tls = memPool->getTLS(/*create=*/true); in internalPoolMalloc()
2563 return memPool->getFromLLOCache(tls, size, largeObjectAlignment); in internalPoolMalloc()
2593 return internalPoolMalloc(memPool, size); in internalPoolMalloc()
2599 mallocBlock = memPool->extMemPool.orphanedBlocks.get(tls, size); in internalPoolMalloc()
2605 mallocBlock = memPool->extMemPool.orphanedBlocks.get(tls, size); in internalPoolMalloc()
2611 mallocBlock = memPool->getEmptyBlock(size); in internalPoolMalloc()
2619 return internalPoolMalloc(memPool, size); in internalPoolMalloc()
2632 static bool internalPoolFree(MemoryPool *memPool, void *object, size_t size) in internalPoolFree() argument
2634 if (!memPool || !object) return false; in internalPoolFree()
2639 MALLOC_ASSERT(memPool->extMemPool.userPool() || isRecognized(object), in internalPoolFree()
2643 memPool->putToLLOCache(memPool->getTLS(/*create=*/false), object); in internalPoolFree()
2720 rml::internal::MemoryPool *memPool = in pool_create_v1() local
2722 if (!memPool) { in pool_create_v1()
2726 memset(static_cast<void*>(memPool), 0, sizeof(rml::internal::MemoryPool)); in pool_create_v1()
2727 if (!memPool->init(pool_id, policy)) { in pool_create_v1()
2728 internalFree(memPool); in pool_create_v1()
2733 *pool = (rml::MemoryPool*)memPool; in pool_create_v1()
2737 bool pool_destroy(rml::MemoryPool* memPool) in pool_destroy() argument
2739 if (!memPool) return false; in pool_destroy()
2740 bool ret = ((rml::internal::MemoryPool*)memPool)->destroy(); in pool_destroy()
2741 internalFree(memPool); in pool_destroy()
2746 bool pool_reset(rml::MemoryPool* memPool) in pool_reset() argument
2748 if (!memPool) return false; in pool_reset()
2750 return ((rml::internal::MemoryPool*)memPool)->reset(); in pool_reset()
2777 void *pool_aligned_realloc(rml::MemoryPool* memPool, void *ptr, size_t size, size_t alignment) in pool_aligned_realloc() argument
2781 rml::internal::MemoryPool *mPool = (rml::internal::MemoryPool*)memPool; in pool_aligned_realloc()
2877 for (MemoryPool *memPool = defaultMemPool->next; memPool; memPool = memPool->next) in doThreadShutdownNotification() local
2878 memPool->onThreadShutdown(memPool->getTLS(/*create=*/false)); in doThreadShutdownNotification()