diff options
author | ReinUsesLisp <reinuseslisp@airmail.cc> | 2018-12-21 03:01:03 +0100 |
---|---|---|
committer | ReinUsesLisp <reinuseslisp@airmail.cc> | 2019-01-15 21:54:49 +0100 |
commit | bf07272695b718d09f8ef532539ba625dab01d3c (patch) | |
tree | 756b0848eb8b0e94b4e650a2b3371a32e46b63a4 /src/video_core/shader/shader_ir.h | |
parent | shader_ir: Add half float helpers (diff) | |
download | yuzu-bf07272695b718d09f8ef532539ba625dab01d3c.tar yuzu-bf07272695b718d09f8ef532539ba625dab01d3c.tar.gz yuzu-bf07272695b718d09f8ef532539ba625dab01d3c.tar.bz2 yuzu-bf07272695b718d09f8ef532539ba625dab01d3c.tar.lz yuzu-bf07272695b718d09f8ef532539ba625dab01d3c.tar.xz yuzu-bf07272695b718d09f8ef532539ba625dab01d3c.tar.zst yuzu-bf07272695b718d09f8ef532539ba625dab01d3c.zip |
Diffstat (limited to 'src/video_core/shader/shader_ir.h')
-rw-r--r-- | src/video_core/shader/shader_ir.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/video_core/shader/shader_ir.h b/src/video_core/shader/shader_ir.h index f3b17d2eb..372ed10da 100644 --- a/src/video_core/shader/shader_ir.h +++ b/src/video_core/shader/shader_ir.h @@ -660,6 +660,15 @@ private: /// Conditionally absolute/negated half float pair. Absolute is applied first Node GetOperandAbsNegHalf(Node value, bool absolute, bool negate); + /// Returns a predicate comparing two floats + Node GetPredicateComparisonFloat(Tegra::Shader::PredCondition condition, Node op_a, Node op_b); + /// Returns a predicate comparing two integers + Node GetPredicateComparisonInteger(Tegra::Shader::PredCondition condition, bool is_signed, + Node op_a, Node op_b); + /// Returns a predicate comparing two half floats. meta consumes how both pairs will be compared + Node GetPredicateComparisonHalf(Tegra::Shader::PredCondition condition, + const MetaHalfArithmetic& meta, Node op_a, Node op_b); + template <typename... T> inline Node Operation(OperationCode code, const T*... operands) { return StoreNode(OperationNode(code, operands...)); |