summaryrefslogtreecommitdiff
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
| * | | | | | | | | | gl_shader_decompiler: Fix geometry shader outputs for Intel driversGravatar Morph2020-06-011-13/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Intel's proprietary drivers, gl_Layer and gl_ViewportIndex are not allowed members of gl_PerVertex block, causing the shader to fail to compile. Fix this by declaring these variables outside of gl_PerVertex.
* | | | | | | | | | | Merge pull request #4044 from ogniK5377/handle-not-signalled-errGravatar bunnei2020-06-041-1/+1
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Downgrade "handle not signaled" error to trace
| * | | | | | | | | | | Downgrade "handle not signaled" error to traceGravatar David Marcec2020-06-041-1/+1
| | |_|_|_|_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | clogs logs quite a bit
* | | | | | | | | | | Merge pull request #4009 from ogniK5377/macro-jit-prodGravatar bunnei2020-06-0415-187/+1042
|\ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / |/| | | | | | | | | | video_core: Implement Macro JIT
| * | | | | | | | | | Default init labels and use initializer list for macro engineGravatar David Marcec2020-06-042-2/+2
| | | | | | | | | | |
| * | | | | | | | | | Mark parameters as constGravatar David Marcec2020-06-038-11/+11
| | | | | | | | | | |
| * | | | | | | | | | Pass by reference instead of copying parametersGravatar David Marcec2020-06-024-7/+9
| | | | | | | | | | |
| * | | | | | | | | | Favor switch case over jump tableGravatar David Marcec2020-05-302-18/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Easier to read and will emit a jump table automatically.
| * | | | | | | | | | Implement macro JITGravatar David Marcec2020-05-3015-189/+1034
| | | | | | | | | | |
* | | | | | | | | | | Merge pull request #4039 from FearlessTobi/port-5376Gravatar bunnei2020-06-031-0/+3
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Port citra-emu/citra#5376: "Actually save the input when clearing/resetting to default"
| * | | | | | | | | | | Actually save the input when clearing/resetting to defaultGravatar FearlessTobi2020-06-031-0/+3
| | |_|_|_|/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Co-Authored-By: xperia64 <xperiancedapps@gmail.com>
* | | | | | | | | | | Merge pull request #4012 from ReinUsesLisp/mipmap-overlapsGravatar bunnei2020-06-031-28/+43
|\ \ \ \ \ \ \ \ \ \ \ | |/ / / / / / / / / / |/| | | | | | | | | | texture_cache: Handle overlaps with multiple subresources
| * | | | | | | | | | texture_cache: More relaxed reconstructionGravatar ReinUsesLisp2020-05-291-13/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Only reupload textures when they've not been modified from the GPU.
| * | | | | | | | | | texture_cache: Only copy textures that were modified from hostGravatar ReinUsesLisp2020-05-291-2/+6
| | | | | | | | | | |
| * | | | | | | | | | texture_cache: Reload textures when number of resources mismatchGravatar ReinUsesLisp2020-05-291-0/+9
| | | | | | | | | | |
| * | | | | | | | | | texture_cache: Handle overlaps with multiple subresourcesGravatar ReinUsesLisp2020-05-291-27/+33
| | |_|/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Implement more surface reconstruct cases. Allow overlaps with more than one layer and mipmap and copies all of them to the new texture. - Fixes textures moving around objects on Xenoblade games
* | | | | | | | | | Merge pull request #4014 from ReinUsesLisp/astc-nvidiaGravatar bunnei2020-06-022-8/+19
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | gl_device: Avoid devices with CAVEAT_SUPPORT on ASTC
| * | | | | | | | | | gl_device: Avoid devices with CAVEAT_SUPPORT on ASTCGravatar ReinUsesLisp2020-05-312-8/+19
| |/ / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids using Nvidia's ASTC decoder on OpenGL. The last time it was profiled, it was slower than yuzu's decoder. While we are at it, fix a bug in the texture cache when native ASTC is not supported.
* | | | | | | | | | Merge pull request #4032 from VolcaEM/xpadGravatar bunnei2020-06-022-1/+13
|\ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|/ / / / |/| | | | | | | | | hid: Stub GetXpadIDs
| * | | | | | | | | Clang-formatGravatar VolcaEM2020-06-011-2/+1
| | | | | | | | | |
| * | | | | | | | | hid: Stub GetXpadIDsGravatar VolcaEM2020-06-012-1/+14
| | |_|_|_|_|/ / / | |/| | | | | | | | | | | | | | | | Allows Minecraft: Nintendo Switch Edition (a.k.a. old Minecraft) to boot and go ingame
* | | | | | | | | Merge pull request #4006 from ReinUsesLisp/squash-ubosGravatar bunnei2020-06-027-79/+173
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | glsl: Squash constant buffers into a single SSBO when we hit the limit
| * | | | | | | | | glsl: Squash constant buffers into a single SSBO when we hit the limitGravatar ReinUsesLisp2020-05-317-79/+173
| | |_|_|/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoids compilation errors at the cost of shader build times and runtime performance when a game hits the limit of uniform buffers we can use.
* | | | | | | | | Merge pull request #4016 from ReinUsesLisp/invocation-infoGravatar LC2020-06-021-1/+1
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | shader/other: Fix hardcoded value in S2R INVOCATION_INFO
| * | | | | | | | | shader/other: Fix hardcoded value in S2R INVOCATION_INFOGravatar ReinUsesLisp2020-05-301-1/+1
| | |_|/ / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Geometry shaders built from Nvidia's compiler check for bits[16:23] to be less than or equal to 0 with VSETP to default to a "safe" value of 0x8000'0000 (safe from hardware's perspective). To avoid hitting this path in the shader, return 0x00ff'0000 from S2R INVOCATION_INFO. This seems to be the maximum number of vertices a geometry shader can emit in a primitive.
* | | | | | | | | Merge pull request #4033 from ReinUsesLisp/vk-r16uiGravatar LC2020-06-022-71/+74
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | maxwell_to_vk: Add R16UI image format
| * | | | | | | | | maxwell_to_vk: Add R16UI image formatGravatar ReinUsesLisp2020-06-022-71/+74
| | |_|_|_|/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | - Used by Octopath Traveler
* | | | | | | | | Merge pull request #4001 from ReinUsesLisp/avoid-copiesGravatar bunnei2020-06-011-17/+23
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | buffer_cache: Avoid copying twice on certain cases
| * | | | | | | | | buffer_cache: Avoid copying twice on certain casesGravatar ReinUsesLisp2020-05-271-17/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid copying to a staging buffer on non-granular memory addresses. Add a callable argument to StreamBufferUpload to be able to copy to the staging buffer directly from ReadBlockUnsafe.
* | | | | | | | | | Merge pull request #3998 from ReinUsesLisp/init-3dGravatar bunnei2020-06-011-0/+4
|\ \ \ \ \ \ \ \ \ \ | |_|/ / / / / / / / |/| | | | | | | | | maxwell_3d: Initialize more registers to their expected value
| * | | | | | | | | maxwell_3d: Initialize line widthsGravatar ReinUsesLisp2020-05-271-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Initialize line widths to avoid setting a line width of zero.
| * | | | | | | | | maxwell_3d: Initialize polygon modesGravatar ReinUsesLisp2020-05-271-0/+2
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NVN expects this to be initialized as Fill, otherwise games that never bind a rasterizer state will log an invalid polygon mode.
* | | | | | | | | Merge pull request #4005 from ReinUsesLisp/g24r8Gravatar Rodrigo Locatti2020-06-011-1/+2
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | format_lookup_table: Implement G24S8 format as S8Z24
| * | | | | | | | | format_lookup_table: Implement G24S8 format as S8Z24Gravatar ReinUsesLisp2020-05-281-1/+2
| | | | | | | | | |
* | | | | | | | | | Merge pull request #3996 from ReinUsesLisp/front-facesGravatar bunnei2020-06-012-7/+21
|\ \ \ \ \ \ \ \ \ \ | |_|_|_|/ / / / / / |/| | | | | | | | | fixed_pipeline_state,gl_rasterizer: Swap negative viewport checks for front faces
| * | | | | | | | | gl_rasterizer: Port front face flip check from VulkanGravatar ReinUsesLisp2020-05-261-5/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While Vulkan was assuming we had no negative viewports, OpenGL code was assuming we had them. Port the old code from Vulkan to OpenGL, checking if the first viewport is negative before flipping faces. This is not a complete implementation since we only check for the first viewport to be negative. That said, unless a game is using Vulkan, OpenGL and NVN games should be fine here, and we can always compare with our Vulkan backend to see if there's a difference.
| * | | | | | | | | fixed_pipeline_state: Remove unnecessary check for front faces flipGravatar ReinUsesLisp2020-05-261-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The check to flip faces when viewports are negative were a left over from the old OpenGL code. This is not required on Vulkan where we have negative viewports.
* | | | | | | | | | Merge pull request #3930 from ReinUsesLisp/animal-bordersGravatar bunnei2020-05-314-17/+26
|\ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | vk_rasterizer: Implement constant attributes
| * | | | | | | | | | vk_rasterizer: Implement constant attributesGravatar ReinUsesLisp2020-05-134-13/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Constant attributes (in OpenGL known disabled attributes) are not supported on Vulkan, even with extensions. To emulate this behavior we return zero on reads from disabled vertex attributes in shader code. This has no caching cost because attribute formats are not dynamic state on Vulkan and we have to store it in the pipeline cache anyway. - Fixes Animal Crossing: New Horizons terrain borders
| * | | | | | | | | | vk_rasterizer: Remove buffer check in attribute selectionGravatar ReinUsesLisp2020-05-131-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was a left over from OpenGL when disabled buffers where not properly emulated. We no longer have to assert this as it is checked in vertex buffer initialization.
* | | | | | | | | | | Merge pull request #3958 from FernandoS27/gl-debugGravatar bunnei2020-05-313-0/+9
|\ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | OpenGL: Enable Debug Context and Synchronous debugging when graphics debugging is enabled
| * | | | | | | | | | | OpenGL: Enable Debug Context and Synchronous debugging when graphics ↵Gravatar Fernando Sahmkow2020-05-173-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | debugging is enabled. This commit aims to help easing debugging of driver crashes without having to modify existing code.
* | | | | | | | | | | | Merge pull request #3999 from ReinUsesLisp/opt-tex-cacheGravatar bunnei2020-05-311-24/+29
|\ \ \ \ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | texture_cache: Optimize GetSurfacesInRegion
| * | | | | | | | | | | | texture_cache: Use unordered_map::find instead of operator[] on hot codeGravatar ReinUsesLisp2020-05-271-15/+19
| | | | | | | | | | | | |
| * | | | | | | | | | | | texture_cache: Use small vector for surface vectorsGravatar ReinUsesLisp2020-05-271-9/+10
| | |_|_|_|/ / / / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This avoids most heap allocations when collecting surfaces into a vector.
* | | | | | | | | | | | gl_device: Enable compute shaders for Intel proprietary driversGravatar Morph2020-05-313-13/+0
| |_|_|_|_|_|/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously we were disabling compute shaders on Intel's proprietary driver due to broken compute. This has been fixed in the latest Intel drivers. Re-enable compute for Intel proprietary drivers and remove the check for broken compute.
* | | | | | | | | | | Merge pull request #3982 from ReinUsesLisp/membar-ctsGravatar bunnei2020-05-304-9/+27
|\ \ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|_|/ / / / |/| | | | | | | | | | shader/other: Implement MEMBAR.CTS
| * | | | | | | | | | shader/other: Implement MEMBAR.CTSGravatar ReinUsesLisp2020-05-274-9/+27
| |/ / / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This silences an assertion we were hitting and uses workgroup memory barriers when the game requests it.
* | | | | | | | | | Add xbyak externalGravatar David Marcec2020-05-304-2/+317
| | | | | | | | | |
* | | | | | | | | | Merge pull request #4007 from ReinUsesLisp/reduce-logsGravatar bunnei2020-05-291-6/+7
|\ \ \ \ \ \ \ \ \ \ | |_|_|_|_|_|/ / / / |/| | | | | | | | | maxwell_3d: Reduce severity of logs that can be spammed