summaryrefslogtreecommitdiffstats
path: root/src/video_core/shader/control_flow.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2020-03-09video_core: Rename "const buffer locker" to "registry"ReinUsesLisp1-6/+7
2020-01-14control_flow: Silence -Wreorder warning for CFGRebuildStateLioncash1-1/+1
Organizes the initializer list in the same order that the variables would actually be initialized in.
2019-11-07shader/control_flow: Specify constness on caller lambdasRodrigo Locatti1-11/+12
Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com> Update src/video_core/shader/control_flow.cpp Co-Authored-By: Mat M. <mathew1800@gmail.com>
2019-11-07shader/control_flow: Use callable template instead of std::functionReinUsesLisp1-6/+5
2019-11-07shader/control_flow: Abstract repeated code chunks in BRX trackingReinUsesLisp1-93/+101
Remove copied and pasted for cycles into a common templated function.
2019-11-07shader/control_flow: Silence Intellisense cast warningsReinUsesLisp1-1/+1
2019-11-07shader/control_flow: Remove brace initializer in std containersReinUsesLisp1-9/+9
These containers have a default constructor.
2019-10-26Shader_IR: Address Feedback.Fernando Sahmkow1-25/+21
2019-10-25gl_shader_decompiler: Move entries to a separate functionReinUsesLisp1-10/+8
2019-10-25Shader_IR: Implement Fast BRX and allow multi-branches in the CFG.Fernando Sahmkow1-103/+159
2019-10-25Shader_Cache: setup connection of ConstBufferLockerFernando Sahmkow1-7/+15
2019-10-25Shader_IR: Implement BRX tracking.Fernando Sahmkow1-0/+113
2019-10-16control_flow: Silence truncation warningsLioncash1-2/+2
This can be trivially fixed by making the input size a size_t. CFGRebuildState's constructor parameter is already a std::size_t, so this just makes the size type fully conform with it.
2019-10-05video_core/control_flow: Eliminate variable shadowing warningsLioncash1-6/+6
2019-10-05video_core/control_flow: Eliminate pessimizing movesLioncash1-5/+8
These can inhibit the ability of a compiler to perform RVO.
2019-10-05Shader_ir: Address feedbackFernando Sahmkow1-1/+1
2019-10-05Shader_IR: allow else derivation to be optional.Fernando Sahmkow1-1/+2
2019-10-05Shader_Ir: Refactor Decompilation process and allow multiple decompilation modes.Fernando Sahmkow1-32/+60
2019-10-05gl_shader_decompiler: Implement AST decompilingFernando Sahmkow1-1/+1
2019-10-05shader_ir: Declare Manager and pass it to appropiate programs.Fernando Sahmkow1-31/+34
2019-10-05shader_ir: Corrections to outward movements and misc stuffsFernando Sahmkow1-2/+12
2019-10-05shader_ir: Initial Decompile SetupFernando Sahmkow1-3/+55
2019-07-19video_core/control_flow: Prevent sign conversion in TryGetBlock()Lioncash1-1/+1
The return value is a u32, not an s32, so this would result in an implicit signedness conversion.
2019-07-19video_core/control_flow: Remove unnecessary BlockStack copy constructorLioncash1-2/+1
This is the default behavior of the copy constructor, so it doesn't need to be specified. While we're at it we can make the other non-default constructor explicit.
2019-07-19video_core/control_flow: Use std::move where applicableLioncash1-10/+15
Results in less work being done where avoidable.
2019-07-19video_core/control_flow: Use the prefix variant of operator++ for iteratorsLioncash1-2/+2
Same thing, but potentially allows a standard library implementation to pick a more efficient codepath.
2019-07-19video_core/control_flow: Use empty() member function for checking emptinessLioncash1-2/+2
It's what it's there for.
2019-07-19video_core: Resolve -Wreorder warningsLioncash1-1/+1
Ensures that the constructor members are always initialized in the order that they're declared in.
2019-07-19video_core/control_flow: Make program_size for ScanFlow() a std::size_tLioncash1-2/+2
Prevents a truncation warning from occurring with MSVC. Also the internal data structures already treat it as a size_t, so this is just a discrepancy in the interface.
2019-07-19video_core/control_flow: Place all internally linked types/functions within an anonymous namespaceLioncash1-1/+2
Previously, quite a few functions were being linked with external linkage.
2019-07-09control_flow: Correct block breaking algorithm.Fernando Sahmkow1-17/+17
2019-07-09control_flow: Assert shaders bigger than limit.Fernando Sahmkow1-0/+2
2019-07-09control_flow: Address feedback.Fernando Sahmkow1-89/+37
2019-07-09shader_ir: Correct parsing of scheduling instructions and correct sizingFernando Sahmkow1-12/+29
2019-07-09shader_ir: Correct max sizingFernando Sahmkow1-1/+1
2019-07-09shader_ir: Remove unnecessary constructors and use optional for ScanFlow resultFernando Sahmkow1-15/+6
2019-07-09shader_ir: Corrections, documenting and asserting control_flowFernando Sahmkow1-43/+37
2019-07-09shader_ir: Unify blocks in decompiled shaders.Fernando Sahmkow1-32/+15
2019-07-09shader_ir: Decompile Flow StackFernando Sahmkow1-11/+156
2019-07-09shader_ir: Implement BRX & BRA.CCFernando Sahmkow1-0/+3
2019-07-09shader_ir: Implement a new shader scannerFernando Sahmkow1-0/+393