ReinUsesLisp
180417c514
gl_shader_cache: Remove dynamic BaseBinding specialization
7 years ago
ReinUsesLisp
c8a48aacc0
video_core: Unify ProgramType and ShaderStage into ShaderType
7 years ago
ReinUsesLisp
287ae2b9e8
gl_shader_cache: Specialize local memory size for compute shaders
Local memory size in compute shaders was stubbed with an arbitary size.
This commit specializes local memory size from guest GPU parameters.
7 years ago
ReinUsesLisp
4f5d8e4342
gl_shader_cache: Specialize shader workgroup
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.
7 years ago
ReinUsesLisp
80eacdf89b
texture_cache: Use a table instead of switch for texture formats
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.
7 years ago
ReinUsesLisp
7990220df7
maxwell_3d: Fix stencil_back_func_mask offset
stencil_back_func_mask and stencil_back_mask were misplaced. This commit
addresses that issue.
7 years ago
ReinUsesLisp
096f339a2a
video_core: Silence implicit conversion warnings
7 years ago
ReinUsesLisp
56e237d1f9
shader_ir/warp: Implement FSWZADD
7 years ago
bunnei
1bdae0fe29
common_func: Use std::array for INSERT_PADDING_* macros.
- Zero initialization here is useful for determinism.
7 years ago
Fernando Sahmkow
9293c3a0f2
Shader_IR: Fix TLD4 and add Bindless Variant.
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.
7 years ago
ReinUsesLisp
fa31e5b868
maxwell_3d/kepler_compute: Remove unused arguments in GetTexture
7 years ago
ReinUsesLisp
538ddd220e
video_core/textures: Remove unused index entry in FullTextureInfo
7 years ago
ReinUsesLisp
961fe4d19b
maxwell_3d: Remove unused method GetStageTextures
7 years ago
ReinUsesLisp
3e469cecc1
maxwell_3d: Silence implicit conversion warnings
While we are at it, unify types for dirty reg pointers.
7 years ago
Fernando Sahmkow
be856a38d6
Shader_IR: Address Feedback.
7 years ago
Fernando Sahmkow
e3afd6595a
Shader_IR: Clang format
7 years ago
ReinUsesLisp
ec85648af3
gl_shader_disk_cache: Store and load fast BRX
7 years ago
Fernando Sahmkow
33fcec3502
Shader_IR: allow lookup of texture samplers within the shader_ir for instructions that don't provide it
7 years ago
Fernando Sahmkow
1a58f45d76
VideoCore: Unify const buffer accessing along engines and provide ConstBufferLocker class to shaders.
7 years ago
Lioncash
7fdf991097
shader_bytecode: Make Matcher constexpr capable
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.
7 years ago
ReinUsesLisp
e3107788e6
maxwell_3d: Reduce FlushMMEInlineDraw logging to Trace
7 years ago
Fernando Sahmkow
c0eb1aecfd
Fermi2D: Use a different formula for delimiting blit areas.
7 years ago
Fernando Sahmkow
57a46c69f1
Fermi2D: limit blit area to only available area
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
7 years ago
Lioncash
c9c75f9587
maxwell_3d: Silence truncation warnings
A trivial warning caused by not using size_t as the argument types
instead of u32.
7 years ago
ReinUsesLisp
fe7f20e659
maxwell_3d: Add dirty flags for depth bounds values
This is useful in Vulkan where we want to update depth bounds without
caring if it's enabled or disabled through vkCmdSetDepthBounds.
7 years ago
Fernando Sahmkow
68f5aff64f
Maxwell3D: Corrections and refactors to MME instance refactor
7 years ago
FearlessTobi
01fc969a5f
Fix clang-format
7 years ago
FearlessTobi
366e900376
fermi_2d: Lower surface copy log severity to DEBUG
7 years ago
ReinUsesLisp
44000971e2
gl_shader_decompiler: Use uint for images and fix SUATOM
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.
7 years ago
ReinUsesLisp
675f23aedc
shader/image: Implement SULD and remove irrelevant code
* Implement SULD as float.
* Remove conditional declaration of GL_ARB_shader_viewport_layer_array.
7 years ago
ReinUsesLisp
4de0f1e1c8
shader_bytecode: Add SULD encoding
7 years ago
Fernando Sahmkow
527b841c15
Shader_IR: ICMP corrections and fixes
7 years ago
David Marcec
01a4afee42
Mark DrawArrays as LOG_TRACE
There's no reason to clog logs with DrawArray.
7 years ago
Fernando Sahmkow
4b81d19a1a
Shader_IR: Implement ICMP.
7 years ago
Fernando Sahmkow
7761e44d18
Rasterizer: Refactor and simplify DrawBatch Interface.
7 years ago
Fernando Sahmkow
7606da5611
VideoCore: Corrections to the MME Inliner and removal of hacky instance management.
7 years ago
Fernando Sahmkow
ba02d564f8
Video Core: initial Implementation of InstanceDraw Packaging
7 years ago
ReinUsesLisp
0526bf1895
shader_ir/warp: Implement SHFL
7 years ago
Rodrigo Locatti
193bfefce4
maxwell_3d: Update firmware 4 call stub commentary
7 years ago
ReinUsesLisp
36abf67e79
shader/image: Implement SUATOM and fix SUST
7 years ago
ReinUsesLisp
78574746bd
renderer_opengl: Fix sRGB blits
Removes the sRGB hack of tracking if a frame used an sRGB rendertarget
to apply at least once to blit the final texture as sRGB. Instead of
doing this apply sRGB if the presented image has sRGB.
Also enable sRGB by default on Maxwell3D registers as some games seem to
assume this.
7 years ago
ReinUsesLisp
6170337001
gl_rasterizer: Implement image bindings
7 years ago
ReinUsesLisp
3a450c1395
kepler_compute: Implement texture queries
7 years ago
ReinUsesLisp
5f309b88db
Revert "Revert #2466" and stub FirmwareCall 4
7 years ago
ReinUsesLisp
77ef4fa907
shader/shift: Implement SHR wrapped and clamped variants
Nvidia defaults to wrapped shifts, but this is undefined behaviour on
OpenGL's spec. Explicitly mask/clamp according to what the guest shader
requires.
7 years ago
ReinUsesLisp
701dedcfad
maxwell_3d: Avoid moving macro_params
7 years ago
ReinUsesLisp
52a41f482f
maxwell_3d: Fix macro binding cursor
7 years ago
Rodrigo Locatti
4d4f9cc104
video_core: Silent miscellaneous warnings ( #2820 )
* texture_cache/surface_params: Remove unused local variable
* rasterizer_interface: Add missing documentation commentary
* maxwell_dma: Remove unused rasterizer reference
* video_core/gpu: Sort member declaration order to silent -Wreorder warning
* fermi_2d: Remove unused MemoryManager reference
* video_core: Silent unused variable warnings
* buffer_cache: Silent -Wreorder warnings
* kepler_memory: Remove unused MemoryManager reference
* gl_texture_cache: Add missing override
* buffer_cache: Add missing include
* shader/decode: Remove unused variables
7 years ago
ReinUsesLisp
e3534700d7
shader_ir/conversion: Split int and float selector and implement F2F H1
7 years ago
ReinUsesLisp
b13fbc25b8
shader_ir/conversion: Implement F2I F16 Ra.H1
7 years ago