summaryrefslogtreecommitdiff
path: root/src/shader_recompiler/ir_opt/ssa_rewrite_pass.cpp
diff options
context:
space:
mode:
authorGravatar ReinUsesLisp2021-07-12 05:22:01 -0300
committerGravatar ameerj2021-07-22 21:51:40 -0400
commitbf2956d77ab0ad06c4b5505cc9906e51e5878274 (patch)
tree3aae336c0dc3fe65351d5e6e312a214351e2e2fc /src/shader_recompiler/ir_opt/ssa_rewrite_pass.cpp
parentglsl: Clamp shared mem size to GL_MAX_COMPUTE_SHARED_MEMORY_SIZE (diff)
downloadyuzu-bf2956d77ab0ad06c4b5505cc9906e51e5878274.tar.gz
yuzu-bf2956d77ab0ad06c4b5505cc9906e51e5878274.tar.xz
yuzu-bf2956d77ab0ad06c4b5505cc9906e51e5878274.zip
shader: Avoid usage of C++20 ranges to build in clang
Diffstat (limited to 'src/shader_recompiler/ir_opt/ssa_rewrite_pass.cpp')
-rw-r--r--src/shader_recompiler/ir_opt/ssa_rewrite_pass.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/shader_recompiler/ir_opt/ssa_rewrite_pass.cpp b/src/shader_recompiler/ir_opt/ssa_rewrite_pass.cpp
index dcaced83f..53145fb5e 100644
--- a/src/shader_recompiler/ir_opt/ssa_rewrite_pass.cpp
+++ b/src/shader_recompiler/ir_opt/ssa_rewrite_pass.cpp
@@ -14,7 +14,6 @@
14// https://link.springer.com/chapter/10.1007/978-3-642-37051-9_6 14// https://link.springer.com/chapter/10.1007/978-3-642-37051-9_6
15// 15//
16 16
17#include <ranges>
18#include <span> 17#include <span>
19#include <variant> 18#include <variant>
20#include <vector> 19#include <vector>
@@ -243,7 +242,9 @@ public:
243 void SealBlock(IR::Block* block) { 242 void SealBlock(IR::Block* block) {
244 const auto it{incomplete_phis.find(block)}; 243 const auto it{incomplete_phis.find(block)};
245 if (it != incomplete_phis.end()) { 244 if (it != incomplete_phis.end()) {
246 for (auto& [variant, phi] : it->second) { 245 for (auto& pair : it->second) {
246 auto& variant{pair.first};
247 auto& phi{pair.second};
247 std::visit([&](auto& variable) { AddPhiOperands(variable, *phi, block); }, variant); 248 std::visit([&](auto& variable) { AddPhiOperands(variable, *phi, block); }, variant);
248 } 249 }
249 } 250 }
@@ -373,8 +374,9 @@ void VisitBlock(Pass& pass, IR::Block* block) {
373 374
374void SsaRewritePass(IR::Program& program) { 375void SsaRewritePass(IR::Program& program) {
375 Pass pass; 376 Pass pass;
376 for (IR::Block* const block : program.post_order_blocks | std::views::reverse) { 377 const auto end{program.post_order_blocks.rend()};
377 VisitBlock(pass, block); 378 for (auto block = program.post_order_blocks.rbegin(); block != end; ++block) {
379 VisitBlock(pass, *block);
378 } 380 }
379} 381}
380 382