Lioncash
2be8e9de58
video_core/macro_interpreter: Make definitions of most private enums/unions hidden
This allows the implementation of these types to change without
requiring a rebuild of everything that includes the macro interpreter
header.
6 years ago
Lioncash
b5202d5da2
common: Rename binary_find.h to algorithm.h
Makes the header more general for other potential algorithms in the
future. While we're at it, include a missing <functional> include to
satisfy the use of std::less.
6 years ago
ReinUsesLisp
27db09b4e7
shader/half_set_predicate: Fix HSETP2 for constant buffers
HSETP2 when used with a constant buffer parses the second operand type
as F32. This is not configurable.
6 years ago
ReinUsesLisp
f8372fcc62
shader/half_set_predicate: Reduce DEBUG_ASSERT to LOG_DEBUG
6 years ago
ReinUsesLisp
3d415bbb32
gl_shader_disk_cache: Properly ignore existing cache
Previously old entries where appended to the file even if the shader
cache was ignored at boot. Address that issue.
6 years ago
Lioncash
71a231e448
video_core/control_flow: Eliminate variable shadowing warnings
6 years ago
Lioncash
a542346e9d
video_core/control_flow: Eliminate pessimizing moves
These can inhibit the ability of a compiler to perform RVO.
6 years ago
Lioncash
1ad73a6011
video_core/ast: Unindent most of IsFullyDecompiled() by one level
6 years ago
Lioncash
2d2dd7bf7b
video_core/ast: Make ShowCurrentState() take a string_view instead of std::string
Allows the function to be non-allocating in terms of the output string.
6 years ago
Lioncash
b1178c30cf
video_core/ast: Eliminate variable shadowing warnings
6 years ago
Lioncash
d599c3c74b
video_core/ast: Replace std::string with a constexpr std::string_view
Same behavior, but without the need to heap allocate
6 years ago
Lioncash
7d18851449
video_core/ast: Default the move constructor and assignment operator
This is behaviorally equivalent and also fixes a bug where some members
weren't being moved over.
6 years ago
Lioncash
4d48fc529a
video_core/{ast, expr}: Organize forward declaration
Keeps them alphabetically sorted for readability.
6 years ago
Lioncash
844d714085
video_core/expr: Supply operator!= along with operator==
Provides logical symmetry to the interface.
6 years ago
Lioncash
e53a34ecf6
video_core/{ast, expr}: Use std::move where applicable
Avoids unnecessary atomic reference count increments and decrements.
6 years ago
Lioncash
2d86bd6d08
video_core/ast: Supply const accessors for data where applicable
Provides const equivalents of data accessors for use within const
contexts.
6 years ago
ReinUsesLisp
521b03ddb4
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.
6 years ago
Fernando Sahmkow
3fd1a9707d
Texture_Cache: Blit Deduction corrections and simplifications.
6 years ago
Fernando Sahmkow
a909bf7263
TextureCache: Add the ability to deduce if two textures are depth on blit.
6 years ago
Fernando Sahmkow
4de60d6a41
Shader_ir: Address feedback
6 years ago
Fernando Sahmkow
97f8352efe
Shader_Ir: Address Feedback and clang format.
6 years ago
Fernando Sahmkow
40dc82911f
vk_shader_decompiler: Correct Branches inside conditionals.
6 years ago
Fernando Sahmkow
073ccf8def
vk_shader_decompiler: Clean code and be const correct.
6 years ago
Fernando Sahmkow
8561edf839
Shader_IR: clean up AST handling and add documentation.
6 years ago
Fernando Sahmkow
e9f4340b88
Shader_IR: Correct OutwardMoves for Ifs
6 years ago
Fernando Sahmkow
c5d2245b54
vk_shader_compiler: Don't enclose branches with if(true) to avoid crashing AMD
6 years ago
Fernando Sahmkow
8cd340c636
gl_shader_decompiler: Refactor and address feedback.
6 years ago
Fernando Sahmkow
6389d468ff
Shader_IR: corrections and clang-format
6 years ago
Fernando Sahmkow
bd5969e086
vk_shader_compiler: Correct SPIR-V AST Decompiling
6 years ago
Fernando Sahmkow
9e8c57f049
Shader_IR: allow else derivation to be optional.
6 years ago
Fernando Sahmkow
8d882ef69a
vk_shader_compiler: Implement the decompiler in SPIR-V
6 years ago
Fernando Sahmkow
7e08fad2d4
Shader_IR: mark labels as unused for partial decompile.
6 years ago
Fernando Sahmkow
7b55e1c0b1
Shader_Ir: Refactor Decompilation process and allow multiple decompilation modes.
6 years ago
Fernando Sahmkow
5d3c5df7f4
gl_shader_decompiler: Implement AST decompiling
7 years ago
Fernando Sahmkow
f1ed22419c
shader_ir: Declare Manager and pass it to appropiate programs.
7 years ago
Fernando Sahmkow
9f61500df1
shader_ir: Corrections to outward movements and misc stuffs
7 years ago
Fernando Sahmkow
9581919b87
shader_ir: Add basic goto elimination
7 years ago
Fernando Sahmkow
a3d04b45a9
shader_ir: Initial Decompile Setup
7 years ago
ReinUsesLisp
1b0470b913
gl_rasterizer: Fix polygon offset units
For some reason hardware divides polygon offset units by two. This is
visible since drivers multiply the application requested polygon offset
by two.
6 years ago
ReinUsesLisp
6b66665ad2
gl_shader_decompiler: Add tailing return for HUnpack2
6 years ago
ReinUsesLisp
3673f32b82
gl_shader_decompiler: Fix clang build issues
6 years ago
Fernando Sahmkow
d53d764965
Maxwell3D: Corrections and refactors to MME instance refactor
6 years ago
FearlessTobi
97f509e9d4
Fix clang-format
6 years ago
FearlessTobi
4c1c09c8d8
fermi_2d: Lower surface copy log severity to DEBUG
6 years ago
FearlessTobi
99b280bbf7
video_core: Implement RGBX16F PixelFormat
6 years ago
ReinUsesLisp
79a7463f4c
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.
6 years ago
ReinUsesLisp
331d140bb4
shader/image: Implement SULD and remove irrelevant code
* Implement SULD as float.
* Remove conditional declaration of GL_ARB_shader_viewport_layer_array.
6 years ago
ReinUsesLisp
dfe69a7f19
shader_bytecode: Add SULD encoding
6 years ago
Fernando Sahmkow
f02b9d37f0
Shader_IR: ICMP corrections and fixes
6 years ago
David Marcec
5bcd512c3c
Mark DrawArrays as LOG_TRACE
There's no reason to clog logs with DrawArray.
6 years ago