summaryrefslogtreecommitdiff
path: root/src/video_core/shader/decode.cpp
diff options
context:
space:
mode:
authorGravatar ReinUsesLisp2020-05-09 04:55:15 -0300
committerGravatar ReinUsesLisp2020-05-09 04:55:15 -0300
commit4e57f9d5cfc32b37fe7b6a1563ca2101ec59887c (patch)
tree057619ab05268d2c757dda7f5cec30c319a56bcb /src/video_core/shader/decode.cpp
parentMerge pull request #3879 from lioncash/global2 (diff)
downloadyuzu-4e57f9d5cfc32b37fe7b6a1563ca2101ec59887c.tar.gz
yuzu-4e57f9d5cfc32b37fe7b6a1563ca2101ec59887c.tar.xz
yuzu-4e57f9d5cfc32b37fe7b6a1563ca2101ec59887c.zip
shader_ir: Separate float-point comparisons in ordered and unordered
This allows us to use native SPIR-V instructions without having to manually check for NAN.
Diffstat (limited to 'src/video_core/shader/decode.cpp')
-rw-r--r--src/video_core/shader/decode.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/video_core/shader/decode.cpp b/src/video_core/shader/decode.cpp
index a75a5cc63..eeac328a6 100644
--- a/src/video_core/shader/decode.cpp
+++ b/src/video_core/shader/decode.cpp
@@ -255,7 +255,7 @@ void ShaderIR::InsertControlFlow(NodeBlock& bb, const ShaderBlock& block) {
255 Node n = Operation(OperationCode::Branch, Immediate(branch_case.address)); 255 Node n = Operation(OperationCode::Branch, Immediate(branch_case.address));
256 Node op_b = Immediate(branch_case.cmp_value); 256 Node op_b = Immediate(branch_case.cmp_value);
257 Node condition = 257 Node condition =
258 GetPredicateComparisonInteger(Tegra::Shader::PredCondition::Equal, false, op_a, op_b); 258 GetPredicateComparisonInteger(Tegra::Shader::PredCondition::EQ, false, op_a, op_b);
259 auto result = Conditional(condition, {n}); 259 auto result = Conditional(condition, {n});
260 bb.push_back(result); 260 bb.push_back(result);
261 global_code.push_back(result); 261 global_code.push_back(result);