aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/engines
AgeCommit message (Collapse)Author
2019-11-22video_core: Unify ProgramType and ShaderStage into ShaderTypeReinUsesLisp
2019-11-22gl_shader_cache: Specialize local memory size for compute shadersReinUsesLisp
Local memory size in compute shaders was stubbed with an arbitary size. This commit specializes local memory size from guest GPU parameters.
2019-11-22gl_shader_cache: Specialize shader workgroupReinUsesLisp
Drop the usage of ARB_compute_variable_group_size and specialize compute shaders instead. This permits compute to run on AMD and Intel proprietary drivers.
2019-11-14texture_cache: Use a table instead of switch for texture formatsReinUsesLisp
Use a large flat array to look up texture formats. This allows us to properly implement formats with different component types. It should also be faster.
2019-11-14Shader_IR: Implement TXD instruction.Fernando Sahmkow
2019-11-14Shader_IR: Implement FLO instruction.Fernando Sahmkow
2019-11-14Shader_Bytecode: Add encodings for FLO, SHF and TXDFernando Sahmkow
2019-11-14Merge pull request #3081 from ReinUsesLisp/fswzadd-shufflesFernando Sahmkow
shader: Implement FSWZADD and reimplement SHFL
2019-11-13maxwell_3d: Fix stencil_back_func_mask offsetReinUsesLisp
stencil_back_func_mask and stencil_back_mask were misplaced. This commit addresses that issue.
2019-11-08video_core: Silence implicit conversion warningsReinUsesLisp
2019-11-07shader_ir/warp: Implement FSWZADDReinUsesLisp
2019-11-05Merge pull request #2914 from FernandoS27/fermi-fixbunnei
Fermi2D: limit blit area to only available area
2019-11-03common_func: Use std::array for INSERT_PADDING_* macros.bunnei
- Zero initialization here is useful for determinism.
2019-10-30Merge pull request #3050 from FernandoS27/fix-tld4Rodrigo Locatti
shader_ir: Fix TLD4 and add bindless variant
2019-10-30Shader_IR: Fix TLD4 and add Bindless Variant.Fernando Sahmkow
This commit fixes an issue where not all 4 results of tld4 were being written, the color component was defaulted to red, among other things. It also implements the bindless variant.
2019-10-28maxwell_3d/kepler_compute: Remove unused arguments in GetTextureReinUsesLisp
2019-10-28video_core/textures: Remove unused index entry in FullTextureInfoReinUsesLisp
2019-10-28maxwell_3d: Remove unused method GetStageTexturesReinUsesLisp
2019-10-27maxwell_3d: Silence implicit conversion warningsReinUsesLisp
While we are at it, unify types for dirty reg pointers.
2019-10-26Shader_IR: Address Feedback.Fernando Sahmkow
2019-10-25Shader_IR: Clang formatFernando Sahmkow
2019-10-25gl_shader_disk_cache: Store and load fast BRXReinUsesLisp
2019-10-25Shader_IR: allow lookup of texture samplers within the shader_ir for ↵Fernando Sahmkow
instructions that don't provide it
2019-10-25VideoCore: Unify const buffer accessing along engines and provide ↵Fernando Sahmkow
ConstBufferLocker class to shaders.
2019-10-24shader_bytecode: Make Matcher constexpr capableLioncash
Greatly shrinks the amount of generated code for GetDecodeTable(). Collapses an assembly output of 9000+ lines down to ~3621 with Clang, and 6513 down to ~2616 with GCC, given it's now allowed to construct all the entries as a sequence of constant data.
2019-10-20maxwell_3d: Reduce FlushMMEInlineDraw logging to TraceReinUsesLisp
2019-10-17Fermi2D: Use a different formula for delimiting blit areas.Fernando Sahmkow
2019-10-17Fermi2D: limit blit area to only available areaFernando Sahmkow
Normaly OpenGL does not care if the areas exceed the texture regions but other backends such as Vulkan do care about the limits of this areas. This PR crops the areas of the blit in order that they don't surpass the limits of the textures. This should help Vulkan and faulty OpenGL drivers
2019-10-15maxwell_3d: Silence truncation warningsLioncash
A trivial warning caused by not using size_t as the argument types instead of u32.
2019-10-05maxwell_3d: Add dirty flags for depth bounds valuesReinUsesLisp
This is useful in Vulkan where we want to update depth bounds without caring if it's enabled or disabled through vkCmdSetDepthBounds.
2019-09-23Merge pull request #2869 from ReinUsesLisp/suldbunnei
shader/image: Implement SULD and fix SUATOM
2019-09-22Merge pull request #2870 from FernandoS27/multi-drawDavid
Implement a MME Draw commands Inliner and correct host instance drawing
2019-09-22Maxwell3D: Corrections and refactors to MME instance refactorFernando Sahmkow
2019-09-22Fix clang-formatFearlessTobi
2019-09-22fermi_2d: Lower surface copy log severity to DEBUGFearlessTobi
2019-09-21Merge pull request #2878 from FernandoS27/icmpRodrigo Locatti
shader_ir: Implement ICMP
2019-09-21gl_shader_decompiler: Use uint for images and fix SUATOMReinUsesLisp
In the process remove implementation of SUATOM.MIN and SUATOM.MAX as these require a distinction between U32 and S32. These have to be implemented with imageCompSwap loop.
2019-09-21shader/image: Implement SULD and remove irrelevant codeReinUsesLisp
* Implement SULD as float. * Remove conditional declaration of GL_ARB_shader_viewport_layer_array.
2019-09-21shader_bytecode: Add SULD encodingReinUsesLisp
2019-09-21Shader_IR: ICMP corrections and fixesFernando Sahmkow
2019-09-21Mark DrawArrays as LOG_TRACEDavid Marcec
There's no reason to clog logs with DrawArray.
2019-09-19Shader_IR: Implement ICMP.Fernando Sahmkow
2019-09-19Rasterizer: Refactor and simplify DrawBatch Interface.Fernando Sahmkow
2019-09-19VideoCore: Corrections to the MME Inliner and removal of hacky instance ↵Fernando Sahmkow
management.
2019-09-19Video Core: initial Implementation of InstanceDraw PackagingFernando Sahmkow
2019-09-17shader_ir/warp: Implement SHFLReinUsesLisp
2019-09-15Merge pull request #2851 from ReinUsesLisp/srgbFernando Sahmkow
renderer_opengl: Fix sRGB blits
2019-09-15Merge pull request #2824 from ReinUsesLisp/mmeFernando Sahmkow
Revert "Revert #2466" and stub FirmwareCall 4
2019-09-14maxwell_3d: Update firmware 4 call stub commentaryRodrigo Locatti
2019-09-10shader/image: Implement SUATOM and fix SUSTReinUsesLisp