summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar ReinUsesLisp2019-07-26 00:12:38 -0300
committerGravatar ReinUsesLisp2019-07-26 00:12:38 -0300
commit77f1a676a102aa56f929e4a3d43948c5198fac51 (patch)
treee65ad6ac3328ea59dedb4d7c29e3424da8707c53
parentMerge pull request #2739 from lioncash/cflow (diff)
downloadyuzu-77f1a676a102aa56f929e4a3d43948c5198fac51.tar.gz
yuzu-77f1a676a102aa56f929e4a3d43948c5198fac51.tar.xz
yuzu-77f1a676a102aa56f929e4a3d43948c5198fac51.zip
decode/half_set_predicate: Fix predicates
-rw-r--r--src/video_core/shader/decode/half_set_predicate.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/video_core/shader/decode/half_set_predicate.cpp b/src/video_core/shader/decode/half_set_predicate.cpp
index a82a6a15c..a6c082cc9 100644
--- a/src/video_core/shader/decode/half_set_predicate.cpp
+++ b/src/video_core/shader/decode/half_set_predicate.cpp
@@ -52,15 +52,15 @@ u32 ShaderIR::DecodeHalfSetPredicate(NodeBlock& bb, u32 pc) {
52 } 52 }
53 53
54 const OperationCode combiner = GetPredicateCombiner(instr.hsetp2.op); 54 const OperationCode combiner = GetPredicateCombiner(instr.hsetp2.op);
55 const Node pred39 = GetPredicate(instr.hsetp2.pred39, instr.hsetp2.neg_pred); 55 const Node combined_pred = GetPredicate(instr.hsetp2.pred3, instr.hsetp2.neg_pred);
56 56
57 const auto Write = [&](u64 dest, Node src) { 57 const auto Write = [&](u64 dest, Node src) {
58 SetPredicate(bb, dest, Operation(combiner, std::move(src), pred39)); 58 SetPredicate(bb, dest, Operation(combiner, std::move(src), combined_pred));
59 }; 59 };
60 60
61 const Node comparison = GetPredicateComparisonHalf(cond, op_a, op_b); 61 const Node comparison = GetPredicateComparisonHalf(cond, op_a, op_b);
62 const u64 first = instr.hsetp2.pred0; 62 const u64 first = instr.hsetp2.pred0;
63 const u64 second = instr.hsetp2.pred3; 63 const u64 second = instr.hsetp2.pred39;
64 if (h_and) { 64 if (h_and) {
65 const Node joined = Operation(OperationCode::LogicalAnd2, comparison); 65 const Node joined = Operation(OperationCode::LogicalAnd2, comparison);
66 Write(first, joined); 66 Write(first, joined);