summaryrefslogtreecommitdiffstats
path: root/src/video_core/shader/glsl_decompiler.cpp
diff options
context:
space:
mode:
authorReinUsesLisp <reinuseslisp@airmail.cc>2018-12-24 04:51:52 +0100
committerReinUsesLisp <reinuseslisp@airmail.cc>2019-01-15 21:54:53 +0100
commitb11e0b94c7ce0d965a6149c98c48cda967ec3c04 (patch)
tree98fcb050f6d94ae33d1a26a020834d5c1bdf6b33 /src/video_core/shader/glsl_decompiler.cpp
parentshader_decode: Rework HSETP2 (diff)
downloadyuzu-b11e0b94c7ce0d965a6149c98c48cda967ec3c04.tar
yuzu-b11e0b94c7ce0d965a6149c98c48cda967ec3c04.tar.gz
yuzu-b11e0b94c7ce0d965a6149c98c48cda967ec3c04.tar.bz2
yuzu-b11e0b94c7ce0d965a6149c98c48cda967ec3c04.tar.lz
yuzu-b11e0b94c7ce0d965a6149c98c48cda967ec3c04.tar.xz
yuzu-b11e0b94c7ce0d965a6149c98c48cda967ec3c04.tar.zst
yuzu-b11e0b94c7ce0d965a6149c98c48cda967ec3c04.zip
Diffstat (limited to 'src/video_core/shader/glsl_decompiler.cpp')
-rw-r--r--src/video_core/shader/glsl_decompiler.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/video_core/shader/glsl_decompiler.cpp b/src/video_core/shader/glsl_decompiler.cpp
index 8a2cc3c31..2e9323df7 100644
--- a/src/video_core/shader/glsl_decompiler.cpp
+++ b/src/video_core/shader/glsl_decompiler.cpp
@@ -1012,6 +1012,11 @@ private:
return GenerateUnary(operation, "!", Type::Bool, Type::Bool, false);
}
+ std::string LogicalPick2(Operation operation) {
+ const std::string pair = VisitOperand(operation, 0, Type::Bool2);
+ return pair + '[' + VisitOperand(operation, 1, Type::Uint) + ']';
+ }
+
std::string LogicalAll2(Operation operation) {
return GenerateUnary(operation, "all", Type::Bool, Type::Bool2);
}
@@ -1306,6 +1311,7 @@ private:
&LogicalOr,
&LogicalXor,
&LogicalNegate,
+ &LogicalPick2,
&LogicalAll2,
&LogicalAny2,