diff options
Diffstat (limited to 'src/shader_recompiler/ir_opt/verification_pass.cpp')
| -rw-r--r-- | src/shader_recompiler/ir_opt/verification_pass.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/shader_recompiler/ir_opt/verification_pass.cpp b/src/shader_recompiler/ir_opt/verification_pass.cpp index 8a5adf5a2..32b56eb57 100644 --- a/src/shader_recompiler/ir_opt/verification_pass.cpp +++ b/src/shader_recompiler/ir_opt/verification_pass.cpp | |||
| @@ -14,6 +14,10 @@ namespace Shader::Optimization { | |||
| 14 | static void ValidateTypes(const IR::Function& function) { | 14 | static void ValidateTypes(const IR::Function& function) { |
| 15 | for (const auto& block : function.blocks) { | 15 | for (const auto& block : function.blocks) { |
| 16 | for (const IR::Inst& inst : *block) { | 16 | for (const IR::Inst& inst : *block) { |
| 17 | if (inst.Opcode() == IR::Opcode::Phi) { | ||
| 18 | // Skip validation on phi nodes | ||
| 19 | continue; | ||
| 20 | } | ||
| 17 | const size_t num_args{inst.NumArgs()}; | 21 | const size_t num_args{inst.NumArgs()}; |
| 18 | for (size_t i = 0; i < num_args; ++i) { | 22 | for (size_t i = 0; i < num_args; ++i) { |
| 19 | const IR::Type t1{inst.Arg(i).Type()}; | 23 | const IR::Type t1{inst.Arg(i).Type()}; |