1
0
Fork 0
forked from suyu/suyu
suyu/src/video_core
ReinUsesLisp fe931ac976 {maxwell_3d,buffer_cache}: Implement memory barriers using 3D registers
Drop MemoryBarrier from the buffer cache and use Maxwell3D's register
WaitForIdle.

To implement this on OpenGL we just call glMemoryBarrier with the
necessary bits.

Vulkan lacks this synchronization primitive, so we set an event and
immediately wait for it. This is not a pretty solution, but it's what
Vulkan can do without submitting the current command buffer to the queue
(which ends up being more expensive on the CPU).
2020-04-28 02:18:12 -03:00
..
buffer_cache {maxwell_3d,buffer_cache}: Implement memory barriers using 3D registers 2020-04-28 02:18:12 -03:00
engines {maxwell_3d,buffer_cache}: Implement memory barriers using 3D registers 2020-04-28 02:18:12 -03:00
renderer_opengl {maxwell_3d,buffer_cache}: Implement memory barriers using 3D registers 2020-04-28 02:18:12 -03:00
renderer_vulkan {maxwell_3d,buffer_cache}: Implement memory barriers using 3D registers 2020-04-28 02:18:12 -03:00
shader Merge pull request #3734 from ReinUsesLisp/half-float-mods 2020-04-25 00:41:43 -04:00
texture_cache Address Feedback. 2020-04-22 11:36:27 -04:00
textures General: Resolve warnings related to missing declarations 2020-04-16 23:43:34 -04:00
CMakeLists.txt Merge pull request #3677 from FernandoS27/better-sync 2020-04-22 22:09:38 -04:00
dirty_flags.cpp DirtyFlags: relax need to set render_targets as dirty 2020-03-14 11:47:33 -04:00
dirty_flags.h DirtyFlags: relax need to set render_targets as dirty 2020-03-14 11:47:33 -04:00
dma_pusher.cpp DMAPusher: Propagate multimethod writes into the engines. 2020-04-23 08:52:55 -04:00
dma_pusher.h DMAPusher: Propagate multimethod writes into the engines. 2020-04-23 08:52:55 -04:00
fence_manager.h Address Feedback. 2020-04-22 11:36:27 -04:00
gpu.cpp Clang Format. 2020-04-23 08:52:58 -04:00
gpu.h Clang Format. 2020-04-23 08:52:58 -04:00
gpu_asynch.cpp OpenGL: Implement Fencing backend. 2020-04-22 11:36:10 -04:00
gpu_asynch.h OpenGL: Implement Fencing backend. 2020-04-22 11:36:10 -04:00
gpu_synch.cpp GPU: Setup Flush/Invalidate to use VAddr instead of CacheAddr 2020-04-06 09:21:46 -04:00
gpu_synch.h GPU: Setup Flush/Invalidate to use VAddr instead of CacheAddr 2020-04-06 09:21:46 -04:00
gpu_thread.cpp Async GPU: Correct flushing behavior to be similar to old async GPU behavior. 2020-04-22 11:36:26 -04:00
gpu_thread.h GPU: Implement Flush Requests for Async mode. 2020-04-22 11:36:17 -04:00
guest_driver.cpp gl_shader_cache: Rework shader cache and remove post-specializations 2020-03-09 18:40:06 -03:00
guest_driver.h gl_shader_cache: Rework shader cache and remove post-specializations 2020-03-09 18:40:06 -03:00
macro_interpreter.cpp apply replay logic to all writes. remove replay from MacroInterpreter::Send (@fincs) 2020-03-22 22:25:44 +07:00
macro_interpreter.h video_core/macro_interpreter: Make definitions of most private enums/unions hidden 2019-10-17 17:55:46 -04:00
memory_manager.cpp kernel: memory: Improve implementation of device shared memory. (#3707) 2020-04-23 11:37:12 -04:00
memory_manager.h video_core: memory_manager: Updates for Common::PageTable changes. 2020-04-17 00:59:34 -04:00
morton.cpp video_core: Implement RGBA16_SNORM 2020-03-12 21:42:33 -03:00
morton.h renderer_opengl: Use block linear swizzling for CPU framebuffers 2019-08-21 02:17:14 -03:00
query_cache.h Address Feedback. 2020-04-22 11:36:24 -04:00
rasterizer_accelerated.cpp core: memory: Move to Core::Memory namespace. 2020-04-17 00:59:28 -04:00
rasterizer_accelerated.h core: memory: Move to Core::Memory namespace. 2020-04-17 00:59:28 -04:00
rasterizer_cache.cpp rasterizer_cache: Add missing virtual destructor to RasterizerCacheObject 2018-11-08 00:31:39 -05:00
rasterizer_cache.h Shader/Pipeline Cache: Use VAddr instead of physical memory for addressing. 2020-04-06 09:23:07 -04:00
rasterizer_interface.h {maxwell_3d,buffer_cache}: Implement memory barriers using 3D registers 2020-04-28 02:18:12 -03:00
renderer_base.cpp video_core/engines: Remove unnecessary includes 2019-03-05 20:35:32 -05:00
renderer_base.h Frontend/GPU: Refactor context management 2020-03-24 21:03:42 -06:00
sampler_cache.cpp video_core: Abstract vk_sampler_cache into a templated class 2019-04-02 15:54:11 -03:00
sampler_cache.h video_core: Abstract vk_sampler_cache into a templated class 2019-04-02 15:54:11 -03:00
surface.cpp video_core: Implement RGBA16_SNORM 2020-03-12 21:42:33 -03:00
surface.h video_core: Use native ASTC when available 2020-04-01 01:14:04 -03:00
video_core.cpp Address review and fix broken yuzu-tester build 2020-03-25 23:32:42 -06:00
video_core.h Frontend/GPU: Refactor context management 2020-03-24 21:03:42 -06:00