@@ -48,13 +48,13 @@ namespace py = pybind11;
48
48
namespace td_ns = dpctl::tensor::type_dispatch;
49
49
namespace tu_ns = dpctl::tensor::type_utils;
50
50
51
- template <typename argT, typename resT> struct LogicalNotFunctor
51
+ template <typename argT, typename resT>
52
+ struct LogicalNotFunctor
52
53
{
53
54
static_assert (std::is_same_v<resT, bool >);
54
55
55
- using is_constant = typename std::disjunction<std::is_same<argT, bool >,
56
- std::is_integral<argT>>;
57
- static constexpr resT constant_value = false ;
56
+ using is_constant = typename std::false_type;
57
+ // constexpr resT constant_value = resT{};
58
58
using supports_vec = typename std::false_type;
59
59
using supports_sg_loadstore = typename std::negation<
60
60
std::disjunction<tu_ns::is_complex<resT>, tu_ns::is_complex<argT>>>;
@@ -84,7 +84,8 @@ using LogicalNotStridedFunctor =
84
84
IndexerT,
85
85
LogicalNotFunctor<argTy, resTy>>;
86
86
87
- template <typename argTy> struct LogicalNotOutputType
87
+ template <typename argTy>
88
+ struct LogicalNotOutputType
88
89
{
89
90
using value_type = bool ;
90
91
};
@@ -94,19 +95,20 @@ class logical_not_contig_kernel;
94
95
95
96
template <typename argTy>
96
97
sycl::event
97
- logical_not_contig_impl (sycl::queue exec_q,
98
- size_t nelems,
99
- const char *arg_p,
100
- char *res_p,
101
- const std::vector<sycl::event> &depends = {})
98
+ logical_not_contig_impl (sycl::queue exec_q,
99
+ size_t nelems,
100
+ const char *arg_p,
101
+ char *res_p,
102
+ const std::vector<sycl::event> &depends = {})
102
103
{
103
104
return elementwise_common::unary_contig_impl<argTy, LogicalNotOutputType,
104
105
LogicalNotContigFunctor,
105
106
logical_not_contig_kernel>(
106
107
exec_q, nelems, arg_p, res_p, depends);
107
108
}
108
109
109
- template <typename fnT, typename T> struct LogicalNotContigFactory
110
+ template <typename fnT, typename T>
111
+ struct LogicalNotContigFactory
110
112
{
111
113
fnT get ()
112
114
{
@@ -115,7 +117,8 @@ template <typename fnT, typename T> struct LogicalNotContigFactory
115
117
}
116
118
};
117
119
118
- template <typename fnT, typename T> struct LogicalNotTypeMapFactory
120
+ template <typename fnT, typename T>
121
+ struct LogicalNotTypeMapFactory
119
122
{
120
123
/* ! @brief get typeid for output type of sycl::logical_not(T x) */
121
124
std::enable_if_t <std::is_same<fnT, int >::value, int > get ()
@@ -130,16 +133,16 @@ class logical_not_strided_kernel;
130
133
131
134
template <typename argTy>
132
135
sycl::event
133
- logical_not_strided_impl (sycl::queue exec_q,
134
- size_t nelems,
135
- int nd,
136
- const py::ssize_t *shape_and_strides,
137
- const char *arg_p,
138
- py::ssize_t arg_offset,
139
- char *res_p,
140
- py::ssize_t res_offset,
141
- const std::vector<sycl::event> &depends,
142
- const std::vector<sycl::event> &additional_depends)
136
+ logical_not_strided_impl (sycl::queue exec_q,
137
+ size_t nelems,
138
+ int nd,
139
+ const py::ssize_t *shape_and_strides,
140
+ const char *arg_p,
141
+ py::ssize_t arg_offset,
142
+ char *res_p,
143
+ py::ssize_t res_offset,
144
+ const std::vector<sycl::event> &depends,
145
+ const std::vector<sycl::event> &additional_depends)
143
146
{
144
147
return elementwise_common::unary_strided_impl<argTy, LogicalNotOutputType,
145
148
LogicalNotStridedFunctor,
@@ -148,7 +151,8 @@ logical_not_strided_impl(sycl::queue exec_q,
148
151
res_offset, depends, additional_depends);
149
152
}
150
153
151
- template <typename fnT, typename T> struct LogicalNotStridedFactory
154
+ template <typename fnT, typename T>
155
+ struct LogicalNotStridedFactory
152
156
{
153
157
fnT get ()
154
158
{
0 commit comments