Fernando Sahmkow
cf3a7c0761
shader_ir: Correct parsing of scheduling instructions and correct sizing
7 years ago
Fernando Sahmkow
0164b108ab
shader_ir: Correct max sizing
7 years ago
Fernando Sahmkow
be5e508cce
shader_ir: Remove unnecessary constructors and use optional for ScanFlow result
7 years ago
Fernando Sahmkow
d996ab2d77
shader_ir: Corrections, documenting and asserting control_flow
7 years ago
Fernando Sahmkow
82efa35683
shader_ir: Unify blocks in decompiled shaders.
7 years ago
Fernando Sahmkow
d7b3d3a823
shader_ir: Decompile Flow Stack
7 years ago
Fernando Sahmkow
92be9d01aa
shader_ir: propagate shader size to the IR
7 years ago
Fernando Sahmkow
d5d4cc30ec
shader_ir: Implement BRX & BRA.CC
7 years ago
Fernando Sahmkow
fc89b55635
shader_ir: Remove the old scanner.
7 years ago
Fernando Sahmkow
48e75bade4
shader_ir: Implement a new shader scanner
7 years ago
Lioncash
5bbae92473
gl_rasterizer: Amend documentation comment for ConfigureFramebuffers()
must_reconfigure isn't a parameter for this function any more, so it can
be replaced with current_state.
While we're at it, we can make the parameters of the declaration match
the same name as the ones in the definition.
7 years ago
Michael Scire
4e57de9e0b
Prevent merging of device mapped memory blocks.
This sets the DeviceMapped attribute for GPU-mapped memory blocks,
and prevents merging device mapped blocks. This prevents memory
mapped from the gpu from having its backing address changed by
block coalesce.
7 years ago
ReinUsesLisp
a650406899
gl_shader_decompiler: Implement gl_ViewportIndex and gl_Layer in vertex shaders
This commit implements gl_ViewportIndex and gl_Layer in vertex and
geometry shaders. In the case it's used in a vertex shader, it requires
ARB_shader_viewport_layer_array. This extension is available on AMD and
Nvidia devices (mesa and proprietary drivers), but not available on
Intel on any platform. At the moment of writing this description I don't
know if this is a hardware limitation or a driver limitation.
In the case that ARB_shader_viewport_layer_array is not available,
writes to these registers on a vertex shader are ignored, with the
appropriate logging.
7 years ago
Tobias
d15f1f4e9e
Delete decode_integer_set.cpp
7 years ago
ReinUsesLisp
48d485d6df
shader/texture: Add F16 support for TLDS
7 years ago
Lioncash
873b1cee22
vk_sampler_cache: Remove unused includes
These are no longer used within this header, so they can be removed.
7 years ago
Lioncash
85a4cb423d
video_core: Add missing override specifiers
7 years ago
ReinUsesLisp
a7192b9512
vk_scheduler: Drop execution context in favor of views
Instead of passing by copy an execution context through out the whole
Vulkan call hierarchy, use a command buffer view and fence view
approach.
This internally dereferences the command buffer or fence forcing the
user to be unable to use an outdated version of it on normal usage.
It is still possible to keep store an outdated if it is casted to
VKFence& or vk::CommandBuffer.
While changing this file, add an extra parameter for Flush and Finish to
allow releasing the fence from this calls.
7 years ago
ReinUsesLisp
56d7606d2c
buffer_cache: Avoid [[nodiscard]] to make clang-format happy
7 years ago
ReinUsesLisp
09c775cb05
buffer_cache: Try to fix MinGW build
7 years ago
ReinUsesLisp
cb2a4bffd0
gl_rasterizer: Fix nullptr dereference on disabled buffers
7 years ago
ReinUsesLisp
e6d37e10db
gl_rasterizer: Minor style changes
7 years ago
ReinUsesLisp
3a1fafb474
gl_rasterizer: Fix vertex and index data invalidations
7 years ago
ReinUsesLisp
32b4a2e093
gl_buffer_cache: Implement with generic buffer cache
7 years ago
ReinUsesLisp
d3ae5ce80c
buffer_cache: Implement a generic buffer cache
Implements a templated class with a similar approach to our current
generic texture cache. It is designed to be compatible with Vulkan and
OpenGL,
7 years ago
ReinUsesLisp
b5fe7c096f
gl_buffer_cache: Remove global system getters
7 years ago
ReinUsesLisp
e9d8c0bdcf
gl_device: Query SSBO alignment
7 years ago
ReinUsesLisp
9499333493
gl_buffer_cache: Implement flushing
7 years ago
ReinUsesLisp
5b82a1bea0
gl_rasterizer: Drop gl_global_cache in favor of gl_buffer_cache
7 years ago
ReinUsesLisp
a5cfe7d0b1
gl_buffer_cache: Rework to support internalized buffers
7 years ago
ReinUsesLisp
1b416d78b9
gl_buffer_cache: Store in CachedBufferEntry the used buffer handle
7 years ago
ReinUsesLisp
450b4911ed
gl_buffer_cache: Return used buffer from Upload function
7 years ago
ReinUsesLisp
388d7506dd
gl_rasterizer: Add some commentaries
7 years ago
ReinUsesLisp
39b1990db1
gl_rasterizer: Make DrawParameters rasterizer instance const
7 years ago
ReinUsesLisp
2dfe9aa51e
gl_rasterizer: Move index buffer uploading to its own method
7 years ago
Fernando Sahmkow
b8b874005f
NVServices: Styling, define constructors as explicit and corrections
7 years ago
Fernando Sahmkow
a156731a9c
NVFlinger: Correct GCC compile error
7 years ago
Fernando Sahmkow
9db53b51b6
NVServices: Make NVEvents Automatic according to documentation.
7 years ago
Fernando Sahmkow
604dc3f59b
GPU: Correct Interrupts to interrupt on syncpt/value instead of event, mirroring hardware
7 years ago
Fernando Sahmkow
78c4536960
gpu_asynch: Simplify synchronization to a simpler consumer->producer scheme.
7 years ago
Fernando Sahmkow
772d205e8f
nv_host_ctrl: Make Sync GPU variant always return synced result.
7 years ago
Fernando Sahmkow
b18365ed59
Async GPU: do invalidate as synced operation
Async GPU: Always invalidate synced.
7 years ago
Fernando Sahmkow
ff34715d92
Gpu: use an std mutex instead of a spin_lock to guard syncpoints
7 years ago
Fernando Sahmkow
095e6b1cd9
Gpu: Mark areas as protected.
7 years ago
Fernando Sahmkow
8c8e96b87c
nv_services: Stub CtrlEventSignal
7 years ago
Fernando Sahmkow
1fb8727a9a
Gpu: Implement Hardware Interrupt Manager and manage GPU interrupts
7 years ago
Fernando Sahmkow
779c115dbb
video_core: Implement GPU side Syncpoints
7 years ago
Fernando Sahmkow
c3c7215820
texture_cache: Address Feedback
7 years ago
Fernando Sahmkow
98de1132e7
texture_cache: Correct Texture Buffer Uploading
7 years ago
Zach Hilman
113e92bdd1
gl_shader_cache: Make CachedShader constructor private
Fixes missing review comments introduced.
7 years ago