summaryrefslogtreecommitdiffstats
path: root/src/video_core/shader/shader_ir.h
diff options
context:
space:
mode:
authorLioncash <mathew1800@gmail.com>2019-05-19 10:47:00 +0200
committerLioncash <mathew1800@gmail.com>2019-05-19 14:23:14 +0200
commit212b148923f1d2d193d79e75dde565cedc095252 (patch)
tree192d530fa48805357d615c5d6d45aec1d3c1743f /src/video_core/shader/shader_ir.h
parentshader/shader_ir: Remove unnecessary template parameter packs from Operation() overloads where applicable (diff)
downloadyuzu-212b148923f1d2d193d79e75dde565cedc095252.tar
yuzu-212b148923f1d2d193d79e75dde565cedc095252.tar.gz
yuzu-212b148923f1d2d193d79e75dde565cedc095252.tar.bz2
yuzu-212b148923f1d2d193d79e75dde565cedc095252.tar.lz
yuzu-212b148923f1d2d193d79e75dde565cedc095252.tar.xz
yuzu-212b148923f1d2d193d79e75dde565cedc095252.tar.zst
yuzu-212b148923f1d2d193d79e75dde565cedc095252.zip
Diffstat (limited to 'src/video_core/shader/shader_ir.h')
-rw-r--r--src/video_core/shader/shader_ir.h21
1 files changed, 6 insertions, 15 deletions
diff --git a/src/video_core/shader/shader_ir.h b/src/video_core/shader/shader_ir.h
index 5f3aef7ce..b93cde71a 100644
--- a/src/video_core/shader/shader_ir.h
+++ b/src/video_core/shader/shader_ir.h
@@ -336,32 +336,23 @@ using Meta = std::variant<MetaArithmetic, MetaTexture, Tegra::Shader::HalfType>;
/// Holds any kind of operation that can be done in the IR
class OperationNode final {
public:
- template <typename... T>
- explicit constexpr OperationNode(OperationCode code) : code{code}, meta{} {}
+ explicit OperationNode(OperationCode code) : code{code} {}
- template <typename... T>
- explicit constexpr OperationNode(OperationCode code, Meta&& meta)
- : code{code}, meta{std::move(meta)} {}
+ explicit OperationNode(OperationCode code, Meta&& meta) : code{code}, meta{std::move(meta)} {}
template <typename... T>
- explicit constexpr OperationNode(OperationCode code, const T*... operands)
+ explicit OperationNode(OperationCode code, const T*... operands)
: OperationNode(code, {}, operands...) {}
template <typename... T>
- explicit constexpr OperationNode(OperationCode code, Meta&& meta, const T*... operands_)
- : code{code}, meta{std::move(meta)} {
-
- auto operands_list = {operands_...};
- for (auto& operand : operands_list) {
- operands.push_back(operand);
- }
- }
+ explicit OperationNode(OperationCode code, Meta&& meta, const T*... operands_)
+ : code{code}, meta{std::move(meta)}, operands{operands_...} {}
explicit OperationNode(OperationCode code, Meta&& meta, std::vector<Node>&& operands)
: code{code}, meta{meta}, operands{std::move(operands)} {}
explicit OperationNode(OperationCode code, std::vector<Node>&& operands)
- : code{code}, meta{}, operands{std::move(operands)} {}
+ : code{code}, operands{std::move(operands)} {}
OperationCode GetCode() const {
return code;