diff options
| -rw-r--r-- | src/video_core/shader/shader_jit_x64.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/video_core/shader/shader_jit_x64.cpp b/src/video_core/shader/shader_jit_x64.cpp index e32a4e720..773542283 100644 --- a/src/video_core/shader/shader_jit_x64.cpp +++ b/src/video_core/shader/shader_jit_x64.cpp | |||
| @@ -845,6 +845,12 @@ void JitCompiler::Compile() { | |||
| 845 | SetJumpTarget(branch.first, code_ptr[branch.second]); | 845 | SetJumpTarget(branch.first, code_ptr[branch.second]); |
| 846 | } | 846 | } |
| 847 | 847 | ||
| 848 | // Free memory that's no longer needed | ||
| 849 | return_offsets.clear(); | ||
| 850 | return_offsets.shrink_to_fit(); | ||
| 851 | fixup_branches.clear(); | ||
| 852 | fixup_branches.shrink_to_fit(); | ||
| 853 | |||
| 848 | uintptr_t size = reinterpret_cast<uintptr_t>(GetCodePtr()) - reinterpret_cast<uintptr_t>(program); | 854 | uintptr_t size = reinterpret_cast<uintptr_t>(GetCodePtr()) - reinterpret_cast<uintptr_t>(program); |
| 849 | ASSERT_MSG(size <= MAX_SHADER_SIZE, "Compiled a shader that exceeds the allocated size!"); | 855 | ASSERT_MSG(size <= MAX_SHADER_SIZE, "Compiled a shader that exceeds the allocated size!"); |
| 850 | 856 | ||