xref: /aosp_15_r20/external/pytorch/test/cpp_extensions/jit_extension.cpp (revision da0073e96a02ea20f0ac840b70461e3646d07c45)
1 #include <torch/extension.h>
2 
3 #include "doubler.h"
4 
5 using namespace at;
6 
7 Tensor exp_add(Tensor x, Tensor y);
8 
tanh_add(Tensor x,Tensor y)9 Tensor tanh_add(Tensor x, Tensor y) {
10   return x.tanh() + y.tanh();
11 }
12 
PYBIND11_MODULE(TORCH_EXTENSION_NAME,m)13 PYBIND11_MODULE(TORCH_EXTENSION_NAME, m) {
14   m.def("tanh_add", &tanh_add, "tanh(x) + tanh(y)");
15   m.def("exp_add", &exp_add, "exp(x) + exp(y)");
16   py::class_<Doubler>(m, "Doubler")
17   .def(py::init<int, int>())
18   .def("forward", &Doubler::forward)
19   .def("get", &Doubler::get);
20 }
21