summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorReinUsesLisp <reinuseslisp@airmail.cc>2018-12-25 03:46:14 -0300
committerReinUsesLisp <reinuseslisp@airmail.cc>2019-01-15 17:54:53 -0300
commitc68c13e1aaef63674474861fd7be528a49b72206 (patch)
treeb5f3a340f94dde88e86679031c293cbff0735cdb
parent8b5588e7764dcae54a12b1a61cbee2124d8313a2 (diff)
shader_decode: Fixup R2P
-rw-r--r--src/video_core/shader/decode/register_set_predicate.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/video_core/shader/decode/register_set_predicate.cpp b/src/video_core/shader/decode/register_set_predicate.cpp
index bbfe2ce05..06a3c7539 100644
--- a/src/video_core/shader/decode/register_set_predicate.cpp
+++ b/src/video_core/shader/decode/register_set_predicate.cpp
@@ -37,10 +37,11 @@ u32 ShaderIR::DecodeRegisterSetPredicate(BasicBlock& bb, u32 pc) {
const Node apply_compare =
Operation(OperationCode::UBitwiseAnd, NO_PRECISE, apply_mask, shift);
- const Node condition = Operation(OperationCode::LogicalUEqual, apply_compare, Immediate(0));
+ const Node condition =
+ Operation(OperationCode::LogicalUNotEqual, apply_compare, Immediate(0));
const Node value_compare = Operation(OperationCode::UBitwiseAnd, NO_PRECISE, mask, shift);
- const Node value = Operation(OperationCode::LogicalUEqual, value_compare, Immediate(0));
+ const Node value = Operation(OperationCode::LogicalUNotEqual, value_compare, Immediate(0));
const Node code = Operation(OperationCode::LogicalAssign, GetPredicate(pred), value);
bb.push_back(Conditional(condition, {code}));