MCPcopy Create free account
hub / github.com/1a1a11a/libCacheSim / destroy_mspace

Function destroy_mspace

libCacheSim/dataStructure/sparsepp/spp_dlalloc.h:3699–3721  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3697}
3698
3699SPP_API size_t destroy_mspace(mspace msp)
3700{
3701 size_t freed = 0;
3702 mstate ms = (mstate)msp;
3703 if (ms->ok_magic())
3704 {
3705 msegmentptr sp = &ms->_seg;
3706 while (sp != 0)
3707 {
3708 char* base = sp->_base;
3709 size_t size = sp->_size;
3710 flag_t flag = sp->_sflags;
3711 (void)base; // placate people compiling -Wunused-variable
3712 sp = sp->_next;
3713 if ((flag & USE_MMAP_BIT) && !(flag & EXTERN_BIT) &&
3714 SPP_CALL_MUNMAP(base, size) == 0)
3715 freed += size;
3716 }
3717 }
3718 else
3719 SPP_USAGE_ERROR_ACTION(ms, ms);
3720 return freed;
3721}
3722
3723/* ---------------------------- mspace versions of malloc/calloc/free routines -------------------- */
3724SPP_API void* mspace_malloc(mspace msp, size_t bytes)

Callers 1

~MSpaceMethod · 0.85

Calls 1

ok_magicMethod · 0.80

Tested by

no test coverage detected