summaryrefslogtreecommitdiffstats
path: root/src/video_core/shader/control_flow.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* video_core: Rename "const buffer locker" to "registry"ReinUsesLisp2020-03-091-6/+7
|
* control_flow: Silence -Wreorder warning for CFGRebuildStateLioncash2020-01-141-1/+1
| | | | | Organizes the initializer list in the same order that the variables would actually be initialized in.
* shader/control_flow: Specify constness on caller lambdasRodrigo Locatti2019-11-071-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>
* shader/control_flow: Use callable template instead of std::functionReinUsesLisp2019-11-071-6/+5
|
* shader/control_flow: Abstract repeated code chunks in BRX trackingReinUsesLisp2019-11-071-93/+101
| | | | Remove copied and pasted for cycles into a common templated function.
* shader/control_flow: Silence Intellisense cast warningsReinUsesLisp2019-11-071-1/+1
|
* shader/control_flow: Remove brace initializer in std containersReinUsesLisp2019-11-071-9/+9
| | | | These containers have a default constructor.
* Shader_IR: Address Feedback.Fernando Sahmkow2019-10-261-25/+21
|
* gl_shader_decompiler: Move entries to a separate functionReinUsesLisp2019-10-251-10/+8
|
* Shader_IR: Implement Fast BRX and allow multi-branches in the CFG.Fernando Sahmkow2019-10-251-103/+159
|
* Shader_Cache: setup connection of ConstBufferLockerFernando Sahmkow2019-10-251-7/+15
|
* Shader_IR: Implement BRX tracking.Fernando Sahmkow2019-10-251-0/+113
|
* control_flow: Silence truncation warningsLioncash2019-10-161-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.
* video_core/control_flow: Eliminate variable shadowing warningsLioncash2019-10-051-6/+6
|
* video_core/control_flow: Eliminate pessimizing movesLioncash2019-10-051-5/+8
| | | | These can inhibit the ability of a compiler to perform RVO.
* Shader_ir: Address feedbackFernando Sahmkow2019-10-051-1/+1
|
* Shader_IR: allow else derivation to be optional.Fernando Sahmkow2019-10-051-1/+2
|
* Shader_Ir: Refactor Decompilation process and allow multiple decompilation modes.Fernando Sahmkow2019-10-051-32/+60
|
* gl_shader_decompiler: Implement AST decompilingFernando Sahmkow2019-10-051-1/+1
|
* shader_ir: Declare Manager and pass it to appropiate programs.Fernando Sahmkow2019-10-051-31/+34
|
* shader_ir: Corrections to outward movements and misc stuffsFernando Sahmkow2019-10-051-2/+12
|
* shader_ir: Initial Decompile SetupFernando Sahmkow2019-10-051-3/+55
|
* video_core/control_flow: Prevent sign conversion in TryGetBlock()Lioncash2019-07-191-1/+1
| | | | | The return value is a u32, not an s32, so this would result in an implicit signedness conversion.
* video_core/control_flow: Remove unnecessary BlockStack copy constructorLioncash2019-07-191-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.
* video_core/control_flow: Use std::move where applicableLioncash2019-07-191-10/+15
| | | | Results in less work being done where avoidable.
* video_core/control_flow: Use the prefix variant of operator++ for iteratorsLioncash2019-07-191-2/+2
| | | | | Same thing, but potentially allows a standard library implementation to pick a more efficient codepath.
* video_core/control_flow: Use empty() member function for checking emptinessLioncash2019-07-191-2/+2
| | | | It's what it's there for.
* video_core: Resolve -Wreorder warningsLioncash2019-07-191-1/+1
| | | | | Ensures that the constructor members are always initialized in the order that they're declared in.
* video_core/control_flow: Make program_size for ScanFlow() a std::size_tLioncash2019-07-191-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.
* video_core/control_flow: Place all internally linked types/functions within an anonymous namespaceLioncash2019-07-191-1/+2
| | | | | Previously, quite a few functions were being linked with external linkage.
* control_flow: Correct block breaking algorithm.Fernando Sahmkow2019-07-091-17/+17
|
* control_flow: Assert shaders bigger than limit.Fernando Sahmkow2019-07-091-0/+2
|
* control_flow: Address feedback.Fernando Sahmkow2019-07-091-89/+37
|
* shader_ir: Correct parsing of scheduling instructions and correct sizingFernando Sahmkow2019-07-091-12/+29
|
* shader_ir: Correct max sizingFernando Sahmkow2019-07-091-1/+1
|
* shader_ir: Remove unnecessary constructors and use optional for ScanFlow resultFernando Sahmkow2019-07-091-15/+6
|
* shader_ir: Corrections, documenting and asserting control_flowFernando Sahmkow2019-07-091-43/+37
|
* shader_ir: Unify blocks in decompiled shaders.Fernando Sahmkow2019-07-091-32/+15
|
* shader_ir: Decompile Flow StackFernando Sahmkow2019-07-091-11/+156
|
* shader_ir: Implement BRX & BRA.CCFernando Sahmkow2019-07-091-0/+3
|
* shader_ir: Implement a new shader scannerFernando Sahmkow2019-07-091-0/+393