blob: aa46a346e9846d48adc4717fb1fd90fe24e226e6 [file] [log] [blame]
Anthony Barbier6ff3b192017-09-04 18:44:23 +01001/*
Georgios Pinitas6d9d6f42018-12-24 16:10:47 +00002 * Copyright (c) 2016-2019 ARM Limited.
Anthony Barbier6ff3b192017-09-04 18:44:23 +01003 *
4 * SPDX-License-Identifier: MIT
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a copy
7 * of this software and associated documentation files (the "Software"), to
8 * deal in the Software without restriction, including without limitation the
9 * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
10 * sell copies of the Software, and to permit persons to whom the Software is
11 * furnished to do so, subject to the following conditions:
12 *
13 * The above copyright notice and this permission notice shall be included in all
14 * copies or substantial portions of the Software.
15 *
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22 * SOFTWARE.
23 */
24#ifndef __ARM_COMPUTE_NEKERNELS_H__
25#define __ARM_COMPUTE_NEKERNELS_H__
26
27/* Header regrouping all the NEON kernels */
28#include "arm_compute/core/NEON/kernels/NEAbsoluteDifferenceKernel.h"
29#include "arm_compute/core/NEON/kernels/NEAccumulateKernel.h"
30#include "arm_compute/core/NEON/kernels/NEActivationLayerKernel.h"
31#include "arm_compute/core/NEON/kernels/NEArithmeticAdditionKernel.h"
32#include "arm_compute/core/NEON/kernels/NEArithmeticSubtractionKernel.h"
Vidhya Sudhan Loganathan338595b2019-06-28 14:09:53 +010033#include "arm_compute/core/NEON/kernels/NEBatchConcatenateLayerKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010034#include "arm_compute/core/NEON/kernels/NEBatchNormalizationLayerKernel.h"
giuros01fc1da132019-02-18 16:48:35 +000035#include "arm_compute/core/NEON/kernels/NEBatchToSpaceLayerKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010036#include "arm_compute/core/NEON/kernels/NEBitwiseAndKernel.h"
37#include "arm_compute/core/NEON/kernels/NEBitwiseNotKernel.h"
38#include "arm_compute/core/NEON/kernels/NEBitwiseOrKernel.h"
39#include "arm_compute/core/NEON/kernels/NEBitwiseXorKernel.h"
Pablo Telloed0e35b2019-08-30 14:44:52 +010040#include "arm_compute/core/NEON/kernels/NEBoundingBoxTransformKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010041#include "arm_compute/core/NEON/kernels/NEBox3x3Kernel.h"
42#include "arm_compute/core/NEON/kernels/NECannyEdgeKernel.h"
43#include "arm_compute/core/NEON/kernels/NEChannelCombineKernel.h"
44#include "arm_compute/core/NEON/kernels/NEChannelExtractKernel.h"
Georgios Pinitasf1adf112018-11-02 12:54:18 +000045#include "arm_compute/core/NEON/kernels/NEChannelShuffleLayerKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010046#include "arm_compute/core/NEON/kernels/NECol2ImKernel.h"
47#include "arm_compute/core/NEON/kernels/NEColorConvertKernel.h"
Giorgio Arena657bdb32018-04-26 18:52:01 +010048#include "arm_compute/core/NEON/kernels/NEConvertFullyConnectedWeightsKernel.h"
Georgios Pinitasdbdea0d2019-10-16 19:21:40 +010049#include "arm_compute/core/NEON/kernels/NEConvertQuantizedSignednessKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010050#include "arm_compute/core/NEON/kernels/NEConvolutionKernel.h"
Michalis Spyrou1d382592018-08-13 17:28:04 +010051#include "arm_compute/core/NEON/kernels/NECopyKernel.h"
George Wort05398a92019-01-25 15:38:33 +000052#include "arm_compute/core/NEON/kernels/NECropKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010053#include "arm_compute/core/NEON/kernels/NECumulativeDistributionKernel.h"
Giorgio Arena04a8f8c2017-11-23 11:45:24 +000054#include "arm_compute/core/NEON/kernels/NEDepthConcatenateLayerKernel.h"
55#include "arm_compute/core/NEON/kernels/NEDepthConvertLayerKernel.h"
Michalis Spyrou22f917c2019-05-21 13:30:10 +010056#include "arm_compute/core/NEON/kernels/NEDepthToSpaceLayerKernel.h"
Giorgio Arena04a8f8c2017-11-23 11:45:24 +000057#include "arm_compute/core/NEON/kernels/NEDepthwiseConvolutionLayer3x3Kernel.h"
Gian Marco Iodicebd9097d2019-07-26 15:31:02 +010058#include "arm_compute/core/NEON/kernels/NEDepthwiseConvolutionLayerNativeKernel.h"
Anthony Barbier14e7d142017-09-14 12:05:05 +010059#include "arm_compute/core/NEON/kernels/NEDequantizationLayerKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010060#include "arm_compute/core/NEON/kernels/NEDerivativeKernel.h"
61#include "arm_compute/core/NEON/kernels/NEDilateKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010062#include "arm_compute/core/NEON/kernels/NEDirectConvolutionLayerKernel.h"
Michalis Spyroub91e34c2017-12-20 15:50:55 +000063#include "arm_compute/core/NEON/kernels/NEDirectConvolutionLayerOutputStageKernel.h"
giuros0192fd9432018-12-03 17:30:00 +000064#include "arm_compute/core/NEON/kernels/NEElementwiseOperationKernel.h"
George Wort5a97b282018-12-21 16:21:04 +000065#include "arm_compute/core/NEON/kernels/NEElementwiseUnaryKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010066#include "arm_compute/core/NEON/kernels/NEErodeKernel.h"
giuros0114c4e0f2019-03-26 17:44:40 +000067#include "arm_compute/core/NEON/kernels/NEFFTDigitReverseKernel.h"
68#include "arm_compute/core/NEON/kernels/NEFFTRadixStageKernel.h"
giuros0105fb4482019-03-26 17:44:40 +000069#include "arm_compute/core/NEON/kernels/NEFFTScaleKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010070#include "arm_compute/core/NEON/kernels/NEFastCornersKernel.h"
71#include "arm_compute/core/NEON/kernels/NEFillArrayKernel.h"
72#include "arm_compute/core/NEON/kernels/NEFillBorderKernel.h"
73#include "arm_compute/core/NEON/kernels/NEFillInnerBorderKernel.h"
Giorgio Arena368e6352018-08-20 15:06:07 +010074#include "arm_compute/core/NEON/kernels/NEFlattenLayerKernel.h"
Georgios Pinitasd8e765b2017-08-02 13:44:33 +010075#include "arm_compute/core/NEON/kernels/NEFloorKernel.h"
giuros0115ecc9a2018-12-06 10:47:34 +000076#include "arm_compute/core/NEON/kernels/NEFuseBatchNormalizationKernel.h"
Anthony Barbier6a5627a2017-09-26 14:42:02 +010077#include "arm_compute/core/NEON/kernels/NEGEMMAssemblyBaseKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010078#include "arm_compute/core/NEON/kernels/NEGEMMInterleave4x4Kernel.h"
79#include "arm_compute/core/NEON/kernels/NEGEMMLowpMatrixMultiplyKernel.h"
Gian Marcoe75a02b2017-11-08 12:24:09 +000080#include "arm_compute/core/NEON/kernels/NEGEMMLowpOffsetContributionKernel.h"
George Wort2d7e6832019-02-22 16:37:41 +000081#include "arm_compute/core/NEON/kernels/NEGEMMLowpOffsetContributionOutputStageKernel.h"
Gian Marco Iodicebc415af2019-06-13 15:58:32 +010082#include "arm_compute/core/NEON/kernels/NEGEMMLowpQuantizeDownInt32ToInt16ScaleByFixedPointKernel.h"
Gian Marco58c57942017-11-28 09:10:03 +000083#include "arm_compute/core/NEON/kernels/NEGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel.h"
Gian Marcoe75a02b2017-11-08 12:24:09 +000084#include "arm_compute/core/NEON/kernels/NEGEMMLowpQuantizeDownInt32ToUint8ScaleKernel.h"
Gian Marco Iodiceab182122017-10-09 15:05:40 +010085#include "arm_compute/core/NEON/kernels/NEGEMMLowpReductionKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010086#include "arm_compute/core/NEON/kernels/NEGEMMMatrixAccumulateBiasesKernel.h"
87#include "arm_compute/core/NEON/kernels/NEGEMMMatrixAdditionKernel.h"
88#include "arm_compute/core/NEON/kernels/NEGEMMMatrixMultiplyKernel.h"
Michalis Spyroub7b31532017-11-23 12:10:21 +000089#include "arm_compute/core/NEON/kernels/NEGEMMMatrixVectorMultiplyKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010090#include "arm_compute/core/NEON/kernels/NEGEMMTranspose1xWKernel.h"
John Kesapides2dce6cc2019-01-14 09:47:09 +000091#include "arm_compute/core/NEON/kernels/NEGatherKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010092#include "arm_compute/core/NEON/kernels/NEGaussian3x3Kernel.h"
93#include "arm_compute/core/NEON/kernels/NEGaussian5x5Kernel.h"
94#include "arm_compute/core/NEON/kernels/NEGaussianPyramidKernel.h"
Pablo Telloc9564cb2019-09-13 10:20:25 +010095#include "arm_compute/core/NEON/kernels/NEGenerateProposalsLayerKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +010096#include "arm_compute/core/NEON/kernels/NEHOGDescriptorKernel.h"
97#include "arm_compute/core/NEON/kernels/NEHOGDetectorKernel.h"
98#include "arm_compute/core/NEON/kernels/NEHarrisCornersKernel.h"
Pablo Tello3dd5b682019-03-04 14:14:02 +000099#include "arm_compute/core/NEON/kernels/NEHeightConcatenateLayerKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +0100100#include "arm_compute/core/NEON/kernels/NEHistogramKernel.h"
101#include "arm_compute/core/NEON/kernels/NEIm2ColKernel.h"
Manuel Bottini769c6382019-08-22 13:13:48 +0100102#include "arm_compute/core/NEON/kernels/NEInstanceNormalizationLayerKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +0100103#include "arm_compute/core/NEON/kernels/NEIntegralImageKernel.h"
Giorgio Arena04a8f8c2017-11-23 11:45:24 +0000104#include "arm_compute/core/NEON/kernels/NEL2NormalizeLayerKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +0100105#include "arm_compute/core/NEON/kernels/NELKTrackerKernel.h"
106#include "arm_compute/core/NEON/kernels/NELocallyConnectedMatrixMultiplyKernel.h"
107#include "arm_compute/core/NEON/kernels/NEMagnitudePhaseKernel.h"
108#include "arm_compute/core/NEON/kernels/NEMeanStdDevKernel.h"
Michele Di Giorgio91753922019-06-13 10:56:59 +0100109#include "arm_compute/core/NEON/kernels/NEMeanStdDevNormalizationKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +0100110#include "arm_compute/core/NEON/kernels/NEMedian3x3Kernel.h"
Georgios Pinitasdea2d2d2018-12-19 16:23:17 +0000111#include "arm_compute/core/NEON/kernels/NEMemsetKernel.h"
Anthony Barbier14e7d142017-09-14 12:05:05 +0100112#include "arm_compute/core/NEON/kernels/NEMinMaxLayerKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +0100113#include "arm_compute/core/NEON/kernels/NEMinMaxLocationKernel.h"
114#include "arm_compute/core/NEON/kernels/NENonLinearFilterKernel.h"
115#include "arm_compute/core/NEON/kernels/NENonMaximaSuppression3x3Kernel.h"
116#include "arm_compute/core/NEON/kernels/NENormalizationLayerKernel.h"
Manuel Bottini9032ee32019-08-07 17:04:11 +0100117#include "arm_compute/core/NEON/kernels/NEPadLayerKernel.h"
Georgios Pinitas284cfe22018-02-13 12:15:13 +0000118#include "arm_compute/core/NEON/kernels/NEPermuteKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +0100119#include "arm_compute/core/NEON/kernels/NEPixelWiseMultiplicationKernel.h"
120#include "arm_compute/core/NEON/kernels/NEPoolingLayerKernel.h"
Michalis Spyrou721c4cb2018-09-04 15:27:25 +0100121#include "arm_compute/core/NEON/kernels/NEPriorBoxLayerKernel.h"
Anthony Barbier14e7d142017-09-14 12:05:05 +0100122#include "arm_compute/core/NEON/kernels/NEQuantizationLayerKernel.h"
Pablo Tellod75f9e92019-08-23 16:26:26 +0100123#include "arm_compute/core/NEON/kernels/NEROIAlignLayerKernel.h"
Georgios Pinitas7b7858d2017-06-21 16:44:24 +0100124#include "arm_compute/core/NEON/kernels/NEROIPoolingLayerKernel.h"
Manuel Bottini053e7512018-12-28 15:05:20 +0000125#include "arm_compute/core/NEON/kernels/NERangeKernel.h"
Georgios Pinitasd9769582017-08-03 10:19:40 +0100126#include "arm_compute/core/NEON/kernels/NEReductionOperationKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +0100127#include "arm_compute/core/NEON/kernels/NERemapKernel.h"
Georgios Pinitasaa6a04a2018-08-29 12:53:41 +0100128#include "arm_compute/core/NEON/kernels/NEReorgLayerKernel.h"
Georgios Pinitas5ee66ea2017-09-07 17:29:16 +0100129#include "arm_compute/core/NEON/kernels/NEReshapeLayerKernel.h"
Michalis Spyrou110b9202018-12-28 16:32:49 +0000130#include "arm_compute/core/NEON/kernels/NEReverseKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +0100131#include "arm_compute/core/NEON/kernels/NEScaleKernel.h"
132#include "arm_compute/core/NEON/kernels/NEScharr3x3Kernel.h"
George Wort5801a552018-12-13 17:50:26 +0000133#include "arm_compute/core/NEON/kernels/NESelectKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +0100134#include "arm_compute/core/NEON/kernels/NESobel3x3Kernel.h"
135#include "arm_compute/core/NEON/kernels/NESobel5x5Kernel.h"
136#include "arm_compute/core/NEON/kernels/NESobel7x7Kernel.h"
137#include "arm_compute/core/NEON/kernels/NESoftmaxLayerKernel.h"
giuros01ba368252019-02-19 13:53:10 +0000138#include "arm_compute/core/NEON/kernels/NESpaceToBatchLayerKernel.h"
Manuel Bottini5b7d5372019-05-17 14:04:22 +0100139#include "arm_compute/core/NEON/kernels/NESpaceToDepthLayerKernel.h"
Isabella Gottardiee7c15d2018-12-17 16:15:34 +0000140#include "arm_compute/core/NEON/kernels/NEStackLayerKernel.h"
Georgios Pinitas6d9d6f42018-12-24 16:10:47 +0000141#include "arm_compute/core/NEON/kernels/NEStridedSliceKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +0100142#include "arm_compute/core/NEON/kernels/NETableLookupKernel.h"
143#include "arm_compute/core/NEON/kernels/NEThresholdKernel.h"
giuros01be1c0172018-12-04 11:36:08 +0000144#include "arm_compute/core/NEON/kernels/NETileKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +0100145#include "arm_compute/core/NEON/kernels/NETransposeKernel.h"
Michalis Spyrou7c9541c2018-09-20 17:40:04 +0100146#include "arm_compute/core/NEON/kernels/NEUpsampleLayerKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +0100147#include "arm_compute/core/NEON/kernels/NEWarpKernel.h"
148#include "arm_compute/core/NEON/kernels/NEWeightsReshapeKernel.h"
Georgios Pinitasae54e022018-07-16 15:41:27 +0100149#include "arm_compute/core/NEON/kernels/NEWidthConcatenateLayerKernel.h"
Georgios Pinitas9fb11592018-04-26 20:34:58 +0100150#include "arm_compute/core/NEON/kernels/NEWinogradConvolutionLayerKernel.h"
Michalis Spyroua6825a42018-09-13 12:24:03 +0100151#include "arm_compute/core/NEON/kernels/NEYOLOLayerKernel.h"
Anthony Barbier6ff3b192017-09-04 18:44:23 +0100152
153#endif /* __ARM_COMPUTE_NEKERNELS_H__ */