void Shutdown() { u32 flags = 0; MemoryMap_Shutdown(g_views, kNumMemViews, flags, &arena); arena.ReleaseSpace(); MemBlock_Shutdown(); g_base = nullptr; g_exefs_code = nullptr; g_system_mem = nullptr; g_heap = nullptr; g_heap_linear = nullptr; g_vram = nullptr; g_shared_mem = nullptr; g_dsp_mem = nullptr; g_kernel_mem = nullptr; physical_bootrom = nullptr; uncached_bootrom = nullptr; physical_exefs_code = nullptr; physical_system_mem = nullptr; physical_fcram = nullptr; physical_heap_gsp = nullptr; physical_vram = nullptr; physical_shared_mem = nullptr; physical_dsp_mem = nullptr; physical_kernel_mem = nullptr; LOG_DEBUG(HW_Memory, "shutdown OK"); }
void Shutdown() { u32 flags = 0; MemoryMap_Shutdown(views, num_views, flags, &g_arena); g_arena.ReleaseSpace(); base = NULL; DEBUG_LOG(MEMMAP, "Memory system shut down."); }
void Shutdown() { u32 flags = 0; MemoryMap_Shutdown(g_views, kNumMemViews, flags, &g_arena); g_arena.ReleaseSpace(); g_base = NULL; NOTICE_LOG(MEMMAP, "shutdown OK"); }
void MemoryMap_Shutdown(u32 flags) { for (int i = 0; i < num_views; i++) { if (views[i].size == 0) continue; SKIP(flags, views[i].flags); if (*views[i].out_ptr) g_arena.ReleaseView(*views[i].out_ptr, views[i].size); *views[i].out_ptr = nullptr; } g_arena.ReleaseSpace(); #if PPSSPP_PLATFORM(UWP) VirtualFree(base, 0, MEM_RELEASE); #endif }
void MemoryMap_Shutdown(u32 flags) { #ifdef __SYMBIAN32__ memmap->Decommit(0, memmap->MaxSize()); memmap->Close(); delete memmap; #else for (int i = 0; i < num_views; i++) { if (views[i].size == 0) continue; SKIP(flags, views[i].flags); if (views[i].out_ptr_low && *views[i].out_ptr_low) g_arena.ReleaseView(*views[i].out_ptr_low, views[i].size); if (*views[i].out_ptr && (!views[i].out_ptr_low || *views[i].out_ptr != *views[i].out_ptr_low)) g_arena.ReleaseView(*views[i].out_ptr, views[i].size); *views[i].out_ptr = NULL; if (views[i].out_ptr_low) *views[i].out_ptr_low = NULL; } g_arena.ReleaseSpace(); #endif }