aboutsummaryrefslogtreecommitdiff
path: root/src/video_core
AgeCommit message (Collapse)Author
2020-08-16Vk Async pipeline compilationameerj
2020-08-16common/fileutil: Convert namespace to Common::FSLioncash
Migrates a remaining common file over to the Common namespace, making it consistent with the rest of common files. This also allows for high-traffic FS related code to alias the filesystem function namespace as namespace FS = Common::FS; for more concise typing.
2020-08-16Merge pull request #4528 from lioncash/discardbunnei
common: Make use of [[nodiscard]] where applicable
2020-08-16Merge pull request #4519 from lioncash/semibunnei
maxwell_3d: Resolve -Wextra-semi warning
2020-08-15common/compression: Roll back std::span changesLioncash
Seems like all compilers don't support std::span yet.
2020-08-15Merge pull request #4416 from lioncash/spanbunnei
lz4_compression/zstd_compression: Make use of std::span in interfaces
2020-08-14Merge pull request #4453 from ReinUsesLisp/block-to-linearbunnei
textures/decoders: Fix block linear to pitch copies
2020-08-14shader/memory: Amend UNIMPLEMENTED_IF_MSG without a messageLioncash
We need to provide a message for this variant of the macro, so we can simply log out the type being used.
2020-08-14macro-interpreter: Resolve -Wself-assign-field warningLioncash
This was assigning the field to itself, which is a no-op. The size doesn't change between its initial assignment and this one, so this is a safe change to make.
2020-08-14vulkan/wrapper: Avoid unnecessary copy in EnumerateInstanceExtensionProperties()Lioncash
Given this is implicitly creating a std::optional, we can move the vector into it.
2020-08-14gl_shader_disk_cache: Make use of std::nullopt where applicableLioncash
Allows the compiler to avoid unnecessarily zeroing out the internal buffer of std::optional on some implementations.
2020-08-14async_shaders: Resolve -Wpessimizing-move warningLioncash
Prevents pessimization of the move constructor (which thankfully didn't actually happen in practice here, given std::thread isn't copyable).
2020-08-14maxwell_3d: Resolve -Wextra-semi warningLioncash
Semicolons after a function definition aren't necessary.
2020-08-13Merge pull request #4514 from Morph1984/worker-allocbunnei
gl_shader_cache: Use std::max() for determining num_workers
2020-08-13General: Tidy up clang-format warnings part 2Lioncash
2020-08-12gl_shader_cache: Use std::max() for determining num_workersMorph
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-10textures/decoders: Fix block linear to pitch copiesReinUsesLisp
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-07Merge pull request #4389 from ogniK5377/redundant-format-typebunnei
video_core: Remove redundant pixel format type
2020-08-04Merge pull request #4430 from bunnei/new-gpu-vmmbunnei
hle: nvdrv: Rewrite of GPU memory management.
2020-08-04Merge pull request #4445 from Morph1984/async-threadsbunnei
renderer_opengl: Use 1/4 of all threads for async shader compilation
2020-08-04Merge pull request #4469 from lioncash/missingbunnei
vk_texture_cache: Silence -Wmissing-field-initializer warnings
2020-08-03vulkan: Silence more -Wmissing-field-initializer warningsLioncash
2020-08-03yuzu: Resolve C++20 deprecation warnings related to lambda capturesLioncash
C++20 deprecates capturing the this pointer via the '=' capture. Instead, we replace it or extend the capture specification.
2020-07-31Merge pull request #4392 from lioncash/guardDavid
compatible_formats: Add missing header guard
2020-07-29Merge pull request #4396 from lioncash/commabunnei
surface_params: Replace questionable usages of the comma operator with semicolons
2020-07-28renderer_opengl: Use 1/4 of all threads for async shader compilationMorph
2020-07-27Merge pull request #4419 from lioncash/initializerbunnei
vulkan: Resolve -Wmissing-field-initializer warnings
2020-07-26video_core/gpu: Correct the size of the puller registersBilly Laws
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-26hle: nvdrv: Rewrite of GPU memory management.bunnei
2020-07-25vulkan: Resolve -Wmissing-field-initializer warningsLioncash
2020-07-25zstd_compression: Make use of std::span in interfacesLioncash
Allows condensing the data and size parameters into a single argument.
2020-07-24Merge pull request #4393 from lioncash/unused5bunnei
vk_rasterizer: Remove unused variable in Clear()
2020-07-24Merge pull request #4388 from lioncash/writtenbunnei
buffer_cache: Eliminate redundant map lookup in MarkRegionAsWritten()
2020-07-24Merge pull request #4391 from lioncash/nrvobunnei
video_core: Allow copy elision to take place where applicable
2020-07-23Merge pull request #4394 from lioncash/unused6bunnei
video_core: Remove unused variables
2020-07-21Merge pull request #4359 from ReinUsesLisp/clamp-sharedRodrigo Locatti
renderer_{opengl,vulkan}: Clamp shared memory to host's limit
2020-07-21Merge pull request #4360 from ReinUsesLisp/glasm-barRodrigo Locatti
gl_arb_decompiler: Execute BAR even when inside control flow
2020-07-21Merge pull request #4361 from ReinUsesLisp/lane-idRodrigo Locatti
decode/other: Implement S2R.LaneId
2020-07-21surface_params: Make use of designated initializers where applicableLioncash
Provides a convenient way to avoid unnecessary zero initializing.
2020-07-21surface_params: Remove redundant assignmentLioncash
This is a redundant assignment that can be removed.
2020-07-21surface_params: Replace questionable usages of the comma operator with ↵Lioncash
semicolons These are bugs waiting to happen.
2020-07-21video_core: Remove unused variablesLioncash
Silences several compiler warnings about unused variables.
2020-07-21vk_rasterizer: Remove unused variable in Clear()Lioncash
The relevant values are already assigned further down in the lambda, so this can be removed entirely.
2020-07-21compatible_formats: Add missing header guardLioncash
Prevents potential inclusion issues from occurring.
2020-07-21video_core: Allow copy elision to take place where applicableLioncash
Removes const from some variables that are returned from functions, as this allows the move assignment/constructors to execute for them.
2020-07-21Merge pull request #4324 from ReinUsesLisp/formatsbunnei
video_core: Fix, add and rename pixel formats
2020-07-21video_core: Remove redundant pixel format typeDavid Marcec
We already get the format type before converting shadow formats and during shadow formats.
2020-07-20buffer_cache: Eliminate redundant map lookup in MarkRegionAsWritten()Lioncash
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-18gl_arb_decompiler: Use NV_shader_buffer_{load,store} on assembly shadersReinUsesLisp
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-18Merge pull request #4273 from ogniK5377/async-shaders-prodbunnei
video_core: Add asynchronous shader decompilation and compilation