void NRT_MemSys_insert_meminfo(MemInfo *newnode) { if (NULL == newnode) { newnode = meminfo_malloc(); } else { assert(newnode->payload.refct == 0 && "RefCt must be 0"); } NRT_Debug(nrt_debug_print("NRT_MemSys_insert_meminfo newnode=%p\n", newnode)); memset(newnode, 0, sizeof(MemInfo)); /* to catch bugs; not required */ nrt_push_meminfo_list(&TheMSys.mi_freelist, newnode); }
void NRT_MemInfo_defer_dtor(MemInfo *mi) { NRT_Debug(nrt_debug_print("NRT_MemInfo_defer_dtor\n")); nrt_push_meminfo_list(&TheMSys.mi_deferlist, mi); }