Lioncash
29ee53cb35
vulkan: Silence more -Wmissing-field-initializer warnings
5 years ago
Lioncash
08e30e0240
yuzu: Resolve C++20 deprecation warnings related to lambda captures
C++20 deprecates capturing the this pointer via the '=' capture.
Instead, we replace it or extend the capture specification.
5 years ago
Morph
b93b5093a9
renderer_opengl: Use 1/4 of all threads for async shader compilation
5 years ago
Billy Laws
0d1a089177
video_core/gpu: Correct the size of the puller registers
The puller register array is made up of u32s however the `NUM_REGS` value is the size in bytes, so switch it to avoid making the struct unnecessary large. Also fix a small typo in a comment.
6 years ago
bunnei
991aca142e
hle: nvdrv: Rewrite of GPU memory management.
6 years ago
Lioncash
0ab49b988e
vulkan: Resolve -Wmissing-field-initializer warnings
6 years ago
Lioncash
3245700495
surface_params: Make use of designated initializers where applicable
Provides a convenient way to avoid unnecessary zero initializing.
6 years ago
Lioncash
4ec316a7b2
surface_params: Remove redundant assignment
This is a redundant assignment that can be removed.
6 years ago
Lioncash
9758e39655
surface_params: Replace questionable usages of the comma operator with semicolons
These are bugs waiting to happen.
6 years ago
Lioncash
074f382a39
video_core: Remove unused variables
Silences several compiler warnings about unused variables.
6 years ago
Lioncash
09172c0347
vk_rasterizer: Remove unused variable in Clear()
The relevant values are already assigned further down in the lambda, so
this can be removed entirely.
6 years ago
Lioncash
cff696cfbb
compatible_formats: Add missing header guard
Prevents potential inclusion issues from occurring.
6 years ago
Lioncash
991e4dc0b3
video_core: Allow copy elision to take place where applicable
Removes const from some variables that are returned from functions, as
this allows the move assignment/constructors to execute for them.
6 years ago
David Marcec
f3ef6e4fb1
video_core: Remove redundant pixel format type
We already get the format type before converting shadow formats and during shadow formats.
6 years ago
Lioncash
1842c5df37
buffer_cache: Eliminate redundant map lookup in MarkRegionAsWritten()
We can make use of emplace()'s return value to determine whether or not
we need to perform an increment.
emplace() performs no insertion if an element already exist, so this can
eliminate a find() call.
6 years ago
ReinUsesLisp
76bd3a8843
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.
6 years ago
David Marcec
578f84cdf4
Fix style issues
6 years ago
ReinUsesLisp
1e30bdee64
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.
6 years ago
David Marcec
bab9531cc6
Remove duplicate config
6 years ago
David Marcec
73118715ca
Use conditional var
6 years ago
David Marcec
95b545df7c
Drop max workers from 8->2 for testing
6 years ago
David Marcec
74d8c9e0dd
Rebase for per game settings
6 years ago
David Marcec
a4e811af27
async shaders
6 years ago
Lioncash
62ad951689
macro_hle: Remove unnecessary static keywords
These functions are already in an anonymous namespace which makes the
functions internally linked.
6 years ago
Lioncash
68f92e780d
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.
6 years ago
Lioncash
a18530237c
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.
6 years ago
Lioncash
38c36545d5
macro: Resolve missing parameter in doxygen comment
Resolves a -Wdocumentation warning.
6 years ago
Lioncash
daa19f1894
wrapper: Make use of designated initializers where applicable
6 years ago
Lioncash
28c7c4e06c
vk_texture_cache: Make use of designated initializers where applicable
6 years ago
Lioncash
6ae380626f
vk_texture_cache: Amend mismatched access masks and indices in UploadBuffer
Discovered while converting relevant parts of the codebase over to
designated initializers.
6 years ago
Lioncash
f683a6e7e0
vk_swapchain: Make use of designated initializers where applicable
6 years ago
Lioncash
98e5d57908
vk_stream_buffer: Make use of designated initializers where applicable
6 years ago
Lioncash
947749d35d
vk_staging_buffer_pool: Make use of designated initializers where applicable
6 years ago
Lioncash
4694ea8a99
vk_shader_util: Make use of designated initializers where applicable
6 years ago
Lioncash
683403d1cf
vk_scheduler: Make use of designated initializers where applicable
6 years ago
Lioncash
a6f0caeeb9
vk_sampler_cache: Make use of designated initializers where applicable
6 years ago
Lioncash
faba1ede49
vk_resource_manager: Make use of designated initializers where applicable
6 years ago
Lioncash
96a6d95c9c
vk_renderpass_cache: Make use of designated initializers where applicable
6 years ago
Lioncash
71a085c84f
vk_rasterizer: Make use of designated initializers where applicable
6 years ago
Lioncash
42dadb45ac
vk_query_cache: Make use of designated initializers where applicable
6 years ago
Lioncash
fe2c963646
vk_pipeline_cache: Make use of designated initializers where applicable
6 years ago
Lioncash
8ffbe8e7c9
vk_memory_manager: Make use of designated initializers where applicable
6 years ago
Lioncash
6b6af38615
vk_image: Make use of designated initializers where applicable
6 years ago
Lioncash
f734fa9d78
vk_descriptor_pool: Make use of designated initializers where applicable
6 years ago
Lioncash
cc47d8b0ce
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.
6 years ago
Lioncash
0b4ecb96d4
vk_compute_pipeline: Make use of designated initializers where applicable
6 years ago
Lioncash
7818dcd562
vk_compute_pass: Make use of designated initializers where applicable
Note: Some barriers can't be converted over yet, as they ICE MSVC.
6 years ago
Lioncash
5dc1c68a04
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.
6 years ago
ReinUsesLisp
c5391180e6
decode/other: Implement S2R.LaneId
This maps to host's thread id.
- Fixes graphical issues on Paper Mario.
6 years ago
ReinUsesLisp
021aca9492
gl_arb_decompiler: Execute BAR even when inside control flow
Unlike GLSL, GLASM allows us to call BAR inside control flow.
- Fixes graphical artifacts in Paper Mario.
6 years ago