Array<To> createBinaryNode(const Array<Ti> &lhs, const Array<Ti> &rhs, const af::dim4 &odims) { BinOp<To, Ti, op> bop; common::Node_ptr lhs_node = lhs.getNode(); common::Node_ptr rhs_node = rhs.getNode(); common::BinaryNode *node = new common::BinaryNode(getFullName<To>(), shortname<To>(true), bop.name(), lhs_node, rhs_node, (int)(op)); return createNodeArray<To>(odims, common::Node_ptr(node)); }
Array<To> createBinaryNode(const Array<Ti> &lhs, const Array<Ti> &rhs, const af::dim4 &odims) { BinOp<To, Ti, op> bop; JIT::Node_ptr lhs_node = lhs.getNode(); JIT::Node_ptr rhs_node = rhs.getNode(); JIT::BinaryNode *node = new JIT::BinaryNode(dtype_traits<To>::getName(), shortname<To>(true), bop.name(), lhs_node, rhs_node, (int)(op)); return createNodeArray<To>(odims, JIT::Node_ptr( reinterpret_cast<JIT::Node *>(node))); }