blob: 612b2f4726fbfc2eab77c814f7827bc3bf61d22d [file] [log] [blame]
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +01001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5
6#pragma once
7
Sadik Armagana097d2a2021-11-24 15:47:28 +00008#include <armnnTestUtils/LayerTestResult.hpp>
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +01009
Matthew Jackson9bff1442019-09-12 09:08:23 +010010#include <Half.hpp>
11
Matteo Martincighe5b8eb92019-11-28 15:45:42 +000012#include <armnn/backends/IBackendInternal.hpp>
Colm Donelan0c479742021-12-10 12:43:54 +000013#include <armnn/backends/WorkloadFactory.hpp>
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010014
15LayerTestResult<float, 4> SubtractionTest(
16 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010017 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
18 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010019
20LayerTestResult<float, 4> SubtractionBroadcast1ElementTest(
21 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010022 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
23 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010024
25LayerTestResult<float, 4> SubtractionBroadcastTest(
26 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010027 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
28 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010029
Matthew Jackson9bff1442019-09-12 09:08:23 +010030LayerTestResult<armnn::Half, 4> SubtractionFloat16Test(
31 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010032 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
33 const armnn::ITensorHandleFactory& tensorHandleFactory);
Matthew Jackson9bff1442019-09-12 09:08:23 +010034
35LayerTestResult<armnn::Half, 4> SubtractionBroadcast1ElementFloat16Test(
36 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010037 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
38 const armnn::ITensorHandleFactory& tensorHandleFactory);
Matthew Jackson9bff1442019-09-12 09:08:23 +010039
40LayerTestResult<armnn::Half, 4> SubtractionBroadcastFloat16Test(
41 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010042 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
43 const armnn::ITensorHandleFactory& tensorHandleFactory);
Matthew Jackson9bff1442019-09-12 09:08:23 +010044
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010045LayerTestResult<uint8_t, 4> SubtractionUint8Test(
46 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010047 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
48 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010049
50LayerTestResult<uint8_t, 4> SubtractionBroadcast1ElementUint8Test(
51 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010052 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
53 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010054
55LayerTestResult<uint8_t, 4> SubtractionBroadcastUint8Test(
56 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010057 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
58 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010059
60LayerTestResult<int16_t, 4> SubtractionInt16Test(
61 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010062 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
63 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010064
65LayerTestResult<int16_t, 4> SubtractionBroadcast1ElementInt16Test(
66 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010067 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
68 const armnn::ITensorHandleFactory& tensorHandleFactory);
Aron Virginas-Tare89ebad2019-08-27 18:14:26 +010069
70LayerTestResult<int16_t, 4> SubtractionBroadcastInt16Test(
71 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010072 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
73 const armnn::ITensorHandleFactory& tensorHandleFactory);
Teresa Charlinecb6b8e2020-05-22 18:08:23 +010074
75LayerTestResult<int32_t, 4> SubtractionInt32Test(
76 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010077 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
78 const armnn::ITensorHandleFactory& tensorHandleFactory);
Teresa Charlinecb6b8e2020-05-22 18:08:23 +010079
80LayerTestResult<int32_t, 4> SubtractionBroadcast1ElementInt32Test(
81 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010082 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
83 const armnn::ITensorHandleFactory& tensorHandleFactory);
Teresa Charlinecb6b8e2020-05-22 18:08:23 +010084
85LayerTestResult<int32_t, 4> SubtractionBroadcastInt32Test(
86 armnn::IWorkloadFactory& workloadFactory,
Keith Davis33a626f2020-08-27 15:38:12 +010087 const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
88 const armnn::ITensorHandleFactory& tensorHandleFactory);