Lioncash
78ddcbe3ba
General: Tidy up clang-format warnings part 2
2020-08-13 14:19:08 -04:00
Morph
237d4bb1c5
gl_shader_cache: Use std::max() for determining num_workers
...
Does not allocate more threads than available in the host system for boot-time shader compilation and always allocates at least 1 thread if hardware_concurrency() returns 0.
2020-08-12 09:23:34 -04:00
ReinUsesLisp
9a83f8794b
textures/decoders: Fix block linear to pitch copies
...
There were two issues with block linear copies. First the swizzling was
wrong and this commit reimplements them.
The other issue was that these copies are generally used to download
render targets from the GPU and yuzu was not downloading them from
host GPU memory unless the extreme GPU accuracy setting was selected.
This commit enables cached memory reads for all accuracy levels.
- Fixes level thumbnails in Super Mario Maker 2.
2020-08-10 20:45:03 -03:00
bunnei
d17331ebbf
Merge pull request #4389 from ogniK5377/redundant-format-type
...
video_core: Remove redundant pixel format type
2020-08-07 09:33:58 -04:00
bunnei
09bd480eab
Merge pull request #4430 from bunnei/new-gpu-vmm
...
hle: nvdrv: Rewrite of GPU memory management.
2020-08-04 18:44:26 -04:00
bunnei
62a64fc33b
Merge pull request #4445 from Morph1984/async-threads
...
renderer_opengl: Use 1/4 of all threads for async shader compilation
2020-08-04 18:43:42 -04:00
bunnei
7cbb4227c7
Merge pull request #4469 from lioncash/missing
...
vk_texture_cache: Silence -Wmissing-field-initializer warnings
2020-08-04 06:59:51 -07:00
Lioncash
29ee53cb35
vulkan: Silence more -Wmissing-field-initializer warnings
2020-08-03 12:28:57 -04:00
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.
2020-08-03 11:54:04 -04:00
David
4d4f03d11c
Merge pull request #4392 from lioncash/guard
...
compatible_formats: Add missing header guard
2020-07-31 01:08:56 +10:00
bunnei
2441e2670e
Merge pull request #4396 from lioncash/comma
...
surface_params: Replace questionable usages of the comma operator with semicolons
2020-07-29 19:55:44 -04:00
Morph
b93b5093a9
renderer_opengl: Use 1/4 of all threads for async shader compilation
2020-07-28 05:08:27 -04:00
bunnei
f8370efc1b
Merge pull request #4419 from lioncash/initializer
...
vulkan: Resolve -Wmissing-field-initializer warnings
2020-07-27 15:52:03 -07:00
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.
2020-07-26 22:26:29 +01:00
bunnei
991aca142e
hle: nvdrv: Rewrite of GPU memory management.
2020-07-26 00:49:43 -04:00
Lioncash
0ab49b988e
vulkan: Resolve -Wmissing-field-initializer warnings
2020-07-25 03:50:18 -04:00
Lioncash
84e6115423
zstd_compression: Make use of std::span in interfaces
...
Allows condensing the data and size parameters into a single argument.
2020-07-25 03:11:56 -04:00
bunnei
b6ba7c5249
Merge pull request #4393 from lioncash/unused5
...
vk_rasterizer: Remove unused variable in Clear()
2020-07-24 20:33:58 -07:00
bunnei
ffbbadb29e
Merge pull request #4388 from lioncash/written
...
buffer_cache: Eliminate redundant map lookup in MarkRegionAsWritten()
2020-07-24 11:29:37 -07:00
bunnei
82278bde7e
Merge pull request #4391 from lioncash/nrvo
...
video_core: Allow copy elision to take place where applicable
2020-07-24 06:33:09 -07:00
bunnei
f0fff26e67
Merge pull request #4394 from lioncash/unused6
...
video_core: Remove unused variables
2020-07-23 19:54:59 -07:00
Rodrigo Locatti
beafe0508a
Merge pull request #4359 from ReinUsesLisp/clamp-shared
...
renderer_{opengl,vulkan}: Clamp shared memory to host's limit
2020-07-21 04:51:05 -03:00
Rodrigo Locatti
05ffdb1383
Merge pull request #4360 from ReinUsesLisp/glasm-bar
...
gl_arb_decompiler: Execute BAR even when inside control flow
2020-07-21 04:50:55 -03:00
Rodrigo Locatti
ce9754ffa5
Merge pull request #4361 from ReinUsesLisp/lane-id
...
decode/other: Implement S2R.LaneId
2020-07-21 04:50:45 -03:00
Lioncash
3245700495
surface_params: Make use of designated initializers where applicable
...
Provides a convenient way to avoid unnecessary zero initializing.
2020-07-21 02:27:22 -04:00
Lioncash
4ec316a7b2
surface_params: Remove redundant assignment
...
This is a redundant assignment that can be removed.
2020-07-21 02:26:49 -04:00
Lioncash
9758e39655
surface_params: Replace questionable usages of the comma operator with semicolons
...
These are bugs waiting to happen.
2020-07-21 02:26:48 -04:00
Lioncash
074f382a39
video_core: Remove unused variables
...
Silences several compiler warnings about unused variables.
2020-07-21 00:57:25 -04:00
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.
2020-07-21 00:49:10 -04:00
Lioncash
cff696cfbb
compatible_formats: Add missing header guard
...
Prevents potential inclusion issues from occurring.
2020-07-21 00:42:19 -04:00
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.
2020-07-21 00:36:13 -04:00
bunnei
2e4a5d2110
Merge pull request #4324 from ReinUsesLisp/formats
...
video_core: Fix, add and rename pixel formats
2020-07-21 00:13:04 -04:00
David Marcec
f3ef6e4fb1
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
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.
2020-07-20 17:48:00 -04:00
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.
2020-07-18 01:59:57 -03:00
bunnei
54f4821375
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
578f84cdf4
Fix style issues
2020-07-18 14:24:32 +10:00
bunnei
8ff5d393b7
Merge pull request #4364 from lioncash/desig5
...
vulkan: Make use of designated initializers where applicable
2020-07-18 00:12:43 -04:00
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.
2020-07-17 20:27:53 -03:00
bunnei
b4914299eb
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
10cf640cb6
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
e1b448b550
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
bab9531cc6
Remove duplicate config
2020-07-17 14:26:18 +10:00
David Marcec
73118715ca
Use conditional var
2020-07-17 14:26:17 +10:00
David Marcec
95b545df7c
Drop max workers from 8->2 for testing
2020-07-17 14:26:15 +10:00
David Marcec
74d8c9e0dd
Rebase for per game settings
2020-07-17 14:26:14 +10:00
David Marcec
a4e811af27
async shaders
2020-07-17 14:24:57 +10:00
Lioncash
62ad951689
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
e6e7f7834a
Merge pull request #4368 from lioncash/macro
...
macro: Resolve missing parameter in doxygen comment
2020-07-17 13:13:22 +10:00
David
cf419ad73e
Merge pull request #4370 from lioncash/simplify
...
macro_hle: Simplify shift expression in HLE_771BB18C62444DA0()
2020-07-17 13:13:05 +10:00