xref: /aosp_15_r20/external/armnn/src/backends/backendsCommon/test/layerTests/LogicalTestImpl.hpp (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1 //
2 // Copyright © 2020 Arm Ltd and Contributors. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #pragma once
7 
8 #include <armnnTestUtils/LayerTestResult.hpp>
9 
10 #include <armnn/backends/IBackendInternal.hpp>
11 #include <armnn/backends/WorkloadFactory.hpp>
12 
13 // Unary - Logical Not
14 LayerTestResult<uint8_t, 4> LogicalNotTest(
15     armnn::IWorkloadFactory& workloadFactory,
16     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
17     const armnn::ITensorHandleFactory& tensorHandleFactory);
18 
19 // Unary - Logical Not with integers
20 LayerTestResult<uint8_t, 4> LogicalNotIntTest(
21     armnn::IWorkloadFactory& workloadFactory,
22     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
23     const armnn::ITensorHandleFactory& tensorHandleFactory);
24 
25 // Binary - Logical And
26 LayerTestResult<uint8_t, 4> LogicalAndTest(
27     armnn::IWorkloadFactory& workloadFactory,
28     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
29     const armnn::ITensorHandleFactory& tensorHandleFactory);
30 
31 // Binary - Logical Or
32 LayerTestResult<uint8_t, 4> LogicalOrTest(
33     armnn::IWorkloadFactory& workloadFactory,
34     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
35     const armnn::ITensorHandleFactory& tensorHandleFactory);
36 
37 // Binary - Logical And with integers
38 LayerTestResult<uint8_t, 4> LogicalAndIntTest(
39     armnn::IWorkloadFactory& workloadFactory,
40     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
41     const armnn::ITensorHandleFactory& tensorHandleFactory);
42 
43 // Binary - Logical Or with integers
44 LayerTestResult<uint8_t, 4> LogicalOrIntTest(
45     armnn::IWorkloadFactory& workloadFactory,
46     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
47     const armnn::ITensorHandleFactory& tensorHandleFactory);
48 
49 // Binary - Logical And Broadcast
50 LayerTestResult<uint8_t, 4> LogicalAndBroadcast1Test(
51     armnn::IWorkloadFactory& workloadFactory,
52     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
53     const armnn::ITensorHandleFactory& tensorHandleFactory);
54 
55 // Binary - Logical Or Broadcast
56 LayerTestResult<uint8_t, 4> LogicalOrBroadcast1Test(
57     armnn::IWorkloadFactory& workloadFactory,
58     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
59     const armnn::ITensorHandleFactory& tensorHandleFactory);
60 
61 // Binary - Logical And Broadcast
62 LayerTestResult<uint8_t, 4> LogicalAndBroadcast2Test(
63     armnn::IWorkloadFactory& workloadFactory,
64     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
65     const armnn::ITensorHandleFactory& tensorHandleFactory);
66 
67 // Binary - Logical Or Broadcast
68 LayerTestResult<uint8_t, 4> LogicalOrBroadcast2Test(
69     armnn::IWorkloadFactory& workloadFactory,
70     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
71     const armnn::ITensorHandleFactory& tensorHandleFactory);
72 
73 // Binary - Logical And Broadcast
74 LayerTestResult<uint8_t, 4> LogicalAndBroadcast3Test(
75     armnn::IWorkloadFactory& workloadFactory,
76     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
77     const armnn::ITensorHandleFactory& tensorHandleFactory);
78 
79 // Binary - Logical Or Broadcast
80 LayerTestResult<uint8_t, 4> LogicalOrBroadcast3Test(
81     armnn::IWorkloadFactory& workloadFactory,
82     const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager,
83     const armnn::ITensorHandleFactory& tensorHandleFactory);