void InnerProd::generate(const std::vector<int>& arg, const std::vector<int>& res, CodeGenerator& g) const { g.assign(g.body, g.workel(res[0]), g.inner_prod(dep().nnz(), g.work(arg[0], dep(0).nnz()), g.work(arg[1], dep(1).nnz()))); }
void Dot::generate(CodeGenerator& g, const std::string& mem, const std::vector<int>& arg, const std::vector<int>& res) const { g.assign(g.body, g.workel(res[0]), g.dot(dep().nnz(), g.work(arg[0], dep(0).nnz()), g.work(arg[1], dep(1).nnz()))); }