David Marcec
dd4a02d15c
video_core: Remove redundant pixel format type
...
We already get the format type before converting shadow formats and during shadow formats.
2020-07-21 12:44:32 +10:00
ReinUsesLisp
a8a2526128
gl_arb_decompiler: Use NV_shader_buffer_{load,store} on assembly shaders
...
NV_shader_buffer_{load,store} is a 2010 extension that allows GL applications
to use what in Vulkan is known as physical pointers, this is basically C
pointers. On GLASM these is exposed through the LOAD/STORE/ATOM
instructions.
Up until now, assembly shaders were using NV_shader_storage_buffer_object.
These work fine, but have a (probably unintended) limitation that forces
us to have the limit of a single stage for all shader stages. In contrast,
with NV_shader_buffer_{load,store} we can pass GPU addresses to the
shader through local parameters (GLASM equivalent uniform constants, or
push constants on Vulkan). Local parameters have the advantage of being
per stage, allowing us to generate code without worrying about binding
overlaps.
2020-07-18 01:59:57 -03:00
bunnei
90cbcaa44a
Merge pull request #4273 from ogniK5377/async-shaders-prod
...
video_core: Add asynchronous shader decompilation and compilation
2020-07-18 00:48:27 -04:00
David Marcec
967307d3be
Fix style issues
2020-07-18 14:24:32 +10:00
bunnei
821d295f24
Merge pull request #4364 from lioncash/desig5
...
vulkan: Make use of designated initializers where applicable
2020-07-18 00:12:43 -04:00
ReinUsesLisp
81c8f92f2e
vk_device: Fix build error on old MSVC versions
...
Designated initializers on old MSVC versions fail to build when they
take the address of a constant.
2020-07-17 20:27:53 -03:00
bunnei
19c6bf72db
Merge pull request #4322 from ReinUsesLisp/fix-dynstate
...
vk_state_tracker: Fix dirty flags for stencil_enable on VK_EXT_extended_dynamic_state
2020-07-17 09:50:45 -04:00
LC
47956a3bbc
Merge pull request #4369 from lioncash/hle-macro
...
macro_hle: Remove unnecessary std::make_pair calls
2020-07-17 05:20:41 -04:00
LC
9d3cbf6a90
Merge pull request #4340 from lioncash/remove
...
shader_cache: Make use of std::erase_if
2020-07-17 05:19:20 -04:00
David Marcec
85b591f6f0
Remove duplicate config
2020-07-17 14:26:18 +10:00
David Marcec
f48187449e
Use conditional var
2020-07-17 14:26:17 +10:00
David Marcec
2ba195aa0d
Drop max workers from 8->2 for testing
2020-07-17 14:26:15 +10:00
David Marcec
85d7a8f466
Rebase for per game settings
2020-07-17 14:26:14 +10:00
David Marcec
468bd9c1b0
async shaders
2020-07-17 14:24:57 +10:00
Lioncash
c0650cd82c
macro_hle: Remove unnecessary static keywords
...
These functions are already in an anonymous namespace which makes the
functions internally linked.
2020-07-16 23:17:17 -04:00
David
9cca0c2f83
Merge pull request #4368 from lioncash/macro
...
macro: Resolve missing parameter in doxygen comment
2020-07-17 13:13:22 +10:00
David
3ce4edba64
Merge pull request #4370 from lioncash/simplify
...
macro_hle: Simplify shift expression in HLE_771BB18C62444DA0()
2020-07-17 13:13:05 +10:00
Lioncash
be6b7591d9
macro_hle: Simplify shift expression in HLE_771BB18C62444DA0()
...
Given the expression involves a 32-bit value, this simplifies down to
just: 0x3ffffff. This is likely a remnant from testing that was never
cleaned up.
Resolves a -Wshift-overflow warning.
2020-07-16 22:16:11 -04:00
Lioncash
cc935d997b
macro_hle: Remove unnecessary std::make_pair calls
...
The purpose of make_pair is generally to deduce the types within the
pair without explicitly specifying the types, so these usages were
generally unnecessary, particularly when the type is enforced by the
array declaration.
2020-07-16 21:59:25 -04:00
Lioncash
502dbfb9eb
macro: Resolve missing parameter in doxygen comment
...
Resolves a -Wdocumentation warning.
2020-07-16 21:54:42 -04:00
Lioncash
7785123b1c
wrapper: Make use of designated initializers where applicable
2020-07-16 20:01:01 -04:00
Lioncash
01da386617
vk_texture_cache: Make use of designated initializers where applicable
2020-07-16 19:52:38 -04:00
Lioncash
169759e069
vk_texture_cache: Amend mismatched access masks and indices in UploadBuffer
...
Discovered while converting relevant parts of the codebase over to
designated initializers.
2020-07-16 19:45:46 -04:00
Lioncash
08d36afd40
vk_swapchain: Make use of designated initializers where applicable
2020-07-16 19:27:02 -04:00
Lioncash
3c060503bc
vk_stream_buffer: Make use of designated initializers where applicable
2020-07-16 19:22:11 -04:00
Lioncash
70147e913f
vk_staging_buffer_pool: Make use of designated initializers where applicable
2020-07-16 19:22:03 -04:00
Lioncash
2025f847bb
vk_shader_util: Make use of designated initializers where applicable
2020-07-16 19:17:41 -04:00
Lioncash
97e7663004
vk_scheduler: Make use of designated initializers where applicable
2020-07-16 19:11:43 -04:00
Lioncash
fd7af52ec3
vk_sampler_cache: Make use of designated initializers where applicable
2020-07-16 19:06:40 -04:00
Lioncash
772b6e4d28
vk_resource_manager: Make use of designated initializers where applicable
2020-07-16 19:02:35 -04:00
Lioncash
8ebd6a21c5
vk_renderpass_cache: Make use of designated initializers where applicable
2020-07-16 18:57:23 -04:00
Lioncash
01f297f2e0
vk_rasterizer: Make use of designated initializers where applicable
2020-07-16 18:49:42 -04:00
Lioncash
c07b0ffe47
vk_query_cache: Make use of designated initializers where applicable
2020-07-16 18:34:04 -04:00
Lioncash
d43e923990
vk_pipeline_cache: Make use of designated initializers where applicable
2020-07-16 18:32:29 -04:00
Lioncash
7d5f93832c
vk_memory_manager: Make use of designated initializers where applicable
2020-07-16 18:26:30 -04:00
Lioncash
75c00c3cb0
vk_image: Make use of designated initializers where applicable
2020-07-16 18:24:26 -04:00
Lioncash
6d165481ad
vk_descriptor_pool: Make use of designated initializers where applicable
2020-07-16 18:19:45 -04:00
Lioncash
fb563e75e9
vk_graphics_pipeline: Resolve narrowing warnings
...
For whatever reason, VK_TRUE and VK_FALSE aren't defined as having a
VkBool32 type, so we need to cast to it explicitly.
2020-07-16 18:13:49 -04:00
Lioncash
5330ca396d
vk_compute_pipeline: Make use of designated initializers where applicable
2020-07-16 17:32:12 -04:00
Lioncash
757ddd8158
vk_compute_pass: Make use of designated initializers where applicable
...
Note: Some barriers can't be converted over yet, as they ICE MSVC.
2020-07-16 17:23:56 -04:00
Lioncash
a66a0a6a53
vk_buffer_cache: Make use of designated initializers where applicable
...
Note: An array within CopyFrom() cannot be converted over yet, as it
ICEs MSVC when converted over.
2020-07-16 16:59:39 -04:00
Rodrigo Locatti
be68ee88c2
Merge pull request #4333 from lioncash/desig3
...
vk_graphics_pipeline: Make use of designated initializers where applicable
2020-07-16 17:41:45 -03:00
Rodrigo Locatti
b6d73ec9c2
Merge pull request #4332 from lioncash/vkdev
...
vk_device: Make use of designated initializers where applicable
2020-07-16 17:41:20 -03:00
bunnei
98b36625fa
Merge pull request #4321 from lioncash/desig
...
vk_blit_screen: Make use of designated initializers where applicable
2020-07-16 14:55:36 -04:00
Lioncash
969100d41a
shader_cache: Make use of std::erase_if
...
Now that we use C++20, we can also make use of std::erase_if instead of
needing to do the erase-remove idiom.
2020-07-14 15:49:15 -04:00
bunnei
666b37ad56
Merge pull request #4242 from ReinUsesLisp/maxwell-dma
...
maxwell_dma: Match official doc and support pitch->voxel copies
2020-07-14 14:04:16 -04:00
Lioncash
0f8b977663
vk_device: Make use of designated initializers where applicable
...
Avoids redundant repetitions of variable names, and allows assignment
all in one statement.
2020-07-13 22:24:01 -04:00
Lioncash
0475a167f8
vk_graphics_pipeline: Make use of designated initializers where applicable
...
Avoids redundant variable name repetitions.
2020-07-13 21:07:56 -04:00
Lioncash
db6fbd5894
vk_blit_screen: Make use of designated initializers where applicable
...
Now that we make use of C++20, we can use designated initializers to
make things a little nicer to read.
2020-07-12 19:45:30 -04:00
ReinUsesLisp
0fe09df386
vk_state_tracker: Fix dirty flags for stencil_enable on VK_EXT_extended_dynamic_state
...
Fixes a regression on any game using stencil on devices with
VK_EXT_extended_dynamic_state.
2020-07-12 20:43:42 -03:00