aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Graphics.Gpu/Shader/DiskCache/DiskCacheHostStorage.cs
AgeCommit message (Collapse)Author
2023-07-03Stop identifying shader textures with handle and cbuf, use binding instead ↵gdkchan
(#5266) * Stop identifying shader textures with handle and cbuf, use binding instead * Remove now unused code * Consider image operations as having accurate type information too I don't know why that was not the case before * Fix missing unscale on InsertCoordNormalization, stop calling SetUsageFlagsForTextureQuery when not needed * Shader cache version bump * Change get texture methods to return descriptors created from ResourceManager state This is required to ensure that reserved textures and images will not be bound as a guest texture/image * Fix BindlessElimination.SetHandle inserting coords at the wrong place
2023-07-02[Ryujinx.Graphics.Gpu] Address dotnet-format issues (#5367)TSRBerry
* dotnet format style --severity info Some changes were manually reverted. * dotnet format analyzers --serverity info Some changes have been minimally adapted. * Restore a few unused methods and variables * Silence dotnet format IDE0060 warnings * Silence dotnet format IDE0052 warnings * Address dotnet format CA1816 warnings * Address or silence dotnet format CA1069 warnings * Address or silence dotnet format CA2211 warnings * Address remaining dotnet format analyzer warnings * Address review comments * Address most dotnet format whitespace warnings * Apply dotnet format whitespace formatting A few of them have been manually reverted and the corresponding warning was silenced * Format if-blocks correctly * Run dotnet format whitespace after rebase * Run dotnet format style after rebase * Another rebase, another dotnet format run * Run dotnet format style after rebase * Run dotnet format after rebase and remove unused usings - analyzers - style - whitespace * Disable 'prefer switch expression' rule * Add comments to disabled warnings * Remove a few unused parameters * Replace MmeShadowScratch with Array256<uint> * Simplify properties and array initialization, Use const when possible, Remove trailing commas * Start working on disabled warnings * Fix and silence a few dotnet-format warnings again * Run dotnet format after rebase * Address IDE0251 warnings * Silence IDE0060 in .editorconfig * Revert "Simplify properties and array initialization, Use const when possible, Remove trailing commas" This reverts commit 9462e4136c0a2100dc28b20cf9542e06790aa67e. * dotnet format whitespace after rebase * First pass of dotnet format * Add unsafe dotnet format changes * Fix typos * Add trailing commas * Disable formatting for FormatTable * Address review feedback
2023-06-22Fix regression introduced by 1.1.1733 on Intel GPUs (#5311)Kurochi51
* Fix regression introduced by 1.1733 on Intel iGPUs * Should have actually figured the variable, oops. * maybe something goes wrong here? honestly lost * Shader cache bump
2023-06-15Implement Load/Store Local/Shared and Atomic shared using new instructions ↵gdkchan
(#5241) * Implement Load/Store Local/Shared and Atomic shared using new instructions * Remove now unused code * Fix base offset register overwrite * Fix missing storage buffer set index when generating GLSL for Vulkan * Shader cache version bump * Remove more unused code * Some PR feedback
2023-06-10Implement transform feedback emulation for hardware without native support ↵gdkchan
(#5080) * Implement transform feedback emulation for hardware without native support * Stop doing some useless buffer updates and account for non-zero base instance * Reduce redundant updates even more * Update descriptor init logic to account for ResourceLayout * Fix transform feedback and storage buffers not being updated in some cases * Shader cache version bump * PR feedback * SetInstancedDrawVertexCount must be always called after UpdateState * Minor typo
2023-06-08Remove barrier on Intel if control flow is potentially divergent (#5044)gdkchan
* Remove barrier on Intel if control flow is potentially divergent * Shader cache version bump
2023-06-08Implement soft float64 conversion on shaders when host has no support (#5159)gdkchan
* Implement soft float64 conversion on shaders when host has no support * Shader cache version bump * Fix rebase error
2023-06-03Implement shader storage buffer operations using new Load/Store instructions ↵gdkchan
(#4993) * Implement storage buffer operations using new Load/Store instruction * Extend GenerateMultiTargetStorageOp to also match access with constant offset, and log and comments * Remove now unused code * Catch more complex cases of global memory usage * Shader cache version bump * Extend global access elimination to work with more shared memory cases * Change alignment requirement from 16 bytes to 8 bytes, handle cases where we need more than 16 storage buffers * Tweak preferencing to catch more cases * Enable CB0 elimination even when host storage buffer alignment is > 16 (for Intel) * Fix storage buffer bindings * Simplify some code * Shader cache version bump * Fix typo * Extend global memory elimination to handle shared memory with multiple possible offsets and local memory
2023-05-28Add support for VK_EXT_depth_clip_control. (#5027)cstamford
* Add support for VK_EXT_depth_clip_control. * Code review feedback Minor formatting Co-authored-by: gdkchan <gab.dark.100@gmail.com> * Check .DepthClipControl to make sure the host actually supports the feature. * Review feedback: remove Vulkan platform switch, relying on QueryHostSupportsDepthClipControl to drive the behaviour - OpenGL returns true, and any future platforms that don't support the [-1, 1] depth mode can return false for the transformation. --------- Co-authored-by: gdkchan <gab.dark.100@gmail.com>
2023-05-26Force reciprocal operation with value biased by constant to be precise on ↵gdkchan
macOS (#5110) * Force operations to be precise in some cases on SPIR-V * Make it a bit more strict, add comments * Shader cache version bump
2023-05-25Fix resolution scaling of image operation coordinates (#5102)gdkchan
* Fix resolution scaling of image operation coordinates * Shader cache version bump
2023-05-25Generate scaling helper functions on IR (#4714)gdkchan
* Generate scaling helper functions on IR * Delete unused code * Split RewriteTextureSample and move gather bias add to an earlier pass * Remove using * Shader cache version bump
2023-05-22Implement p2rc, p2ri, p2rr and r2p.cc shaders (#5031)makigumo
* implement P2rC, P2rI, P2rR shaders * implement R2p.CC shader * bump CodeGenVersion * address feedback
2023-05-21Replace ShaderBindings with new ResourceLayout structure for Vulkan (#5025)gdkchan
* Introduce ResourceLayout * Part 1: Use new ResourceSegments array on UpdateAndBind * Part 2: Use ResourceLayout to build PipelineLayout * Delete old code * XML docs * Fix shader cache load NRE * Fix typo
2023-05-20Replace constant buffer access on shader with new Load instruction (#4646)gdkchan
2023-05-20SPIR-V: Only allow implicit LOD sampling on fragment (#5026)riperiperi
2023-05-19Eliminate redundant multiplications by gl_FragCoord.w on the shader (#4578)gdkchan
* Eliminate redundant multiplications by gl_FragCoord.w on the shader * Shader cache version bump
2023-05-12Bump shader cache codegen versionMary
That was missing from #4892
2023-05-05Use correct offset for storage constant buffer elimination (#4821)riperiperi
2023-05-05Allow any shader SSBO constant buffer slot and offset (#2237)gdkchan
* Allow any shader SSBO constant buffer slot and offset * Fix slot value passed to SetUsedStorageBuffer on fallback case * Shader cache version * Ensure that the storage buffer source constant buffer offset is word aligned * Fix FirstBinding on GetUniformBufferDescriptors
2023-04-27Move solution and projects to srcTSR Berry