blob: 35336ed7da288a6b09440c26cd34d511c73a4095 [file] [log] [blame]
telsoa014fcda012018-03-09 14:13:49 +00001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
David Beckecb56cd2018-09-05 12:52:57 +01003// SPDX-License-Identifier: MIT
telsoa014fcda012018-03-09 14:13:49 +00004//
5#pragma once
6
Jim Flynn906f9462019-05-10 13:55:21 +01007#include <armnn/Deprecated.hpp>
telsoa014fcda012018-03-09 14:13:49 +00008#include <armnn/DescriptorsFwd.hpp>
David Beck5eec11d2018-10-04 15:43:17 +01009#include <armnn/Optional.hpp>
Matthew Bentham313e1c82019-03-25 17:37:47 +000010#include <armnn/Tensor.hpp>
11#include <armnn/Types.hpp>
arovir01a6824102018-08-28 17:40:45 +010012
telsoa014fcda012018-03-09 14:13:49 +000013namespace armnn
14{
15
David Becke6488712018-10-16 11:32:20 +010016/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +010017bool IsActivationSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +000018 const TensorInfo& input,
telsoa01c577f2c2018-08-31 09:22:23 +010019 const TensorInfo& output,
telsoa014fcda012018-03-09 14:13:49 +000020 const ActivationDescriptor& descriptor,
21 char* reasonIfUnsupported = nullptr,
22 size_t reasonIfUnsupportedMaxLength = 1024);
23
David Becke6488712018-10-16 11:32:20 +010024/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +010025bool IsAdditionSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +000026 const TensorInfo& input0,
27 const TensorInfo& input1,
28 const TensorInfo& output,
29 char* reasonIfUnsupported = nullptr,
30 size_t reasonIfUnsupportedMaxLength = 1024);
31
David Becke6488712018-10-16 11:32:20 +010032/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +010033bool IsBatchNormalizationSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +000034 const TensorInfo& input,
telsoa01c577f2c2018-08-31 09:22:23 +010035 const TensorInfo& output,
36 const TensorInfo& mean,
37 const TensorInfo& var,
38 const TensorInfo& beta,
39 const TensorInfo& gamma,
telsoa014fcda012018-03-09 14:13:49 +000040 const BatchNormalizationDescriptor& descriptor,
41 char* reasonIfUnsupported = nullptr,
42 size_t reasonIfUnsupportedMaxLength = 1024);
43
David Becke6488712018-10-16 11:32:20 +010044/// Deprecated in favor of IBackend and ILayerSupport interfaces
Éanna Ó Catháin4e1e1362018-11-12 11:36:34 +000045bool IsBatchToSpaceNdSupported(const BackendId& backend,
46 const TensorInfo& input,
47 const TensorInfo& output,
48 const BatchToSpaceNdDescriptor& descriptor,
49 char* reasonIfUnsupported = nullptr,
50 size_t reasonIfUnsupportedMaxLength = 1024);
51
52/// Deprecated in favor of IBackend and ILayerSupport interfaces
Jim Flynn906f9462019-05-10 13:55:21 +010053bool IsConcatSupported(const BackendId& backend,
54 const std::vector<const TensorInfo*> inputs,
55 const TensorInfo& output,
56 const OriginsDescriptor& descriptor,
57 char* reasonIfUnsupported = nullptr,
58 size_t reasonIfUnsupportedMaxLength = 1024);
59
60/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +010061bool IsConstantSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +000062 const TensorInfo& output,
63 char* reasonIfUnsupported = nullptr,
64 size_t reasonIfUnsupportedMaxLength = 1024);
65
David Becke6488712018-10-16 11:32:20 +010066/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +010067bool IsConvertFp16ToFp32Supported(const BackendId& backend,
telsoa01c577f2c2018-08-31 09:22:23 +010068 const TensorInfo& input,
69 const TensorInfo& output,
70 char* reasonIfUnsupported = nullptr,
71 size_t reasonIfUnsupportedMaxLength = 1024);
72
David Becke6488712018-10-16 11:32:20 +010073/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +010074bool IsConvertFp32ToFp16Supported(const BackendId& backend,
telsoa01c577f2c2018-08-31 09:22:23 +010075 const TensorInfo& input,
76 const TensorInfo& output,
77 char* reasonIfUnsupported = nullptr,
78 size_t reasonIfUnsupportedMaxLength = 1024);
79
David Becke6488712018-10-16 11:32:20 +010080/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +010081bool IsConvolution2dSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +000082 const TensorInfo& input,
surmeh013537c2c2018-05-18 16:31:43 +010083 const TensorInfo& output,
telsoa014fcda012018-03-09 14:13:49 +000084 const Convolution2dDescriptor& descriptor,
85 const TensorInfo& weights,
David Beck5eec11d2018-10-04 15:43:17 +010086 const Optional<TensorInfo>& biases,
telsoa014fcda012018-03-09 14:13:49 +000087 char* reasonIfUnsupported = nullptr,
88 size_t reasonIfUnsupportedMaxLength = 1024);
89
David Becke6488712018-10-16 11:32:20 +010090/// Deprecated in favor of IBackend and ILayerSupport interfaces
Nattapat Chaimanowonga9a1cf12018-12-03 16:06:49 +000091bool IsDebugSupported(const BackendId& backend,
92 const TensorInfo& input,
93 const TensorInfo& output,
94 char* reasonIfUnsupported = nullptr,
95 size_t reasonIfUnsupportedMaxLength = 1024);
96
97/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +010098bool IsDepthwiseConvolutionSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +000099 const TensorInfo& input,
telsoa01c577f2c2018-08-31 09:22:23 +0100100 const TensorInfo& output,
telsoa014fcda012018-03-09 14:13:49 +0000101 const DepthwiseConvolution2dDescriptor& descriptor,
102 const TensorInfo& weights,
David Beck5eec11d2018-10-04 15:43:17 +0100103 const Optional<TensorInfo>& biases,
telsoa014fcda012018-03-09 14:13:49 +0000104 char* reasonIfUnsupported = nullptr,
105 size_t reasonIfUnsupportedMaxLength = 1024);
106
David Becke6488712018-10-16 11:32:20 +0100107/// Deprecated in favor of IBackend and ILayerSupport interfaces
Nattapat Chaimanowonge4294fd2019-03-28 09:56:53 +0000108bool IsDequantizeSupported(const BackendId& backend,
109 const TensorInfo& input,
110 const TensorInfo& output,
111 char* reasonIfUnsupported = nullptr,
112 size_t reasonIfUnsupportedMaxLength = 1024);
113
114/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +0100115bool IsDivisionSupported(const BackendId& backend,
Francis Murtaghe7a86a42018-08-29 12:42:10 +0100116 const TensorInfo& input0,
117 const TensorInfo& input1,
118 const TensorInfo& output,
119 char* reasonIfUnsupported = nullptr,
120 size_t reasonIfUnsupportedMaxLength = 1024);
121
David Becke6488712018-10-16 11:32:20 +0100122/// Deprecated in favor of IBackend and ILayerSupport interfaces
Matteo Martincigh992d6dc2019-01-10 17:34:20 +0000123bool IsEqualSupported(const BackendId& backend,
124 const TensorInfo& input0,
125 const TensorInfo& input1,
126 const TensorInfo& output,
127 char* reasonIfUnsupported = nullptr,
128 size_t reasonIfUnsupportedMaxLength = 1024);
David Beckc2044fe2018-09-05 15:00:38 +0100129
David Becke6488712018-10-16 11:32:20 +0100130/// Deprecated in favor of IBackend and ILayerSupport interfaces
Matteo Martincigh992d6dc2019-01-10 17:34:20 +0000131bool IsFakeQuantizationSupported(const BackendId& backend,
132 const TensorInfo& input,
133 const FakeQuantizationDescriptor& descriptor,
134 char* reasonIfUnsupported = nullptr,
135 size_t reasonIfUnsupportedMaxLength = 1024);
136
137/// Deprecated in favor of IBackend and ILayerSupport interfaces
138bool IsFloorSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +0000139 const TensorInfo& input,
Matteo Martincigh992d6dc2019-01-10 17:34:20 +0000140 const TensorInfo& output,
telsoa014fcda012018-03-09 14:13:49 +0000141 char* reasonIfUnsupported = nullptr,
142 size_t reasonIfUnsupportedMaxLength = 1024);
143
David Becke6488712018-10-16 11:32:20 +0100144/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +0100145bool IsFullyConnectedSupported(const BackendId& backend,
telsoa01c577f2c2018-08-31 09:22:23 +0100146 const TensorInfo& input,
147 const TensorInfo& output,
148 const TensorInfo& weights,
149 const TensorInfo& biases,
150 const FullyConnectedDescriptor& descriptor,
telsoa014fcda012018-03-09 14:13:49 +0000151 char* reasonIfUnsupported = nullptr,
152 size_t reasonIfUnsupportedMaxLength = 1024);
153
David Becke6488712018-10-16 11:32:20 +0100154/// Deprecated in favor of IBackend and ILayerSupport interfaces
Matteo Martincigh992d6dc2019-01-10 17:34:20 +0000155bool IsGreaterSupported(const BackendId& backend,
156 const TensorInfo& input0,
157 const TensorInfo& input1,
158 const TensorInfo& output,
159 char* reasonIfUnsupported = nullptr,
160 size_t reasonIfUnsupportedMaxLength = 1024);
161
162/// Deprecated in favor of IBackend and ILayerSupport interfaces
163bool IsInputSupported(const BackendId& backend,
164 const TensorInfo& input,
165 char* reasonIfUnsupported = nullptr,
166 size_t reasonIfUnsupportedMaxLength = 1024);
167
168/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +0100169bool IsL2NormalizationSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +0000170 const TensorInfo& input,
telsoa01c577f2c2018-08-31 09:22:23 +0100171 const TensorInfo& output,
Matteo Martincighbcd3c852018-09-28 14:14:12 +0100172 const L2NormalizationDescriptor& descriptor,
telsoa014fcda012018-03-09 14:13:49 +0000173 char* reasonIfUnsupported = nullptr,
174 size_t reasonIfUnsupportedMaxLength = 1024);
175
David Becke6488712018-10-16 11:32:20 +0100176/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +0100177bool IsLstmSupported(const BackendId& backend, const TensorInfo& input, const TensorInfo& outputStateIn,
telsoa01c577f2c2018-08-31 09:22:23 +0100178 const TensorInfo& cellStateIn, const TensorInfo& scratchBuffer,
179 const TensorInfo& outputStateOut, const TensorInfo& cellStateOut,
180 const TensorInfo& output, const LstmDescriptor& descriptor,
181 const TensorInfo& inputToForgetWeights, const TensorInfo& inputToCellWeights,
182 const TensorInfo& inputToOutputWeights, const TensorInfo& recurrentToForgetWeights,
183 const TensorInfo& recurrentToCellWeights, const TensorInfo& recurrentToOutputWeights,
184 const TensorInfo& forgetGateBias, const TensorInfo& cellBias,
185 const TensorInfo& outputGateBias, const TensorInfo* inputToInputWeights,
186 const TensorInfo* recurrentToInputWeights, const TensorInfo* cellToInputWeights,
187 const TensorInfo* inputGateBias, const TensorInfo* projectionWeights,
188 const TensorInfo* projectionBias, const TensorInfo* cellToForgetWeights,
189 const TensorInfo* cellToOutputWeights, char* reasonIfUnsupported = nullptr,
190 size_t reasonIfUnsupportedMaxLength = 1024);
191
David Becke6488712018-10-16 11:32:20 +0100192/// Deprecated in favor of IBackend and ILayerSupport interfaces
Nattapat Chaimanowong5a4304a2018-11-28 10:44:37 +0000193bool IsMaximumSupported(const BackendId& backend,
194 const TensorInfo& input0,
195 const TensorInfo& input1,
196 const TensorInfo& output,
197 char* reasonIfUnSupported = nullptr,
198 size_t reasonIfUnSupportedMaxLength = 0);
199
200/// Deprecated in favor of IBackend and ILayerSupport interfaces
Matteo Martincigh992d6dc2019-01-10 17:34:20 +0000201bool IsMeanSupported(const BackendId& backend,
202 const TensorInfo& input,
203 const TensorInfo& output,
204 const MeanDescriptor& descriptor,
205 char* reasonIfUnsupported = nullptr,
206 size_t reasonIfUnsupportedMaxLength = 1024);
207
208/// Deprecated in favor of IBackend and ILayerSupport interfaces
209bool IsMemCopySupported(const BackendId& backend,
210 const TensorInfo& input,
211 const TensorInfo& output,
212 char* reasonIfUnsupported = nullptr,
213 size_t reasonIfUnsupportedMaxLength = 1024);
214
215/// Deprecated in favor of IBackend and ILayerSupport interfaces
Nattapat Chaimanowong1f886302019-04-05 13:37:19 +0100216bool IsMergeSupported(const BackendId& backend,
217 const TensorInfo& input0,
218 const TensorInfo& input1,
219 const TensorInfo& output,
220 char* reasonIfUnsupported = nullptr,
221 size_t reasonIfUnsupportedMaxLength = 1024);
222
223/// Deprecated in favor of IBackend and ILayerSupport interfaces
Jim Flynn906f9462019-05-10 13:55:21 +0100224ARMNN_DEPRECATED_MSG("Use IsConcatSupported instead")
David Beck3cc9a622018-10-12 10:38:31 +0100225bool IsMergerSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +0000226 const std::vector<const TensorInfo*> inputs,
Nikhil Raj8599a412018-11-19 14:51:07 +0000227 const TensorInfo& output,
telsoa014fcda012018-03-09 14:13:49 +0000228 const OriginsDescriptor& descriptor,
229 char* reasonIfUnsupported = nullptr,
230 size_t reasonIfUnsupportedMaxLength = 1024);
231
David Becke6488712018-10-16 11:32:20 +0100232/// Deprecated in favor of IBackend and ILayerSupport interfaces
Matteo Martincigh992d6dc2019-01-10 17:34:20 +0000233bool IsMinimumSupported(const BackendId& backend,
234 const TensorInfo& input0,
235 const TensorInfo& input1,
236 const TensorInfo& output,
237 char* reasonIfUnsupported = nullptr,
238 size_t reasonIfUnsupportedMaxLength = 1024);
239
240/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +0100241bool IsMultiplicationSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +0000242 const TensorInfo& input0,
243 const TensorInfo& input1,
telsoa01c577f2c2018-08-31 09:22:23 +0100244 const TensorInfo& output,
telsoa014fcda012018-03-09 14:13:49 +0000245 char* reasonIfUnsupported = nullptr,
246 size_t reasonIfUnsupportedMaxLength = 1024);
247
David Becke6488712018-10-16 11:32:20 +0100248/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +0100249bool IsNormalizationSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +0000250 const TensorInfo& input,
251 const TensorInfo& output,
252 const NormalizationDescriptor& descriptor,
253 char* reasonIfUnsupported = nullptr,
254 size_t reasonIfUnsupportedMaxLength = 1024);
255
David Becke6488712018-10-16 11:32:20 +0100256/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +0100257bool IsOutputSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +0000258 const TensorInfo& output,
259 char* reasonIfUnsupported = nullptr,
260 size_t reasonIfUnsupportedMaxLength = 1024);
261
David Becke6488712018-10-16 11:32:20 +0100262/// Deprecated in favor of IBackend and ILayerSupport interfaces
Matteo Martincigh992d6dc2019-01-10 17:34:20 +0000263bool IsPadSupported(const BackendId& backend,
264 const TensorInfo& input,
265 const TensorInfo& output,
266 const PadDescriptor& descriptor,
267 char* reasonIfUnsupported = nullptr,
268 size_t reasonIfUnsupportedMaxLength = 1024);
269
270/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +0100271bool IsPermuteSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +0000272 const TensorInfo& input,
273 const TensorInfo& output,
274 const PermuteDescriptor& descriptor,
275 char* reasonIfUnsupported = nullptr,
276 size_t reasonIfUnsupportedMaxLength = 1024);
277
David Becke6488712018-10-16 11:32:20 +0100278/// Deprecated in favor of IBackend and ILayerSupport interfaces
Matteo Martincigh49124022019-01-11 13:25:59 +0000279bool IsPreCompiledSupported(const BackendId& backend,
280 const TensorInfo& input,
281 char* reasonIfUnsupported = nullptr,
282 size_t reasonIfUnsupportedMaxLength = 1024);
283
284/// Deprecated in favor of IBackend and ILayerSupport interfaces
Matteo Martincigh0e406ee2019-06-12 15:42:18 +0100285bool IsPreluSupported(const BackendId& backend,
286 const TensorInfo& input,
287 const TensorInfo& alpha,
288 const TensorInfo& output,
289 char* reasonIfUnsupported = nullptr,
290 size_t reasonIfUnsupportedMaxLength = 1024);
291
292/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +0100293bool IsPooling2dSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +0000294 const TensorInfo& input,
295 const TensorInfo& output,
296 const Pooling2dDescriptor& descriptor,
297 char* reasonIfUnsupported = nullptr,
298 size_t reasonIfUnsupportedMaxLength = 1024);
299
David Becke6488712018-10-16 11:32:20 +0100300/// Deprecated in favor of IBackend and ILayerSupport interfaces
Matteo Martincigh992d6dc2019-01-10 17:34:20 +0000301bool IsReshapeSupported(const BackendId& backend,
302 const TensorInfo& input,
303 const ReshapeDescriptor& descriptor,
304 char* reasonIfUnsupported = nullptr,
305 size_t reasonIfUnsupportedMaxLength = 1024);
306
307/// Deprecated in favor of IBackend and ILayerSupport interfaces
Aron Virginas-Tar169d2f12019-07-01 19:01:44 +0100308ARMNN_DEPRECATED_MSG("Use IsResizeSupported instead")
David Beck3cc9a622018-10-12 10:38:31 +0100309bool IsResizeBilinearSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +0000310 const TensorInfo& input,
Sadik Armaganc625f002018-12-17 11:32:16 +0000311 const TensorInfo& output,
telsoa014fcda012018-03-09 14:13:49 +0000312 char* reasonIfUnsupported = nullptr,
313 size_t reasonIfUnsupportedMaxLength = 1024);
314
David Becke6488712018-10-16 11:32:20 +0100315/// Deprecated in favor of IBackend and ILayerSupport interfaces
Aron Virginas-Tar169d2f12019-07-01 19:01:44 +0100316bool IsResizeSupported(const BackendId& backend,
317 const TensorInfo& input,
318 const TensorInfo& output,
319 const ResizeDescriptor& descriptor,
320 char* reasonIfUnsupported = nullptr,
321 size_t reasonIfUnsupportedMaxLength = 1024);
322
323/// Deprecated in favor of IBackend and ILayerSupport interfaces
Matteo Martincigh992d6dc2019-01-10 17:34:20 +0000324bool IsRsqrtSupported(const BackendId& backend,
325 const TensorInfo& input,
326 const TensorInfo& output,
327 char* reasonIfUnsupported = nullptr,
328 size_t reasonIfUnsupportedMaxLength = 1024);
329
330/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +0100331bool IsSoftmaxSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +0000332 const TensorInfo& input,
telsoa01c577f2c2018-08-31 09:22:23 +0100333 const TensorInfo& output,
telsoa014fcda012018-03-09 14:13:49 +0000334 const SoftmaxDescriptor& descriptor,
335 char* reasonIfUnsupported = nullptr,
336 size_t reasonIfUnsupportedMaxLength = 1024);
337
David Becke6488712018-10-16 11:32:20 +0100338/// Deprecated in favor of IBackend and ILayerSupport interfaces
Nattapat Chaimanowong207ef9a2018-11-02 10:57:25 +0000339bool IsSpaceToBatchNdSupported(const BackendId& backend,
340 const TensorInfo& input,
341 const TensorInfo& output,
342 const SpaceToBatchNdDescriptor& descriptor,
343 char* reasonIfUnsupported = nullptr,
344 size_t reasonIfUnsupportedMaxLength = 1024);
345
Aron Virginas-Tar972af152019-06-11 14:14:03 +0100346/// Deprecated in favor of IBackend and ILayerSupport interfaces
347bool IsSpaceToDepthSupported(const BackendId& backend,
348 const TensorInfo& input,
349 const TensorInfo& output,
350 const SpaceToDepthDescriptor& descriptor,
351 char* reasonIfUnsupported = nullptr,
352 size_t reasonIfUnsupportedMaxLength = 1024);
353
Narumol Prangnawarat15eb5832019-05-20 15:31:05 +0100354ARMNN_DEPRECATED_MSG("Use IsSplitterSupported with outputs instead")
355bool IsSplitterSupported(const BackendId& backend,
356 const TensorInfo& input,
357 const ViewsDescriptor& descriptor,
358 char* reasonIfUnsupported = nullptr,
359 size_t reasonIfUnsupportedMaxLength = 1024);
360
Nattapat Chaimanowong207ef9a2018-11-02 10:57:25 +0000361/// Deprecated in favor of IBackend and ILayerSupport interfaces
David Beck3cc9a622018-10-12 10:38:31 +0100362bool IsSplitterSupported(const BackendId& backend,
telsoa014fcda012018-03-09 14:13:49 +0000363 const TensorInfo& input,
Narumol Prangnawarat15eb5832019-05-20 15:31:05 +0100364 const std::vector<std::reference_wrapper<TensorInfo>>& outputs,
telsoa014fcda012018-03-09 14:13:49 +0000365 const ViewsDescriptor& descriptor,
366 char* reasonIfUnsupported = nullptr,
367 size_t reasonIfUnsupportedMaxLength = 1024);
368
David Becke6488712018-10-16 11:32:20 +0100369/// Deprecated in favor of IBackend and ILayerSupport interfaces
Conor Kennedy430b5d82018-11-14 15:28:28 +0000370bool IsStridedSliceSupported(const BackendId& backend,
371 const TensorInfo& input,
372 const TensorInfo& output,
373 const StridedSliceDescriptor& descriptor,
374 char* reasonIfUnsupported = nullptr,
375 size_t reasonIfUnsupportedMaxLength = 1024);
376
kevmay0190539692018-11-29 08:40:19 +0000377/// Deprecated in favor of IBackend and ILayerSupport interfaces
Matteo Martincigh992d6dc2019-01-10 17:34:20 +0000378bool IsSubtractionSupported(const BackendId& backend,
379 const TensorInfo& input0,
380 const TensorInfo& input1,
381 const TensorInfo& output,
382 char* reasonIfUnsupported = nullptr,
383 size_t reasonIfUnsupportedMaxLength = 1024);
Sadik Armaganeff363d2019-04-05 15:25:46 +0100384
385/// Deprecated in favor of IBackend and ILayerSupport interfaces
386bool IsSwitchSupported(const BackendId& backend,
387 const TensorInfo& input0,
388 const TensorInfo& input1,
389 const TensorInfo& output0,
390 const TensorInfo& output1,
391 char* reasonIfUnsupported = nullptr,
392 size_t reasonIfUnsupportedMaxLength = 1024);
Aron Virginas-Tar639fb042019-06-20 14:28:19 +0100393
394/// Deprecated in favor of IBackend and ILayerSupport interfaces
395bool IsTransposeConvolution2dSupported(const BackendId& backend,
396 const TensorInfo& input,
397 const TensorInfo& output,
398 const TransposeConvolution2dDescriptor& descriptor,
399 const TensorInfo& weights,
400 const Optional<TensorInfo>& biases,
401 char* reasonIfUnsupported = nullptr,
402 size_t reasonIfUnsupportedMaxLength = 1024);
telsoa014fcda012018-03-09 14:13:49 +0000403}