summaryrefslogtreecommitdiffstats
path: root/src/video_core/shader
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2019-10-05 14:37:39 +0200
committerLioncash <mathew1800@gmail.com>2019-10-05 15:14:26 +0200
commit50ad74558566af897db6d7a999101e40ee544108 (patch)
tree80b6a06b14ca51550a754ee042a465ac204169d7 /src/video_core/shader
parentvideo_core/{ast, expr}: Use std::move where applicable (diff)
downloadyuzu-50ad74558566af897db6d7a999101e40ee544108.tar
yuzu-50ad74558566af897db6d7a999101e40ee544108.tar.gz
yuzu-50ad74558566af897db6d7a999101e40ee544108.tar.bz2
yuzu-50ad74558566af897db6d7a999101e40ee544108.tar.lz
yuzu-50ad74558566af897db6d7a999101e40ee544108.tar.xz
yuzu-50ad74558566af897db6d7a999101e40ee544108.tar.zst
yuzu-50ad74558566af897db6d7a999101e40ee544108.zip
Diffstat (limited to 'src/video_core/shader')
-rw-r--r--src/video_core/shader/expr.cpp14
-rw-r--r--src/video_core/shader/expr.h19
2 files changed, 32 insertions, 1 deletions
diff --git a/src/video_core/shader/expr.cpp b/src/video_core/shader/expr.cpp
index 39df7a927..2647865d4 100644
--- a/src/video_core/shader/expr.cpp
+++ b/src/video_core/shader/expr.cpp
@@ -22,12 +22,24 @@ bool ExprAnd::operator==(const ExprAnd& b) const {
return (*operand1 == *b.operand1) && (*operand2 == *b.operand2);
}
+bool ExprAnd::operator!=(const ExprAnd& b) const {
+ return !operator==(b);
+}
+
bool ExprOr::operator==(const ExprOr& b) const {
return (*operand1 == *b.operand1) && (*operand2 == *b.operand2);
}
+bool ExprOr::operator!=(const ExprOr& b) const {
+ return !operator==(b);
+}
+
bool ExprNot::operator==(const ExprNot& b) const {
- return (*operand1 == *b.operand1);
+ return *operand1 == *b.operand1;
+}
+
+bool ExprNot::operator!=(const ExprNot& b) const {
+ return !operator==(b);
}
Expr MakeExprNot(Expr first) {
diff --git a/src/video_core/shader/expr.h b/src/video_core/shader/expr.h
index 1f1638520..45695c0ed 100644
--- a/src/video_core/shader/expr.h
+++ b/src/video_core/shader/expr.h
@@ -31,6 +31,7 @@ public:
explicit ExprAnd(Expr a, Expr b) : operand1{std::move(a)}, operand2{std::move(b)} {}
bool operator==(const ExprAnd& b) const;
+ bool operator!=(const ExprAnd& b) const;
Expr operand1;
Expr operand2;
@@ -41,6 +42,7 @@ public:
explicit ExprOr(Expr a, Expr b) : operand1{std::move(a)}, operand2{std::move(b)} {}
bool operator==(const ExprOr& b) const;
+ bool operator!=(const ExprOr& b) const;
Expr operand1;
Expr operand2;
@@ -51,6 +53,7 @@ public:
explicit ExprNot(Expr a) : operand1{std::move(a)} {}
bool operator==(const ExprNot& b) const;
+ bool operator!=(const ExprNot& b) const;
Expr operand1;
};
@@ -63,6 +66,10 @@ public:
return var_index == b.var_index;
}
+ bool operator!=(const ExprVar& b) const {
+ return !operator==(b);
+ }
+
u32 var_index;
};
@@ -74,6 +81,10 @@ public:
return predicate == b.predicate;
}
+ bool operator!=(const ExprPredicate& b) const {
+ return !operator==(b);
+ }
+
u32 predicate;
};
@@ -85,6 +96,10 @@ public:
return cc == b.cc;
}
+ bool operator!=(const ExprCondCode& b) const {
+ return !operator==(b);
+ }
+
ConditionCode cc;
};
@@ -96,6 +111,10 @@ public:
return value == b.value;
}
+ bool operator!=(const ExprBoolean& b) const {
+ return !operator==(b);
+ }
+
bool value;
};