Bläddra i källkod

shader_jit_x64: Free memory that's no longer needed after compilation.

bunnei 10 år sedan
förälder
incheckning
847fb951e2
1 ändrade filer med 6 tillägg och 0 borttagningar
  1. 6 0
      src/video_core/shader/shader_jit_x64.cpp

+ 6 - 0
src/video_core/shader/shader_jit_x64.cpp

@@ -845,6 +845,12 @@ void JitCompiler::Compile() {
         SetJumpTarget(branch.first, code_ptr[branch.second]);
     }
 
+    // Free memory that's no longer needed
+    return_offsets.clear();
+    return_offsets.shrink_to_fit();
+    fixup_branches.clear();
+    fixup_branches.shrink_to_fit();
+
     uintptr_t size = reinterpret_cast<uintptr_t>(GetCodePtr()) - reinterpret_cast<uintptr_t>(program);
     ASSERT_MSG(size <= MAX_SHADER_SIZE, "Compiled a shader that exceeds the allocated size!");