diff options
author | Lioncash <mathew1800@gmail.com> | 2019-10-05 14:37:39 +0200 |
---|---|---|
committer | Lioncash <mathew1800@gmail.com> | 2019-10-05 15:14:26 +0200 |
commit | 50ad74558566af897db6d7a999101e40ee544108 (patch) | |
tree | 80b6a06b14ca51550a754ee042a465ac204169d7 /src/video_core/shader | |
parent | video_core/{ast, expr}: Use std::move where applicable (diff) | |
download | yuzu-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.cpp | 14 | ||||
-rw-r--r-- | src/video_core/shader/expr.h | 19 |
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; }; |