diff options
| author | shuffle2 <godisgovernment@gmail.com> | 2014-12-10 12:35:36 -0800 |
|---|---|---|
| committer | shuffle2 <godisgovernment@gmail.com> | 2014-12-10 12:35:36 -0800 |
| commit | ef34761a5134c2f9e3ca672eb6750846b0d2f2fa (patch) | |
| tree | f2ead9d1ad2801507aa5b4d900a68350ea2d0166 /Source/Core/VideoCommon/Fifo.cpp | |
| parent | 4c139ca7cc816489feffc0b6ee0a3f1a6d85060e (diff) | |
| parent | 3effd08843efae54cf81b2d72cbb575d79b01346 (diff) | |
Merge pull request #1676 from FioraAeterna/allocatefifo
FIFO: allocate slightly more for SIMD vertex loader overreads
Diffstat (limited to 'Source/Core/VideoCommon/Fifo.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/Fifo.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/Source/Core/VideoCommon/Fifo.cpp b/Source/Core/VideoCommon/Fifo.cpp index 496ac0a851..9da3583a9d 100644 --- a/Source/Core/VideoCommon/Fifo.cpp +++ b/Source/Core/VideoCommon/Fifo.cpp @@ -94,7 +94,8 @@ void Fifo_PauseAndLock(bool doLock, bool unpauseOnUnlock) void Fifo_Init() { - s_video_buffer = (u8*)AllocateMemoryPages(FIFO_SIZE); + // Padded so that SIMD overreads in the vertex loader are safe + s_video_buffer = (u8*)AllocateMemoryPages(FIFO_SIZE + 4); ResetVideoBuffer(); GpuRunningState = false; Common::AtomicStore(CommandProcessor::VITicks, CommandProcessor::m_cpClockOrigin); @@ -103,7 +104,7 @@ void Fifo_Init() void Fifo_Shutdown() { if (GpuRunningState) PanicAlert("Fifo shutting down while active"); - FreeMemoryPages(s_video_buffer, FIFO_SIZE); + FreeMemoryPages(s_video_buffer, FIFO_SIZE + 4); s_video_buffer = nullptr; s_video_buffer_write_ptr = nullptr; s_video_buffer_pp_read_ptr = nullptr; |
