Lioncash
6b13d08822
async_shaders: Resolve -Wpessimizing-move warning
...
Prevents pessimization of the move constructor (which thankfully didn't
actually happen in practice here, given std::thread isn't copyable).
2020-08-14 08:16:50 -04:00
bunnei
a9de967fa3
Merge pull request #4514 from Morph1984/worker-alloc
...
gl_shader_cache: Use std::max() for determining num_workers
2020-08-13 17:06:57 -04:00
Lioncash
b724a4d90c
General: Tidy up clang-format warnings part 2
2020-08-13 14:19:08 -04:00
Morph
e0ff98dd34
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
bunnei
5429ea0e69
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
f11628b9b7
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
efd1b57d03
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
0ae267bf77
Merge pull request #4469 from lioncash/missing
...
vk_texture_cache: Silence -Wmissing-field-initializer warnings
2020-08-04 06:59:51 -07:00
Lioncash
06809ad7bc
vulkan: Silence more -Wmissing-field-initializer warnings
2020-08-03 12:28:57 -04:00
Lioncash
b249e4e0ce
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
0c262f8ac2
Merge pull request #4392 from lioncash/guard
...
compatible_formats: Add missing header guard
2020-07-31 01:08:56 +10:00
bunnei
4c0f6f1bc8
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
e8f22730d1
renderer_opengl: Use 1/4 of all threads for async shader compilation
2020-07-28 05:08:27 -04:00
bunnei
6b35317ff3
Merge pull request #4419 from lioncash/initializer
...
vulkan: Resolve -Wmissing-field-initializer warnings
2020-07-27 15:52:03 -07:00
Billy Laws
f490b4545d
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
05def61398
hle: nvdrv: Rewrite of GPU memory management.
2020-07-26 00:49:43 -04:00
Lioncash
80eedff9e1
vulkan: Resolve -Wmissing-field-initializer warnings
2020-07-25 03:50:18 -04:00
bunnei
dc2d31b1b2
Merge pull request #4393 from lioncash/unused5
...
vk_rasterizer: Remove unused variable in Clear()
2020-07-24 20:33:58 -07:00
bunnei
d488cb843e
Merge pull request #4388 from lioncash/written
...
buffer_cache: Eliminate redundant map lookup in MarkRegionAsWritten()
2020-07-24 11:29:37 -07:00
bunnei
f650cf8a9a
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
1d7de0a8ee
Merge pull request #4394 from lioncash/unused6
...
video_core: Remove unused variables
2020-07-23 19:54:59 -07:00
Rodrigo Locatti
7278c59d70
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
721e6015a8
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
9ea9a60e17
Merge pull request #4361 from ReinUsesLisp/lane-id
...
decode/other: Implement S2R.LaneId
2020-07-21 04:50:45 -03:00
Lioncash
82b7e5c8ee
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
bd9545a3a8
surface_params: Remove redundant assignment
...
This is a redundant assignment that can be removed.
2020-07-21 02:26:49 -04:00
Lioncash
c705a1db96
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
e17fb5ee97
video_core: Remove unused variables
...
Silences several compiler warnings about unused variables.
2020-07-21 00:57:25 -04:00
Lioncash
4b369126c4
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
059305a6bf
compatible_formats: Add missing header guard
...
Prevents potential inclusion issues from occurring.
2020-07-21 00:42:19 -04:00
Lioncash
6adc824d9d
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
3d13d7f48f
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
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
Lioncash
26c6c71837
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
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