summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/frontend/maxwell/structured_control_flow.cpp
diff options
context:
space:
mode:
authorGravatar ReinUsesLisp2021-05-14 04:48:46 -0300
committerGravatar ameerj2021-07-22 21:51:31 -0400
commitbf5e48ffe4bd48ea681f2a01c8919c97125e88df (patch)
tree2127c2f01aa19b98672f1ac9f34395b9b0240b3e /src/shader_recompiler/frontend/maxwell/structured_control_flow.cpp
parentglasm: Write result to scalar on integer comparison instructions (diff)
downloadyuzu-bf5e48ffe4bd48ea681f2a01c8919c97125e88df.tar.gz
yuzu-bf5e48ffe4bd48ea681f2a01c8919c97125e88df.tar.xz
yuzu-bf5e48ffe4bd48ea681f2a01c8919c97125e88df.zip
glasm: Initial implementation of phi nodes on GLASM
Diffstat (limited to 'src/shader_recompiler/frontend/maxwell/structured_control_flow.cpp')
-rw-r--r--src/shader_recompiler/frontend/maxwell/structured_control_flow.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/shader_recompiler/frontend/maxwell/structured_control_flow.cpp b/src/shader_recompiler/frontend/maxwell/structured_control_flow.cpp
index e7e2e9c82..836d4b8aa 100644
--- a/src/shader_recompiler/frontend/maxwell/structured_control_flow.cpp
+++ b/src/shader_recompiler/frontend/maxwell/structured_control_flow.cpp
@@ -704,7 +704,7 @@ private:
704 // Implement if header block 704 // Implement if header block
705 IR::IREmitter ir{*current_block}; 705 IR::IREmitter ir{*current_block};
706 const IR::U1 cond{VisitExpr(ir, *stmt.cond)}; 706 const IR::U1 cond{VisitExpr(ir, *stmt.cond)};
707 ir.BranchConditionRef(cond); 707 ir.DummyReference(cond);
708 708
709 const size_t if_node_index{syntax_list.size()}; 709 const size_t if_node_index{syntax_list.size()};
710 syntax_list.emplace_back(); 710 syntax_list.emplace_back();
@@ -755,7 +755,7 @@ private:
755 // The continue block is located at the end of the loop 755 // The continue block is located at the end of the loop
756 IR::IREmitter ir{*continue_block}; 756 IR::IREmitter ir{*continue_block};
757 const IR::U1 cond{VisitExpr(ir, *stmt.cond)}; 757 const IR::U1 cond{VisitExpr(ir, *stmt.cond)};
758 ir.BranchConditionRef(cond); 758 ir.DummyReference(cond);
759 759
760 IR::Block* const body_block{syntax_list.at(body_block_index).block}; 760 IR::Block* const body_block{syntax_list.at(body_block_index).block};
761 loop_header_block->AddBranch(body_block); 761 loop_header_block->AddBranch(body_block);
@@ -792,7 +792,7 @@ private:
792 792
793 IR::IREmitter ir{*current_block}; 793 IR::IREmitter ir{*current_block};
794 const IR::U1 cond{VisitExpr(ir, *stmt.cond)}; 794 const IR::U1 cond{VisitExpr(ir, *stmt.cond)};
795 ir.BranchConditionRef(cond); 795 ir.DummyReference(cond);
796 current_block->AddBranch(break_block); 796 current_block->AddBranch(break_block);
797 current_block->AddBranch(skip_block); 797 current_block->AddBranch(skip_block);
798 current_block = skip_block; 798 current_block = skip_block;