diff options
| author | 2021-04-04 20:00:34 -0300 | |
|---|---|---|
| committer | 2021-07-22 21:51:26 -0400 | |
| commit | 9e6fe430bdc615ae5f7cc4fbc32d7e2baccd7ceb (patch) | |
| tree | 3eb68f4872e39642f6f6c483765174ee77a793f1 /src/shader_recompiler/frontend/maxwell/control_flow.h | |
| parent | shader: Eliminate orphan blocks more efficiently (diff) | |
| download | yuzu-9e6fe430bdc615ae5f7cc4fbc32d7e2baccd7ceb.tar.gz yuzu-9e6fe430bdc615ae5f7cc4fbc32d7e2baccd7ceb.tar.xz yuzu-9e6fe430bdc615ae5f7cc4fbc32d7e2baccd7ceb.zip | |
shader: Fix splits on blocks using indirect branches
Diffstat (limited to 'src/shader_recompiler/frontend/maxwell/control_flow.h')
| -rw-r--r-- | src/shader_recompiler/frontend/maxwell/control_flow.h | 18 |
1 files changed, 7 insertions, 11 deletions
diff --git a/src/shader_recompiler/frontend/maxwell/control_flow.h b/src/shader_recompiler/frontend/maxwell/control_flow.h index a8c90d27a..466b14198 100644 --- a/src/shader_recompiler/frontend/maxwell/control_flow.h +++ b/src/shader_recompiler/frontend/maxwell/control_flow.h | |||
| @@ -79,18 +79,14 @@ struct Block : boost::intrusive::set_base_hook< | |||
| 79 | Location begin; | 79 | Location begin; |
| 80 | Location end; | 80 | Location end; |
| 81 | EndClass end_class; | 81 | EndClass end_class; |
| 82 | Stack stack; | ||
| 83 | IR::Condition cond; | 82 | IR::Condition cond; |
| 84 | union { | 83 | Stack stack; |
| 85 | Block* branch_true; | 84 | Block* branch_true; |
| 86 | FunctionId function_call; | 85 | Block* branch_false; |
| 87 | IR::Reg branch_reg; | 86 | FunctionId function_call; |
| 88 | }; | 87 | Block* return_block; |
| 89 | union { | 88 | IR::Reg branch_reg; |
| 90 | Block* branch_false; | 89 | s32 branch_offset; |
| 91 | Block* return_block; | ||
| 92 | s32 branch_offset; | ||
| 93 | }; | ||
| 94 | std::vector<IndirectBranch> indirect_branches; | 90 | std::vector<IndirectBranch> indirect_branches; |
| 95 | }; | 91 | }; |
| 96 | 92 | ||