blob: fb10a0dcefc78cae693b850fdec9f9e5ee9465c3 [file] [log] [blame]
David Beck0dbe0ee2018-09-24 15:59:27 +01001#
2# Copyright © 2017 ARM Ltd. All rights reserved.
3# SPDX-License-Identifier: MIT
4#
5
6# BACKEND_SOURCES contains the list of files to be included
7# in the Android build and it is picked up by the Android.mk
8# file in the root of ArmNN
9
Matteo Martincighe67edb22019-08-14 14:05:46 +010010# The variable to enable/disable the NEON backend (ARMNN_COMPUTE_NEON_ENABLED is declared in android-nn-driver/Android.mk)
Matteo Martincighd95e9062019-01-31 15:35:59 +000011ifeq ($(ARMNN_COMPUTE_NEON_ENABLED),1)
12
13# ARMNN_COMPUTE_NEON_ENABLED == 1
14# Include the source files for the NEON backend
15
David Beck0dbe0ee2018-09-24 15:59:27 +010016BACKEND_SOURCES := \
arovir014424b0a2018-10-04 10:46:04 +010017 NeonBackend.cpp \
Aron Virginas-Tar3b278e92018-10-12 13:00:55 +010018 NeonInterceptorScheduler.cpp \
David Beck0dbe0ee2018-09-24 15:59:27 +010019 NeonLayerSupport.cpp \
Matteo Martincighe67edb22019-08-14 14:05:46 +010020 NeonRegistryInitializer.cpp \
Narumol Prangnawarat4e3e8182019-08-14 12:25:50 +010021 NeonTensorHandleFactory.cpp \
Aron Virginas-Tar3b278e92018-10-12 13:00:55 +010022 NeonTimer.cpp \
David Beck0dbe0ee2018-09-24 15:59:27 +010023 NeonWorkloadFactory.cpp \
Aron Virginas-Tar914e4db2019-09-09 13:36:45 +010024 workloads/NeonAbsWorkload.cpp \
Nattapat Chaimanowongd4b70592018-10-12 11:21:49 +010025 workloads/NeonActivationWorkload.cpp \
Matthew Bentham955258d2018-12-10 10:48:52 +000026 workloads/NeonAdditionWorkload.cpp \
James Conroyd47a0642019-09-17 14:22:06 +010027 workloads/NeonArgMinMaxWorkload.cpp \
Matthew Benthamc48ac8c2018-12-12 16:15:59 +000028 workloads/NeonBatchNormalizationWorkload.cpp \
Jim Flynn39d487d2019-05-17 15:44:36 +010029 workloads/NeonConcatWorkload.cpp \
Nattapat Chaimanowong233b3d62018-10-12 12:02:18 +010030 workloads/NeonConstantWorkload.cpp \
David Beck0dbe0ee2018-09-24 15:59:27 +010031 workloads/NeonConvertFp16ToFp32Workload.cpp \
32 workloads/NeonConvertFp32ToFp16Workload.cpp \
Nattapat Chaimanowong974b65f2018-10-15 15:07:34 +010033 workloads/NeonConvolution2dWorkload.cpp \
Aron Virginas-Tar2f00b742019-09-30 13:28:08 +010034 workloads/NeonDepthToSpaceWorkload.cpp \
Nattapat Chaimanowong77140882018-10-17 11:12:19 +010035 workloads/NeonDepthwiseConvolutionWorkload.cpp \
Narumol Prangnawarat01961a72019-05-30 16:47:12 +010036 workloads/NeonDequantizeWorkload.cpp \
David Beck0dbe0ee2018-09-24 15:59:27 +010037 workloads/NeonFloorFloatWorkload.cpp \
38 workloads/NeonFullyConnectedWorkload.cpp \
kevmay01eed85922019-01-28 08:37:25 +000039 workloads/NeonGreaterWorkload.cpp \
David Beck0dbe0ee2018-09-24 15:59:27 +010040 workloads/NeonL2NormalizationFloatWorkload.cpp \
41 workloads/NeonLstmFloatWorkload.cpp \
Nattapat Chaimanowong4e6597a2018-12-20 14:14:06 +000042 workloads/NeonMaximumWorkload.cpp \
Matthew Benthamfd899962018-12-31 15:49:42 +000043 workloads/NeonMeanWorkload.cpp \
Conor Kennedy54b21692019-01-09 07:57:38 +000044 workloads/NeonMinimumWorkload.cpp \
Conor Kennedyb99480b2019-03-08 08:24:41 +000045 workloads/NeonMultiplicationWorkload.cpp \
David Beck0dbe0ee2018-09-24 15:59:27 +010046 workloads/NeonNormalizationFloatWorkload.cpp \
Éanna Ó Catháin12055742019-01-25 10:01:40 +000047 workloads/NeonPadWorkload.cpp \
David Beck0dbe0ee2018-09-24 15:59:27 +010048 workloads/NeonPermuteWorkload.cpp \
Nattapat Chaimanowong5d2e7002018-10-12 16:03:56 +010049 workloads/NeonPooling2dWorkload.cpp \
Nikhil Raj9b461482019-07-03 15:58:31 +010050 workloads/NeonPreluWorkload.cpp \
Francis Murtagh4fc3c482019-08-02 13:20:54 +010051 workloads/NeonQuantizedLstmWorkload.cpp \
Sadik Armaganfabc2892019-05-31 09:05:11 +010052 workloads/NeonQuantizeWorkload.cpp \
Nattapat Chaimanowongcce11fc2018-10-12 16:30:56 +010053 workloads/NeonReshapeWorkload.cpp \
Ellen Norris-Thompson37e68682019-07-15 14:23:30 +010054 workloads/NeonResizeWorkload.cpp \
Aron Virginas-Tar0dd3b432019-09-10 13:55:09 +010055 workloads/NeonRsqrtWorkload.cpp \
David Beck0dbe0ee2018-09-24 15:59:27 +010056 workloads/NeonSoftmaxBaseWorkload.cpp \
57 workloads/NeonSoftmaxFloatWorkload.cpp \
58 workloads/NeonSoftmaxUint8Workload.cpp \
Ellen Norris-Thompson29794572019-06-26 16:40:36 +010059 workloads/NeonSpaceToDepthWorkload.cpp \
Narumol Prangnawarat15eb5832019-05-20 15:31:05 +010060 workloads/NeonSplitterWorkload.cpp \
Matthew Jackson87f65ea2019-08-01 10:01:34 +010061 workloads/NeonStackWorkload.cpp \
FinnWilliamsArm1fa19192019-08-02 17:26:31 +010062 workloads/NeonStridedSliceWorkload.cpp \
Sadik Armagan581742d2019-08-12 14:11:37 +010063 workloads/NeonSubtractionWorkload.cpp \
64 workloads/NeonTransposeConvolution2dWorkload.cpp
Aron Virginas-Tarceae3aa2018-10-18 10:39:38 +010065
Matteo Martincighd95e9062019-01-31 15:35:59 +000066else
67
68# ARMNN_COMPUTE_NEON_ENABLED == 0
69# No source file will be compiled for the NEON backend
70
71BACKEND_SOURCES :=
72
73endif
74
Aron Virginas-Tarceae3aa2018-10-18 10:39:38 +010075# BACKEND_TEST_SOURCES contains the list of files to be included
76# in the Android unit test build (armnn-tests) and it is picked
77# up by the Android.mk file in the root of ArmNN
78
Matteo Martincighe67edb22019-08-14 14:05:46 +010079# The variable to enable/disable the NEON backend (ARMNN_COMPUTE_NEON_ENABLED is declared in android-nn-driver/Android.mk)
Matteo Martincighd95e9062019-01-31 15:35:59 +000080ifeq ($(ARMNN_COMPUTE_NEON_ENABLED),1)
81
82# ARMNN_COMPUTE_NEON_ENABLED == 1
83# Include the source files for the NEON backend tests
84
Aron Virginas-Tarceae3aa2018-10-18 10:39:38 +010085BACKEND_TEST_SOURCES := \
86 test/NeonCreateWorkloadTests.cpp \
Aron Virginas-Tar70104002018-10-24 15:33:28 +010087 test/NeonEndToEndTests.cpp \
88 test/NeonJsonPrinterTests.cpp \
Aron Virginas-Tarceae3aa2018-10-18 10:39:38 +010089 test/NeonLayerSupportTests.cpp \
90 test/NeonLayerTests.cpp \
Aron Virginas-Tar70104002018-10-24 15:33:28 +010091 test/NeonOptimizedNetworkTests.cpp \
Aron Virginas-Tarc26ba752018-10-22 13:32:01 +010092 test/NeonRuntimeTests.cpp \
Aron Virginas-Tarceae3aa2018-10-18 10:39:38 +010093 test/NeonTimerTest.cpp
Matteo Martincighd95e9062019-01-31 15:35:59 +000094
Matteo Martincighedd6fdc2019-08-29 18:27:18 +010095ifeq ($(ARMNN_REF_ENABLED),1)
Matteo Martincighe67edb22019-08-14 14:05:46 +010096BACKEND_TEST_SOURCES += \
97 test/NeonMemCopyTests.cpp
Matteo Martincighedd6fdc2019-08-29 18:27:18 +010098endif # ARMNN_REF_ENABLED == 1
Matteo Martincighe67edb22019-08-14 14:05:46 +010099
Matteo Martincighd95e9062019-01-31 15:35:59 +0000100else
101
102# ARMNN_COMPUTE_NEON_ENABLED == 0
103# No source file will be compiled for the NEON backend tests
104
105BACKEND_TEST_SOURCES :=
106
107endif