aboutsummaryrefslogtreecommitdiff
path: root/src/video_core
AgeCommit message (Collapse)Author
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
2020-07-18Fix style issuesDavid Marcec
2020-07-18Merge pull request #4364 from lioncash/desig5bunnei
vulkan: Make use of designated initializers where applicable
2020-07-17vk_device: Fix build error on old MSVC versionsReinUsesLisp
Designated initializers on old MSVC versions fail to build when they take the address of a constant.
2020-07-17Merge pull request #4322 from ReinUsesLisp/fix-dynstatebunnei
vk_state_tracker: Fix dirty flags for stencil_enable on VK_EXT_extended_dynamic_state
2020-07-17Merge pull request #4369 from lioncash/hle-macroLC
macro_hle: Remove unnecessary std::make_pair calls
2020-07-17Merge pull request #4340 from lioncash/removeLC
shader_cache: Make use of std::erase_if
2020-07-17Remove duplicate configDavid Marcec
2020-07-17Use conditional varDavid Marcec
2020-07-17Drop max workers from 8->2 for testingDavid Marcec
2020-07-17Rebase for per game settingsDavid Marcec
2020-07-17async shadersDavid Marcec
2020-07-16macro_hle: Remove unnecessary static keywordsLioncash
These functions are already in an anonymous namespace which makes the functions internally linked.
2020-07-17Merge pull request #4368 from lioncash/macroDavid
macro: Resolve missing parameter in doxygen comment
2020-07-17Merge pull request #4370 from lioncash/simplifyDavid
macro_hle: Simplify shift expression in HLE_771BB18C62444DA0()
2020-07-16macro_hle: Simplify shift expression in HLE_771BB18C62444DA0()Lioncash
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-16macro_hle: Remove unnecessary std::make_pair callsLioncash
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-16macro: Resolve missing parameter in doxygen commentLioncash
Resolves a -Wdocumentation warning.
2020-07-16wrapper: Make use of designated initializers where applicableLioncash
2020-07-16vk_texture_cache: Make use of designated initializers where applicableLioncash
2020-07-16vk_texture_cache: Amend mismatched access masks and indices in UploadBufferLioncash
Discovered while converting relevant parts of the codebase over to designated initializers.
2020-07-16vk_swapchain: Make use of designated initializers where applicableLioncash
2020-07-16vk_stream_buffer: Make use of designated initializers where applicableLioncash
2020-07-16vk_staging_buffer_pool: Make use of designated initializers where applicableLioncash
2020-07-16vk_shader_util: Make use of designated initializers where applicableLioncash
2020-07-16vk_scheduler: Make use of designated initializers where applicableLioncash
2020-07-16vk_sampler_cache: Make use of designated initializers where applicableLioncash
2020-07-16vk_resource_manager: Make use of designated initializers where applicableLioncash
2020-07-16vk_renderpass_cache: Make use of designated initializers where applicableLioncash
2020-07-16vk_rasterizer: Make use of designated initializers where applicableLioncash
2020-07-16vk_query_cache: Make use of designated initializers where applicableLioncash
2020-07-16vk_pipeline_cache: Make use of designated initializers where applicableLioncash
2020-07-16vk_memory_manager: Make use of designated initializers where applicableLioncash
2020-07-16vk_image: Make use of designated initializers where applicableLioncash
2020-07-16vk_descriptor_pool: Make use of designated initializers where applicableLioncash
2020-07-16vk_graphics_pipeline: Resolve narrowing warningsLioncash
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-16vk_compute_pipeline: Make use of designated initializers where applicableLioncash
2020-07-16vk_compute_pass: Make use of designated initializers where applicableLioncash
Note: Some barriers can't be converted over yet, as they ICE MSVC.