2
1
Fork 0
mirror of https://github.com/yuzu-emu/yuzu.git synced 2024-07-04 23:31:19 +01:00
yuzu/src/video_core
ReinUsesLisp d8827b07b5 gl_shader_decompiler: Use an if based cbuf indexing for broken drivers
The following code is broken on AMD's proprietary GLSL compiler:
```glsl
uint idx = ...;
vec4 values = ...;
float some_value = values[idx & 3];
```

It index the wrong components, to fix this the following pessimized code
is emitted when that bug is present:
```glsl
uint idx = ...;
vec4 values = ...;
float some_value;
if ((idx & 3) == 0) some_value = values.x;
if ((idx & 3) == 1) some_value = values.y;
if ((idx & 3) == 2) some_value = values.z;
if ((idx & 3) == 3) some_value = values.w;
```
2019-05-24 02:47:56 -03:00
..
debug_utils general: Use deducation guides for std::lock_guard and std::unique_lock 2019-04-01 12:53:47 -04:00
engines Merge pull request #2441 from ReinUsesLisp/al2p 2019-05-19 14:02:58 -04:00
renderer_opengl gl_shader_decompiler: Use an if based cbuf indexing for broken drivers 2019-05-24 02:47:56 -03:00
renderer_vulkan Merge pull request #2441 from ReinUsesLisp/al2p 2019-05-19 14:02:58 -04:00
shader shader/shader_ir: Make Comment() take a std::string by value 2019-05-23 03:01:55 -03:00
textures video_core/textures/astc: Remove unused variables 2019-05-09 18:33:36 -04:00
CMakeLists.txt Merge pull request #2429 from FernandoS27/compute 2019-05-09 13:19:22 -04:00
dma_pusher.cpp Dma_pusher: ASSERT on empty command_list 2019-05-19 10:48:31 -04:00
dma_pusher.h gpu: Rewrite virtual memory manager using PageTable. 2019-03-20 22:36:02 -04:00
gpu.cpp Introduce skeleton of the GPU Compute Engine. 2019-04-22 19:05:43 -04:00
gpu.h video_core/gpu: Create threads separately from initialization 2019-04-11 22:11:40 -04:00
gpu_asynch.cpp video_core/gpu: Create threads separately from initialization 2019-04-11 22:11:40 -04:00
gpu_asynch.h video_core/gpu: Create threads separately from initialization 2019-04-11 22:11:40 -04:00
gpu_synch.cpp video_core/gpu: Create threads separately from initialization 2019-04-11 22:11:40 -04:00
gpu_synch.h video_core/gpu: Create threads separately from initialization 2019-04-11 22:11:40 -04:00
gpu_thread.cpp yuzu: Remove explicit types from locks where applicable 2019-05-14 08:18:48 -04:00
gpu_thread.h Merge pull request #2467 from lioncash/move 2019-05-19 15:20:37 +01:00
macro_interpreter.cpp Revert #2466 2019-05-19 16:04:44 -04:00
macro_interpreter.h macro_interpreter: Implement AddWithCarry and SubtractWithBorrow. 2018-11-22 00:58:00 -05:00
memory_manager.cpp video_core/memory_manager: Mark IsBlockContinuous() as a const member function 2019-05-09 19:14:36 -04:00
memory_manager.h video_core/memory_manager: Mark IsBlockContinuous() as a const member function 2019-05-09 19:14:36 -04:00
morton.cpp video_core: Refactor to use MemoryManager interface for all memory access. 2019-03-16 00:38:48 -04:00
morton.h video_core: Refactor to use MemoryManager interface for all memory access. 2019-03-16 00:38:48 -04:00
rasterizer_cache.cpp rasterizer_cache: Add missing virtual destructor to RasterizerCacheObject 2018-11-08 00:31:39 -05:00
rasterizer_cache.h Merge pull request #2452 from FernandoS27/raster-cache-fix 2019-05-19 16:00:44 +01:00
rasterizer_interface.h gpu: Rewrite virtual memory manager using PageTable. 2019-03-20 22:36:02 -04:00
renderer_base.cpp video_core/engines: Remove unnecessary includes 2019-03-05 20:35:32 -05:00
renderer_base.h yuzu, video_core: Screenshot functionality 2018-12-18 22:54:41 +01: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: Silent -Wswitch warnings 2019-04-18 15:54:39 -03:00
surface.h video_core: Remove unused Fill surface type 2019-02-01 02:57:47 -03:00
texture_cache.cpp video_core: Implement API agnostic view based texture cache 2019-03-22 13:34:04 -03:00
texture_cache.h video_core: Implement API agnostic view based texture cache 2019-03-22 13:34:04 -03:00
video_core.cpp video_core/gpu: Create threads separately from initialization 2019-04-11 22:11:40 -04:00
video_core.h video_core/gpu: Create threads separately from initialization 2019-04-11 22:11:40 -04:00