xref: /aosp_15_r20/external/armnn/delegate/test/ComparisonTest.cpp (revision 89c4ff92f2867872bb9e2354d150bf0c8c502810)
1*89c4ff92SAndroid Build Coastguard Worker //
2*89c4ff92SAndroid Build Coastguard Worker // Copyright © 2020, 2023 Arm Ltd and Contributors. All rights reserved.
3*89c4ff92SAndroid Build Coastguard Worker // SPDX-License-Identifier: MIT
4*89c4ff92SAndroid Build Coastguard Worker //
5*89c4ff92SAndroid Build Coastguard Worker 
6*89c4ff92SAndroid Build Coastguard Worker #include "ComparisonTestHelper.hpp"
7*89c4ff92SAndroid Build Coastguard Worker 
8*89c4ff92SAndroid Build Coastguard Worker #include <armnn_delegate.hpp>
9*89c4ff92SAndroid Build Coastguard Worker 
10*89c4ff92SAndroid Build Coastguard Worker #include <flatbuffers/flatbuffers.h>
11*89c4ff92SAndroid Build Coastguard Worker #include <tensorflow/lite/interpreter.h>
12*89c4ff92SAndroid Build Coastguard Worker #include <tensorflow/lite/kernels/register.h>
13*89c4ff92SAndroid Build Coastguard Worker #include <tensorflow/lite/model.h>
14*89c4ff92SAndroid Build Coastguard Worker #include <schema_generated.h>
15*89c4ff92SAndroid Build Coastguard Worker #include <tensorflow/lite/version.h>
16*89c4ff92SAndroid Build Coastguard Worker 
17*89c4ff92SAndroid Build Coastguard Worker #include <doctest/doctest.h>
18*89c4ff92SAndroid Build Coastguard Worker 
19*89c4ff92SAndroid Build Coastguard Worker namespace armnnDelegate
20*89c4ff92SAndroid Build Coastguard Worker {
21*89c4ff92SAndroid Build Coastguard Worker 
EqualFP32Test(std::vector<armnn::BackendId> & backends)22*89c4ff92SAndroid Build Coastguard Worker void EqualFP32Test(std::vector<armnn::BackendId>& backends)
23*89c4ff92SAndroid Build Coastguard Worker {
24*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 2, 2, 2, 2 };
25*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 2, 2, 2, 2 };
26*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 2, 2, 2, 2 };
27*89c4ff92SAndroid Build Coastguard Worker 
28*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input0Values =
29*89c4ff92SAndroid Build Coastguard Worker     {
30*89c4ff92SAndroid Build Coastguard Worker         1.f, 1.f, 1.f, 1.f, 5.f, 5.f, 5.f, 5.f,
31*89c4ff92SAndroid Build Coastguard Worker         3.f, 3.f, 3.f, 3.f, 4.f, 4.f, 4.f, 4.f
32*89c4ff92SAndroid Build Coastguard Worker     };
33*89c4ff92SAndroid Build Coastguard Worker 
34*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input1Values =
35*89c4ff92SAndroid Build Coastguard Worker     {
36*89c4ff92SAndroid Build Coastguard Worker         1.f, 1.f, 1.f, 1.f, 3.f, 3.f, 3.f, 3.f,
37*89c4ff92SAndroid Build Coastguard Worker         5.f, 5.f, 5.f, 5.f, 4.f, 4.f, 4.f, 4.f
38*89c4ff92SAndroid Build Coastguard Worker     };
39*89c4ff92SAndroid Build Coastguard Worker 
40*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues =
41*89c4ff92SAndroid Build Coastguard Worker     {
42*89c4ff92SAndroid Build Coastguard Worker         1, 1, 1, 1, 0, 0, 0, 0,
43*89c4ff92SAndroid Build Coastguard Worker         0, 0, 0, 0, 1, 1, 1, 1
44*89c4ff92SAndroid Build Coastguard Worker     };
45*89c4ff92SAndroid Build Coastguard Worker 
46*89c4ff92SAndroid Build Coastguard Worker 
47*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<float>(tflite::BuiltinOperator_EQUAL,
48*89c4ff92SAndroid Build Coastguard Worker                           ::tflite::TensorType_FLOAT32,
49*89c4ff92SAndroid Build Coastguard Worker                           backends,
50*89c4ff92SAndroid Build Coastguard Worker                           input0Shape,
51*89c4ff92SAndroid Build Coastguard Worker                           input1Shape,
52*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputShape,
53*89c4ff92SAndroid Build Coastguard Worker                           input0Values,
54*89c4ff92SAndroid Build Coastguard Worker                           input1Values,
55*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputValues);
56*89c4ff92SAndroid Build Coastguard Worker }
57*89c4ff92SAndroid Build Coastguard Worker 
EqualBroadcastTest(std::vector<armnn::BackendId> & backends)58*89c4ff92SAndroid Build Coastguard Worker void EqualBroadcastTest(std::vector<armnn::BackendId>& backends)
59*89c4ff92SAndroid Build Coastguard Worker {
60*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 3 };
61*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 1, 1, 3 };
62*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 3 };
63*89c4ff92SAndroid Build Coastguard Worker 
64*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input0Values
65*89c4ff92SAndroid Build Coastguard Worker     {
66*89c4ff92SAndroid Build Coastguard Worker         1.f, 2.f, 3.f,  4.f,  5.f,  6.f,
67*89c4ff92SAndroid Build Coastguard Worker         7.f, 8.f, 9.f, 10.f, 11.f, 12.f
68*89c4ff92SAndroid Build Coastguard Worker     };
69*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input1Values { 4.f, 5.f, 6.f };
70*89c4ff92SAndroid Build Coastguard Worker     // Set output data
71*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues
72*89c4ff92SAndroid Build Coastguard Worker     {
73*89c4ff92SAndroid Build Coastguard Worker         0, 0, 0, 1, 1, 1,
74*89c4ff92SAndroid Build Coastguard Worker         0, 0, 0, 0, 0, 0
75*89c4ff92SAndroid Build Coastguard Worker     };
76*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<float>(tflite::BuiltinOperator_EQUAL,
77*89c4ff92SAndroid Build Coastguard Worker                           ::tflite::TensorType_FLOAT32,
78*89c4ff92SAndroid Build Coastguard Worker                           backends,
79*89c4ff92SAndroid Build Coastguard Worker                           input0Shape,
80*89c4ff92SAndroid Build Coastguard Worker                           input1Shape,
81*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputShape,
82*89c4ff92SAndroid Build Coastguard Worker                           input0Values,
83*89c4ff92SAndroid Build Coastguard Worker                           input1Values,
84*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputValues);
85*89c4ff92SAndroid Build Coastguard Worker }
86*89c4ff92SAndroid Build Coastguard Worker 
EqualInt32Test(std::vector<armnn::BackendId> & backends)87*89c4ff92SAndroid Build Coastguard Worker void EqualInt32Test(std::vector<armnn::BackendId>& backends)
88*89c4ff92SAndroid Build Coastguard Worker {
89*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 1 };
90*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 2, 2, 1 };
91*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 1 };
92*89c4ff92SAndroid Build Coastguard Worker 
93*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Values = { 1, 5, 6, 4 };
94*89c4ff92SAndroid Build Coastguard Worker 
95*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Values = { 1, 3, 9, 4 };
96*89c4ff92SAndroid Build Coastguard Worker 
97*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues = { 1, 0, 0, 1 };
98*89c4ff92SAndroid Build Coastguard Worker 
99*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<int32_t>(tflite::BuiltinOperator_EQUAL,
100*89c4ff92SAndroid Build Coastguard Worker                             ::tflite::TensorType_INT32,
101*89c4ff92SAndroid Build Coastguard Worker                             backends,
102*89c4ff92SAndroid Build Coastguard Worker                             input0Shape,
103*89c4ff92SAndroid Build Coastguard Worker                             input1Shape,
104*89c4ff92SAndroid Build Coastguard Worker                             expectedOutputShape,
105*89c4ff92SAndroid Build Coastguard Worker                             input0Values,
106*89c4ff92SAndroid Build Coastguard Worker                             input1Values,
107*89c4ff92SAndroid Build Coastguard Worker                             expectedOutputValues);
108*89c4ff92SAndroid Build Coastguard Worker }
109*89c4ff92SAndroid Build Coastguard Worker 
NotEqualFP32Test(std::vector<armnn::BackendId> & backends)110*89c4ff92SAndroid Build Coastguard Worker void NotEqualFP32Test(std::vector<armnn::BackendId>& backends)
111*89c4ff92SAndroid Build Coastguard Worker {
112*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 2, 2, 2, 2 };
113*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 2, 2, 2, 2 };
114*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 2, 2, 2, 2 };
115*89c4ff92SAndroid Build Coastguard Worker 
116*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input0Values =
117*89c4ff92SAndroid Build Coastguard Worker     {
118*89c4ff92SAndroid Build Coastguard Worker         1.f, 1.f, 1.f, 1.f, 5.f, 5.f, 5.f, 5.f,
119*89c4ff92SAndroid Build Coastguard Worker         3.f, 3.f, 3.f, 3.f, 4.f, 4.f, 4.f, 4.f
120*89c4ff92SAndroid Build Coastguard Worker     };
121*89c4ff92SAndroid Build Coastguard Worker 
122*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input1Values =
123*89c4ff92SAndroid Build Coastguard Worker     {
124*89c4ff92SAndroid Build Coastguard Worker         1.f, 1.f, 1.f, 1.f, 3.f, 3.f, 3.f, 3.f,
125*89c4ff92SAndroid Build Coastguard Worker         5.f, 5.f, 5.f, 5.f, 4.f, 4.f, 4.f, 4.f
126*89c4ff92SAndroid Build Coastguard Worker     };
127*89c4ff92SAndroid Build Coastguard Worker 
128*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues =
129*89c4ff92SAndroid Build Coastguard Worker     {
130*89c4ff92SAndroid Build Coastguard Worker         0, 0, 0, 0, 1, 1, 1, 1,
131*89c4ff92SAndroid Build Coastguard Worker         1, 1, 1, 1, 0, 0, 0, 0
132*89c4ff92SAndroid Build Coastguard Worker     };
133*89c4ff92SAndroid Build Coastguard Worker 
134*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<float>(tflite::BuiltinOperator_NOT_EQUAL,
135*89c4ff92SAndroid Build Coastguard Worker                           ::tflite::TensorType_FLOAT32,
136*89c4ff92SAndroid Build Coastguard Worker                           backends,
137*89c4ff92SAndroid Build Coastguard Worker                           input0Shape,
138*89c4ff92SAndroid Build Coastguard Worker                           input1Shape,
139*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputShape,
140*89c4ff92SAndroid Build Coastguard Worker                           input0Values,
141*89c4ff92SAndroid Build Coastguard Worker                           input1Values,
142*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputValues);
143*89c4ff92SAndroid Build Coastguard Worker }
144*89c4ff92SAndroid Build Coastguard Worker 
NotEqualBroadcastTest(std::vector<armnn::BackendId> & backends)145*89c4ff92SAndroid Build Coastguard Worker void NotEqualBroadcastTest(std::vector<armnn::BackendId>& backends)
146*89c4ff92SAndroid Build Coastguard Worker {
147*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 3 };
148*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 1, 1, 3 };
149*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 3 };
150*89c4ff92SAndroid Build Coastguard Worker 
151*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input0Values
152*89c4ff92SAndroid Build Coastguard Worker     {
153*89c4ff92SAndroid Build Coastguard Worker         1.f, 2.f, 3.f,  4.f,  5.f,  6.f,
154*89c4ff92SAndroid Build Coastguard Worker         7.f, 8.f, 9.f, 10.f, 11.f, 12.f
155*89c4ff92SAndroid Build Coastguard Worker     };
156*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input1Values { 4.f, 5.f, 6.f };
157*89c4ff92SAndroid Build Coastguard Worker     // Set output data
158*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues
159*89c4ff92SAndroid Build Coastguard Worker     {
160*89c4ff92SAndroid Build Coastguard Worker         1, 1, 1, 0, 0, 0,
161*89c4ff92SAndroid Build Coastguard Worker         1, 1, 1, 1, 1, 1
162*89c4ff92SAndroid Build Coastguard Worker     };
163*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<float>(tflite::BuiltinOperator_NOT_EQUAL,
164*89c4ff92SAndroid Build Coastguard Worker                           ::tflite::TensorType_FLOAT32,
165*89c4ff92SAndroid Build Coastguard Worker                           backends,
166*89c4ff92SAndroid Build Coastguard Worker                           input0Shape,
167*89c4ff92SAndroid Build Coastguard Worker                           input1Shape,
168*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputShape,
169*89c4ff92SAndroid Build Coastguard Worker                           input0Values,
170*89c4ff92SAndroid Build Coastguard Worker                           input1Values,
171*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputValues);
172*89c4ff92SAndroid Build Coastguard Worker }
173*89c4ff92SAndroid Build Coastguard Worker 
NotEqualInt32Test(std::vector<armnn::BackendId> & backends)174*89c4ff92SAndroid Build Coastguard Worker void NotEqualInt32Test(std::vector<armnn::BackendId>& backends)
175*89c4ff92SAndroid Build Coastguard Worker {
176*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 1 };
177*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 2, 2, 1 };
178*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 1 };
179*89c4ff92SAndroid Build Coastguard Worker 
180*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Values = { 1, 5, 6, 4 };
181*89c4ff92SAndroid Build Coastguard Worker 
182*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Values = { 1, 3, 9, 4 };
183*89c4ff92SAndroid Build Coastguard Worker 
184*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues = { 0, 1, 1, 0 };
185*89c4ff92SAndroid Build Coastguard Worker 
186*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<int32_t>(tflite::BuiltinOperator_NOT_EQUAL,
187*89c4ff92SAndroid Build Coastguard Worker                             ::tflite::TensorType_INT32,
188*89c4ff92SAndroid Build Coastguard Worker                             backends,
189*89c4ff92SAndroid Build Coastguard Worker                             input0Shape,
190*89c4ff92SAndroid Build Coastguard Worker                             input1Shape,
191*89c4ff92SAndroid Build Coastguard Worker                             expectedOutputShape,
192*89c4ff92SAndroid Build Coastguard Worker                             input0Values,
193*89c4ff92SAndroid Build Coastguard Worker                             input1Values,
194*89c4ff92SAndroid Build Coastguard Worker                             expectedOutputValues);
195*89c4ff92SAndroid Build Coastguard Worker }
196*89c4ff92SAndroid Build Coastguard Worker 
GreaterFP32Test(std::vector<armnn::BackendId> & backends)197*89c4ff92SAndroid Build Coastguard Worker void GreaterFP32Test(std::vector<armnn::BackendId>& backends)
198*89c4ff92SAndroid Build Coastguard Worker {
199*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 1 };
200*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 2, 2, 1 };
201*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 1 };
202*89c4ff92SAndroid Build Coastguard Worker 
203*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input0Values = { 1, 5, 6, 4 };
204*89c4ff92SAndroid Build Coastguard Worker 
205*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input1Values = { 1, 3, 9, 4 };
206*89c4ff92SAndroid Build Coastguard Worker 
207*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues = { 0, 1, 0, 0 };
208*89c4ff92SAndroid Build Coastguard Worker 
209*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<float>(tflite::BuiltinOperator_GREATER,
210*89c4ff92SAndroid Build Coastguard Worker                           ::tflite::TensorType_FLOAT32,
211*89c4ff92SAndroid Build Coastguard Worker                           backends,
212*89c4ff92SAndroid Build Coastguard Worker                           input0Shape,
213*89c4ff92SAndroid Build Coastguard Worker                           input1Shape,
214*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputShape,
215*89c4ff92SAndroid Build Coastguard Worker                           input0Values,
216*89c4ff92SAndroid Build Coastguard Worker                           input1Values,
217*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputValues);
218*89c4ff92SAndroid Build Coastguard Worker }
219*89c4ff92SAndroid Build Coastguard Worker 
GreaterBroadcastTest(std::vector<armnn::BackendId> & backends)220*89c4ff92SAndroid Build Coastguard Worker void GreaterBroadcastTest(std::vector<armnn::BackendId>& backends)
221*89c4ff92SAndroid Build Coastguard Worker {
222*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 3 };
223*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 1, 1, 3 };
224*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 3 };
225*89c4ff92SAndroid Build Coastguard Worker 
226*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input0Values
227*89c4ff92SAndroid Build Coastguard Worker     {
228*89c4ff92SAndroid Build Coastguard Worker         1.f, 2.f, 3.f,  4.f,  5.f,  6.f,
229*89c4ff92SAndroid Build Coastguard Worker         7.f, 8.f, 9.f, 10.f, 11.f, 12.f
230*89c4ff92SAndroid Build Coastguard Worker     };
231*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input1Values { 4.f, 5.f, 6.f };
232*89c4ff92SAndroid Build Coastguard Worker 
233*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues
234*89c4ff92SAndroid Build Coastguard Worker     {
235*89c4ff92SAndroid Build Coastguard Worker         0, 0, 0, 0, 0, 0,
236*89c4ff92SAndroid Build Coastguard Worker         1, 1, 1, 1, 1, 1
237*89c4ff92SAndroid Build Coastguard Worker     };
238*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<float>(tflite::BuiltinOperator_GREATER,
239*89c4ff92SAndroid Build Coastguard Worker                           ::tflite::TensorType_FLOAT32,
240*89c4ff92SAndroid Build Coastguard Worker                           backends,
241*89c4ff92SAndroid Build Coastguard Worker                           input0Shape,
242*89c4ff92SAndroid Build Coastguard Worker                           input1Shape,
243*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputShape,
244*89c4ff92SAndroid Build Coastguard Worker                           input0Values,
245*89c4ff92SAndroid Build Coastguard Worker                           input1Values,
246*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputValues);
247*89c4ff92SAndroid Build Coastguard Worker }
248*89c4ff92SAndroid Build Coastguard Worker 
GreaterInt32Test(std::vector<armnn::BackendId> & backends)249*89c4ff92SAndroid Build Coastguard Worker void GreaterInt32Test(std::vector<armnn::BackendId>& backends)
250*89c4ff92SAndroid Build Coastguard Worker {
251*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 1 };
252*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 2, 2, 1 };
253*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 1 };
254*89c4ff92SAndroid Build Coastguard Worker 
255*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Values = { 1, 5, 6, 4 };
256*89c4ff92SAndroid Build Coastguard Worker 
257*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Values = { 1, 3, 9, 4 };
258*89c4ff92SAndroid Build Coastguard Worker 
259*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues = { 0, 1, 0, 0 };
260*89c4ff92SAndroid Build Coastguard Worker 
261*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<int32_t>(tflite::BuiltinOperator_GREATER,
262*89c4ff92SAndroid Build Coastguard Worker                             ::tflite::TensorType_INT32,
263*89c4ff92SAndroid Build Coastguard Worker                             backends,
264*89c4ff92SAndroid Build Coastguard Worker                             input0Shape,
265*89c4ff92SAndroid Build Coastguard Worker                             input1Shape,
266*89c4ff92SAndroid Build Coastguard Worker                             expectedOutputShape,
267*89c4ff92SAndroid Build Coastguard Worker                             input0Values,
268*89c4ff92SAndroid Build Coastguard Worker                             input1Values,
269*89c4ff92SAndroid Build Coastguard Worker                             expectedOutputValues);
270*89c4ff92SAndroid Build Coastguard Worker }
271*89c4ff92SAndroid Build Coastguard Worker 
GreaterEqualFP32Test(std::vector<armnn::BackendId> & backends)272*89c4ff92SAndroid Build Coastguard Worker void GreaterEqualFP32Test(std::vector<armnn::BackendId>& backends)
273*89c4ff92SAndroid Build Coastguard Worker {
274*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 1 };
275*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 2, 2, 1 };
276*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 1 };
277*89c4ff92SAndroid Build Coastguard Worker 
278*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input0Values = { 1.f, 5.f, 6.f, 4.f };
279*89c4ff92SAndroid Build Coastguard Worker 
280*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input1Values = { 1.f, 3.f, 9.f, 4.f };
281*89c4ff92SAndroid Build Coastguard Worker 
282*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues = { true, true, false, true };
283*89c4ff92SAndroid Build Coastguard Worker 
284*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<float>(tflite::BuiltinOperator_GREATER_EQUAL,
285*89c4ff92SAndroid Build Coastguard Worker                           ::tflite::TensorType_FLOAT32,
286*89c4ff92SAndroid Build Coastguard Worker                           backends,
287*89c4ff92SAndroid Build Coastguard Worker                           input0Shape,
288*89c4ff92SAndroid Build Coastguard Worker                           input1Shape,
289*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputShape,
290*89c4ff92SAndroid Build Coastguard Worker                           input0Values,
291*89c4ff92SAndroid Build Coastguard Worker                           input1Values,
292*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputValues);
293*89c4ff92SAndroid Build Coastguard Worker }
294*89c4ff92SAndroid Build Coastguard Worker 
GreaterEqualBroadcastTest(std::vector<armnn::BackendId> & backends)295*89c4ff92SAndroid Build Coastguard Worker void GreaterEqualBroadcastTest(std::vector<armnn::BackendId>& backends)
296*89c4ff92SAndroid Build Coastguard Worker {
297*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 3 };
298*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 1, 1, 3 };
299*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 3 };
300*89c4ff92SAndroid Build Coastguard Worker 
301*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input0Values
302*89c4ff92SAndroid Build Coastguard Worker     {
303*89c4ff92SAndroid Build Coastguard Worker         1.f, 2.f, 3.f,  4.f,  5.f,  6.f,
304*89c4ff92SAndroid Build Coastguard Worker         7.f, 8.f, 9.f, 10.f, 11.f, 12.f
305*89c4ff92SAndroid Build Coastguard Worker     };
306*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input1Values { 4.f, 5.f, 6.f };
307*89c4ff92SAndroid Build Coastguard Worker     // Set output data
308*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues
309*89c4ff92SAndroid Build Coastguard Worker     {
310*89c4ff92SAndroid Build Coastguard Worker         0, 0, 0, 1, 1, 1,
311*89c4ff92SAndroid Build Coastguard Worker         1, 1, 1, 1, 1, 1
312*89c4ff92SAndroid Build Coastguard Worker     };
313*89c4ff92SAndroid Build Coastguard Worker 
314*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<float>(tflite::BuiltinOperator_GREATER_EQUAL,
315*89c4ff92SAndroid Build Coastguard Worker                           ::tflite::TensorType_FLOAT32,
316*89c4ff92SAndroid Build Coastguard Worker                           backends,
317*89c4ff92SAndroid Build Coastguard Worker                           input0Shape,
318*89c4ff92SAndroid Build Coastguard Worker                           input1Shape,
319*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputShape,
320*89c4ff92SAndroid Build Coastguard Worker                           input0Values,
321*89c4ff92SAndroid Build Coastguard Worker                           input1Values,
322*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputValues);
323*89c4ff92SAndroid Build Coastguard Worker }
324*89c4ff92SAndroid Build Coastguard Worker 
GreaterEqualInt32Test(std::vector<armnn::BackendId> & backends)325*89c4ff92SAndroid Build Coastguard Worker void GreaterEqualInt32Test(std::vector<armnn::BackendId>& backends)
326*89c4ff92SAndroid Build Coastguard Worker {
327*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 1 };
328*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 2, 2, 1 };
329*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 1 };
330*89c4ff92SAndroid Build Coastguard Worker 
331*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Values = { 1, 5, 6, 3 };
332*89c4ff92SAndroid Build Coastguard Worker 
333*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Values = { 1, 3, 9, 4 };
334*89c4ff92SAndroid Build Coastguard Worker 
335*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues = { 1, 1, 0, 0 };
336*89c4ff92SAndroid Build Coastguard Worker 
337*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<int32_t>(tflite::BuiltinOperator_GREATER_EQUAL,
338*89c4ff92SAndroid Build Coastguard Worker                             ::tflite::TensorType_INT32,
339*89c4ff92SAndroid Build Coastguard Worker                             backends,
340*89c4ff92SAndroid Build Coastguard Worker                             input0Shape,
341*89c4ff92SAndroid Build Coastguard Worker                             input1Shape,
342*89c4ff92SAndroid Build Coastguard Worker                             expectedOutputShape,
343*89c4ff92SAndroid Build Coastguard Worker                             input0Values,
344*89c4ff92SAndroid Build Coastguard Worker                             input1Values,
345*89c4ff92SAndroid Build Coastguard Worker                             expectedOutputValues);
346*89c4ff92SAndroid Build Coastguard Worker }
347*89c4ff92SAndroid Build Coastguard Worker 
LessFP32Test(std::vector<armnn::BackendId> & backends)348*89c4ff92SAndroid Build Coastguard Worker void LessFP32Test(std::vector<armnn::BackendId>& backends)
349*89c4ff92SAndroid Build Coastguard Worker {
350*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 1 };
351*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 2, 2, 1 };
352*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 1 };
353*89c4ff92SAndroid Build Coastguard Worker 
354*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input0Values = { 1.f, 5.f, 6.f, 4.f };
355*89c4ff92SAndroid Build Coastguard Worker 
356*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input1Values = { 1.f, 3.f, 9.f, 4.f };
357*89c4ff92SAndroid Build Coastguard Worker 
358*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues = { false, false, true, false };
359*89c4ff92SAndroid Build Coastguard Worker 
360*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<float>(tflite::BuiltinOperator_LESS,
361*89c4ff92SAndroid Build Coastguard Worker                           ::tflite::TensorType_FLOAT32,
362*89c4ff92SAndroid Build Coastguard Worker                           backends,
363*89c4ff92SAndroid Build Coastguard Worker                           input0Shape,
364*89c4ff92SAndroid Build Coastguard Worker                           input1Shape,
365*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputShape,
366*89c4ff92SAndroid Build Coastguard Worker                           input0Values,
367*89c4ff92SAndroid Build Coastguard Worker                           input1Values,
368*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputValues);
369*89c4ff92SAndroid Build Coastguard Worker }
370*89c4ff92SAndroid Build Coastguard Worker 
LessBroadcastTest(std::vector<armnn::BackendId> & backends)371*89c4ff92SAndroid Build Coastguard Worker void LessBroadcastTest(std::vector<armnn::BackendId>& backends)
372*89c4ff92SAndroid Build Coastguard Worker {
373*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 3 };
374*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 1, 1, 3 };
375*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 3 };
376*89c4ff92SAndroid Build Coastguard Worker 
377*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input0Values
378*89c4ff92SAndroid Build Coastguard Worker     {
379*89c4ff92SAndroid Build Coastguard Worker         1.f, 2.f, 3.f,  4.f,  5.f,  6.f,
380*89c4ff92SAndroid Build Coastguard Worker         7.f, 8.f, 9.f, 10.f, 11.f, 12.f
381*89c4ff92SAndroid Build Coastguard Worker     };
382*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input1Values { 4.f, 5.f, 6.f };
383*89c4ff92SAndroid Build Coastguard Worker 
384*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues
385*89c4ff92SAndroid Build Coastguard Worker     {
386*89c4ff92SAndroid Build Coastguard Worker         true, true, true, false, false, false,
387*89c4ff92SAndroid Build Coastguard Worker         false, false, false, false, false, false
388*89c4ff92SAndroid Build Coastguard Worker     };
389*89c4ff92SAndroid Build Coastguard Worker 
390*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<float>(tflite::BuiltinOperator_LESS,
391*89c4ff92SAndroid Build Coastguard Worker                           ::tflite::TensorType_FLOAT32,
392*89c4ff92SAndroid Build Coastguard Worker                           backends,
393*89c4ff92SAndroid Build Coastguard Worker                           input0Shape,
394*89c4ff92SAndroid Build Coastguard Worker                           input1Shape,
395*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputShape,
396*89c4ff92SAndroid Build Coastguard Worker                           input0Values,
397*89c4ff92SAndroid Build Coastguard Worker                           input1Values,
398*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputValues);
399*89c4ff92SAndroid Build Coastguard Worker }
400*89c4ff92SAndroid Build Coastguard Worker 
LessInt32Test(std::vector<armnn::BackendId> & backends)401*89c4ff92SAndroid Build Coastguard Worker void LessInt32Test(std::vector<armnn::BackendId>& backends)
402*89c4ff92SAndroid Build Coastguard Worker {
403*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 1 };
404*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 2, 2, 1 };
405*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 1 };
406*89c4ff92SAndroid Build Coastguard Worker 
407*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Values = { 1, 5, 6, 3 };
408*89c4ff92SAndroid Build Coastguard Worker 
409*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Values = { 1, 3, 9, 4 };
410*89c4ff92SAndroid Build Coastguard Worker 
411*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues = { false, false, true, true };
412*89c4ff92SAndroid Build Coastguard Worker 
413*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<int32_t>(tflite::BuiltinOperator_LESS,
414*89c4ff92SAndroid Build Coastguard Worker                             ::tflite::TensorType_INT32,
415*89c4ff92SAndroid Build Coastguard Worker                             backends,
416*89c4ff92SAndroid Build Coastguard Worker                             input0Shape,
417*89c4ff92SAndroid Build Coastguard Worker                             input1Shape,
418*89c4ff92SAndroid Build Coastguard Worker                             expectedOutputShape,
419*89c4ff92SAndroid Build Coastguard Worker                             input0Values,
420*89c4ff92SAndroid Build Coastguard Worker                             input1Values,
421*89c4ff92SAndroid Build Coastguard Worker                             expectedOutputValues);
422*89c4ff92SAndroid Build Coastguard Worker }
423*89c4ff92SAndroid Build Coastguard Worker 
LessEqualFP32Test(std::vector<armnn::BackendId> & backends)424*89c4ff92SAndroid Build Coastguard Worker void LessEqualFP32Test(std::vector<armnn::BackendId>& backends)
425*89c4ff92SAndroid Build Coastguard Worker {
426*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 1 };
427*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 2, 2, 1 };
428*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 1 };
429*89c4ff92SAndroid Build Coastguard Worker 
430*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input0Values = { 1.f, 5.f, 6.f, 4.f };
431*89c4ff92SAndroid Build Coastguard Worker 
432*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input1Values = { 1.f, 3.f, 9.f, 4.f };
433*89c4ff92SAndroid Build Coastguard Worker 
434*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues = { true, false, true, true };
435*89c4ff92SAndroid Build Coastguard Worker 
436*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<float>(tflite::BuiltinOperator_LESS_EQUAL,
437*89c4ff92SAndroid Build Coastguard Worker                           ::tflite::TensorType_FLOAT32,
438*89c4ff92SAndroid Build Coastguard Worker                           backends,
439*89c4ff92SAndroid Build Coastguard Worker                           input0Shape,
440*89c4ff92SAndroid Build Coastguard Worker                           input1Shape,
441*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputShape,
442*89c4ff92SAndroid Build Coastguard Worker                           input0Values,
443*89c4ff92SAndroid Build Coastguard Worker                           input1Values,
444*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputValues);
445*89c4ff92SAndroid Build Coastguard Worker }
446*89c4ff92SAndroid Build Coastguard Worker 
LessEqualBroadcastTest(std::vector<armnn::BackendId> & backends)447*89c4ff92SAndroid Build Coastguard Worker void LessEqualBroadcastTest(std::vector<armnn::BackendId>& backends)
448*89c4ff92SAndroid Build Coastguard Worker {
449*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 3 };
450*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 1, 1, 3 };
451*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 3 };
452*89c4ff92SAndroid Build Coastguard Worker 
453*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input0Values
454*89c4ff92SAndroid Build Coastguard Worker     {
455*89c4ff92SAndroid Build Coastguard Worker         1.f, 2.f, 3.f,  4.f,  5.f,  6.f,
456*89c4ff92SAndroid Build Coastguard Worker         7.f, 8.f, 9.f, 10.f, 11.f, 12.f
457*89c4ff92SAndroid Build Coastguard Worker     };
458*89c4ff92SAndroid Build Coastguard Worker     std::vector<float> input1Values { 4.f, 5.f, 6.f };
459*89c4ff92SAndroid Build Coastguard Worker 
460*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues
461*89c4ff92SAndroid Build Coastguard Worker     {
462*89c4ff92SAndroid Build Coastguard Worker         true, true, true, true, true, true,
463*89c4ff92SAndroid Build Coastguard Worker         false, false, false, false, false, false
464*89c4ff92SAndroid Build Coastguard Worker     };
465*89c4ff92SAndroid Build Coastguard Worker 
466*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<float>(tflite::BuiltinOperator_LESS_EQUAL,
467*89c4ff92SAndroid Build Coastguard Worker                           ::tflite::TensorType_FLOAT32,
468*89c4ff92SAndroid Build Coastguard Worker                           backends,
469*89c4ff92SAndroid Build Coastguard Worker                           input0Shape,
470*89c4ff92SAndroid Build Coastguard Worker                           input1Shape,
471*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputShape,
472*89c4ff92SAndroid Build Coastguard Worker                           input0Values,
473*89c4ff92SAndroid Build Coastguard Worker                           input1Values,
474*89c4ff92SAndroid Build Coastguard Worker                           expectedOutputValues);
475*89c4ff92SAndroid Build Coastguard Worker }
476*89c4ff92SAndroid Build Coastguard Worker 
LessEqualInt32Test(std::vector<armnn::BackendId> & backends)477*89c4ff92SAndroid Build Coastguard Worker void LessEqualInt32Test(std::vector<armnn::BackendId>& backends)
478*89c4ff92SAndroid Build Coastguard Worker {
479*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Shape { 1, 2, 2, 1 };
480*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Shape { 1, 2, 2, 1 };
481*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> expectedOutputShape { 1, 2, 2, 1 };
482*89c4ff92SAndroid Build Coastguard Worker 
483*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input0Values = { 1, 5, 6, 3 };
484*89c4ff92SAndroid Build Coastguard Worker 
485*89c4ff92SAndroid Build Coastguard Worker     std::vector<int32_t> input1Values = { 1, 3, 9, 4 };
486*89c4ff92SAndroid Build Coastguard Worker 
487*89c4ff92SAndroid Build Coastguard Worker     std::vector<bool> expectedOutputValues = { true, false, true, true };
488*89c4ff92SAndroid Build Coastguard Worker 
489*89c4ff92SAndroid Build Coastguard Worker     ComparisonTest<int32_t>(tflite::BuiltinOperator_LESS_EQUAL,
490*89c4ff92SAndroid Build Coastguard Worker                             ::tflite::TensorType_INT32,
491*89c4ff92SAndroid Build Coastguard Worker                             backends,
492*89c4ff92SAndroid Build Coastguard Worker                             input0Shape,
493*89c4ff92SAndroid Build Coastguard Worker                             input1Shape,
494*89c4ff92SAndroid Build Coastguard Worker                             expectedOutputShape,
495*89c4ff92SAndroid Build Coastguard Worker                             input0Values,
496*89c4ff92SAndroid Build Coastguard Worker                             input1Values,
497*89c4ff92SAndroid Build Coastguard Worker                             expectedOutputValues);
498*89c4ff92SAndroid Build Coastguard Worker }
499*89c4ff92SAndroid Build Coastguard Worker 
500*89c4ff92SAndroid Build Coastguard Worker TEST_SUITE("Comparison_CpuRefTests")
501*89c4ff92SAndroid Build Coastguard Worker {
502*89c4ff92SAndroid Build Coastguard Worker 
503*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("EQUAL_FP32_CpuRef_Test")
504*89c4ff92SAndroid Build Coastguard Worker {
505*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
506*89c4ff92SAndroid Build Coastguard Worker     EqualFP32Test(backends);
507*89c4ff92SAndroid Build Coastguard Worker }
508*89c4ff92SAndroid Build Coastguard Worker 
509*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("EQUAL_Broadcast_CpuRef_Test")
510*89c4ff92SAndroid Build Coastguard Worker {
511*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
512*89c4ff92SAndroid Build Coastguard Worker     EqualBroadcastTest(backends);
513*89c4ff92SAndroid Build Coastguard Worker }
514*89c4ff92SAndroid Build Coastguard Worker 
515*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("EQUAL_INT32_CpuRef_Test")
516*89c4ff92SAndroid Build Coastguard Worker {
517*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
518*89c4ff92SAndroid Build Coastguard Worker     EqualInt32Test(backends);
519*89c4ff92SAndroid Build Coastguard Worker }
520*89c4ff92SAndroid Build Coastguard Worker 
521*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("NOT_EQUAL_FP32_CpuRef_Test")
522*89c4ff92SAndroid Build Coastguard Worker {
523*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
524*89c4ff92SAndroid Build Coastguard Worker     NotEqualFP32Test(backends);
525*89c4ff92SAndroid Build Coastguard Worker }
526*89c4ff92SAndroid Build Coastguard Worker 
527*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("NOT_EQUAL_Broadcast_CpuRef_Test")
528*89c4ff92SAndroid Build Coastguard Worker {
529*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
530*89c4ff92SAndroid Build Coastguard Worker     NotEqualBroadcastTest(backends);
531*89c4ff92SAndroid Build Coastguard Worker }
532*89c4ff92SAndroid Build Coastguard Worker 
533*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("NOT_EQUAL_INT32_CpuRef_Test")
534*89c4ff92SAndroid Build Coastguard Worker {
535*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
536*89c4ff92SAndroid Build Coastguard Worker     NotEqualInt32Test(backends);
537*89c4ff92SAndroid Build Coastguard Worker }
538*89c4ff92SAndroid Build Coastguard Worker 
539*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_FP32_CpuRef_Test")
540*89c4ff92SAndroid Build Coastguard Worker {
541*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
542*89c4ff92SAndroid Build Coastguard Worker     GreaterFP32Test(backends);
543*89c4ff92SAndroid Build Coastguard Worker }
544*89c4ff92SAndroid Build Coastguard Worker 
545*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_Broadcast_CpuRef_Test")
546*89c4ff92SAndroid Build Coastguard Worker {
547*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
548*89c4ff92SAndroid Build Coastguard Worker     GreaterBroadcastTest(backends);
549*89c4ff92SAndroid Build Coastguard Worker }
550*89c4ff92SAndroid Build Coastguard Worker 
551*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_INT32_CpuRef_Test")
552*89c4ff92SAndroid Build Coastguard Worker {
553*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
554*89c4ff92SAndroid Build Coastguard Worker     GreaterInt32Test(backends);
555*89c4ff92SAndroid Build Coastguard Worker }
556*89c4ff92SAndroid Build Coastguard Worker 
557*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_EQUAL_FP32_CpuRef_Test")
558*89c4ff92SAndroid Build Coastguard Worker {
559*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
560*89c4ff92SAndroid Build Coastguard Worker     GreaterEqualFP32Test(backends);
561*89c4ff92SAndroid Build Coastguard Worker }
562*89c4ff92SAndroid Build Coastguard Worker 
563*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_EQUAL_Broadcast_CpuRef_Test")
564*89c4ff92SAndroid Build Coastguard Worker {
565*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
566*89c4ff92SAndroid Build Coastguard Worker     GreaterEqualBroadcastTest(backends);
567*89c4ff92SAndroid Build Coastguard Worker }
568*89c4ff92SAndroid Build Coastguard Worker 
569*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_EQUAL_INT32_CpuRef_Test")
570*89c4ff92SAndroid Build Coastguard Worker {
571*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
572*89c4ff92SAndroid Build Coastguard Worker     GreaterEqualInt32Test(backends);
573*89c4ff92SAndroid Build Coastguard Worker }
574*89c4ff92SAndroid Build Coastguard Worker 
575*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_FP32_CpuRef_Test")
576*89c4ff92SAndroid Build Coastguard Worker {
577*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
578*89c4ff92SAndroid Build Coastguard Worker     LessFP32Test(backends);
579*89c4ff92SAndroid Build Coastguard Worker }
580*89c4ff92SAndroid Build Coastguard Worker 
581*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_Broadcast_CpuRef_Test")
582*89c4ff92SAndroid Build Coastguard Worker {
583*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
584*89c4ff92SAndroid Build Coastguard Worker     LessBroadcastTest(backends);
585*89c4ff92SAndroid Build Coastguard Worker }
586*89c4ff92SAndroid Build Coastguard Worker 
587*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_INT32_CpuRef_Test")
588*89c4ff92SAndroid Build Coastguard Worker {
589*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
590*89c4ff92SAndroid Build Coastguard Worker     LessInt32Test(backends);
591*89c4ff92SAndroid Build Coastguard Worker }
592*89c4ff92SAndroid Build Coastguard Worker 
593*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_EQUAL_FP32_CpuRef_Test")
594*89c4ff92SAndroid Build Coastguard Worker {
595*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
596*89c4ff92SAndroid Build Coastguard Worker     LessEqualFP32Test(backends);
597*89c4ff92SAndroid Build Coastguard Worker }
598*89c4ff92SAndroid Build Coastguard Worker 
599*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_EQUAL_Broadcast_CpuRef_Test")
600*89c4ff92SAndroid Build Coastguard Worker {
601*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
602*89c4ff92SAndroid Build Coastguard Worker     LessEqualBroadcastTest(backends);
603*89c4ff92SAndroid Build Coastguard Worker }
604*89c4ff92SAndroid Build Coastguard Worker 
605*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_EQUAL_INT32_CpuRef_Test")
606*89c4ff92SAndroid Build Coastguard Worker {
607*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuRef };
608*89c4ff92SAndroid Build Coastguard Worker     LessEqualInt32Test(backends);
609*89c4ff92SAndroid Build Coastguard Worker }
610*89c4ff92SAndroid Build Coastguard Worker } // End TEST_SUITE("Comparison_CpuRefTests")
611*89c4ff92SAndroid Build Coastguard Worker 
612*89c4ff92SAndroid Build Coastguard Worker 
613*89c4ff92SAndroid Build Coastguard Worker 
614*89c4ff92SAndroid Build Coastguard Worker TEST_SUITE("Comparison_GpuAccTests")
615*89c4ff92SAndroid Build Coastguard Worker {
616*89c4ff92SAndroid Build Coastguard Worker 
617*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("EQUAL_FP32_GpuAcc_Test")
618*89c4ff92SAndroid Build Coastguard Worker {
619*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
620*89c4ff92SAndroid Build Coastguard Worker     EqualFP32Test(backends);
621*89c4ff92SAndroid Build Coastguard Worker }
622*89c4ff92SAndroid Build Coastguard Worker 
623*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("EQUAL_Broadcast_GpuAcc_Test")
624*89c4ff92SAndroid Build Coastguard Worker {
625*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
626*89c4ff92SAndroid Build Coastguard Worker     EqualBroadcastTest(backends);
627*89c4ff92SAndroid Build Coastguard Worker }
628*89c4ff92SAndroid Build Coastguard Worker 
629*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("EQUAL_INT32_GpuAcc_Test")
630*89c4ff92SAndroid Build Coastguard Worker {
631*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
632*89c4ff92SAndroid Build Coastguard Worker     EqualInt32Test(backends);
633*89c4ff92SAndroid Build Coastguard Worker }
634*89c4ff92SAndroid Build Coastguard Worker 
635*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("NOT_EQUAL_FP32_GpuAcc_Test")
636*89c4ff92SAndroid Build Coastguard Worker {
637*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
638*89c4ff92SAndroid Build Coastguard Worker     NotEqualFP32Test(backends);
639*89c4ff92SAndroid Build Coastguard Worker }
640*89c4ff92SAndroid Build Coastguard Worker 
641*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("NOT_EQUAL_Broadcast_GpuAcc_Test")
642*89c4ff92SAndroid Build Coastguard Worker {
643*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
644*89c4ff92SAndroid Build Coastguard Worker     NotEqualBroadcastTest(backends);
645*89c4ff92SAndroid Build Coastguard Worker }
646*89c4ff92SAndroid Build Coastguard Worker 
647*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("NOT_EQUAL_INT32_GpuAcc_Test")
648*89c4ff92SAndroid Build Coastguard Worker {
649*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
650*89c4ff92SAndroid Build Coastguard Worker     NotEqualInt32Test(backends);
651*89c4ff92SAndroid Build Coastguard Worker }
652*89c4ff92SAndroid Build Coastguard Worker 
653*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_FP32_GpuAcc_Test")
654*89c4ff92SAndroid Build Coastguard Worker {
655*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc,
656*89c4ff92SAndroid Build Coastguard Worker                                                armnn::Compute::CpuRef };
657*89c4ff92SAndroid Build Coastguard Worker     GreaterFP32Test(backends);
658*89c4ff92SAndroid Build Coastguard Worker }
659*89c4ff92SAndroid Build Coastguard Worker 
660*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_Broadcast_GpuAcc_Test")
661*89c4ff92SAndroid Build Coastguard Worker {
662*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc,
663*89c4ff92SAndroid Build Coastguard Worker                                                armnn::Compute::CpuRef };
664*89c4ff92SAndroid Build Coastguard Worker     GreaterBroadcastTest(backends);
665*89c4ff92SAndroid Build Coastguard Worker }
666*89c4ff92SAndroid Build Coastguard Worker 
667*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_INT32_GpuAcc_Test")
668*89c4ff92SAndroid Build Coastguard Worker {
669*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc,
670*89c4ff92SAndroid Build Coastguard Worker                                                armnn::Compute::CpuRef };
671*89c4ff92SAndroid Build Coastguard Worker     GreaterInt32Test(backends);
672*89c4ff92SAndroid Build Coastguard Worker }
673*89c4ff92SAndroid Build Coastguard Worker 
674*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_EQUAL_FP32_GpuAcc_Test")
675*89c4ff92SAndroid Build Coastguard Worker {
676*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
677*89c4ff92SAndroid Build Coastguard Worker     GreaterEqualFP32Test(backends);
678*89c4ff92SAndroid Build Coastguard Worker }
679*89c4ff92SAndroid Build Coastguard Worker 
680*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_EQUAL_Broadcast_GpuAcc_Test")
681*89c4ff92SAndroid Build Coastguard Worker {
682*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
683*89c4ff92SAndroid Build Coastguard Worker     GreaterEqualBroadcastTest(backends);
684*89c4ff92SAndroid Build Coastguard Worker }
685*89c4ff92SAndroid Build Coastguard Worker 
686*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_EQUAL_INT32_GpuAcc_Test")
687*89c4ff92SAndroid Build Coastguard Worker {
688*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
689*89c4ff92SAndroid Build Coastguard Worker     GreaterEqualInt32Test(backends);
690*89c4ff92SAndroid Build Coastguard Worker }
691*89c4ff92SAndroid Build Coastguard Worker 
692*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_FP32_GpuAcc_Test")
693*89c4ff92SAndroid Build Coastguard Worker {
694*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
695*89c4ff92SAndroid Build Coastguard Worker     LessFP32Test(backends);
696*89c4ff92SAndroid Build Coastguard Worker }
697*89c4ff92SAndroid Build Coastguard Worker 
698*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_Broadcast_GpuAcc_Test")
699*89c4ff92SAndroid Build Coastguard Worker {
700*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
701*89c4ff92SAndroid Build Coastguard Worker     LessBroadcastTest(backends);
702*89c4ff92SAndroid Build Coastguard Worker }
703*89c4ff92SAndroid Build Coastguard Worker 
704*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_INT32_GpuAcc_Test")
705*89c4ff92SAndroid Build Coastguard Worker {
706*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
707*89c4ff92SAndroid Build Coastguard Worker     LessInt32Test(backends);
708*89c4ff92SAndroid Build Coastguard Worker }
709*89c4ff92SAndroid Build Coastguard Worker 
710*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_EQUAL_FP32_GpuAcc_Test")
711*89c4ff92SAndroid Build Coastguard Worker {
712*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
713*89c4ff92SAndroid Build Coastguard Worker     LessEqualFP32Test(backends);
714*89c4ff92SAndroid Build Coastguard Worker }
715*89c4ff92SAndroid Build Coastguard Worker 
716*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_EQUAL_Broadcast_GpuAcc_Test")
717*89c4ff92SAndroid Build Coastguard Worker {
718*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
719*89c4ff92SAndroid Build Coastguard Worker     LessEqualBroadcastTest(backends);
720*89c4ff92SAndroid Build Coastguard Worker }
721*89c4ff92SAndroid Build Coastguard Worker 
722*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_EQUAL_INT32_GpuAcc_Test")
723*89c4ff92SAndroid Build Coastguard Worker {
724*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::GpuAcc };
725*89c4ff92SAndroid Build Coastguard Worker     LessEqualInt32Test(backends);
726*89c4ff92SAndroid Build Coastguard Worker }
727*89c4ff92SAndroid Build Coastguard Worker 
728*89c4ff92SAndroid Build Coastguard Worker } // End TEST_SUITE("Comparison_GpuAccTests")
729*89c4ff92SAndroid Build Coastguard Worker 
730*89c4ff92SAndroid Build Coastguard Worker 
731*89c4ff92SAndroid Build Coastguard Worker TEST_SUITE("Comparison_CpuAccTests")
732*89c4ff92SAndroid Build Coastguard Worker {
733*89c4ff92SAndroid Build Coastguard Worker 
734*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("EQUAL_FP32_CpuAcc_Test")
735*89c4ff92SAndroid Build Coastguard Worker {
736*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
737*89c4ff92SAndroid Build Coastguard Worker     EqualFP32Test(backends);
738*89c4ff92SAndroid Build Coastguard Worker }
739*89c4ff92SAndroid Build Coastguard Worker 
740*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("EQUAL_Broadcast_CpuAcc_Test")
741*89c4ff92SAndroid Build Coastguard Worker {
742*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
743*89c4ff92SAndroid Build Coastguard Worker     EqualBroadcastTest(backends);
744*89c4ff92SAndroid Build Coastguard Worker }
745*89c4ff92SAndroid Build Coastguard Worker 
746*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("EQUAL_INT32_CpuAcc_Test")
747*89c4ff92SAndroid Build Coastguard Worker {
748*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
749*89c4ff92SAndroid Build Coastguard Worker     EqualInt32Test(backends);
750*89c4ff92SAndroid Build Coastguard Worker }
751*89c4ff92SAndroid Build Coastguard Worker 
752*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("NOT_EQUAL_FP32_CpuAcc_Test")
753*89c4ff92SAndroid Build Coastguard Worker {
754*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
755*89c4ff92SAndroid Build Coastguard Worker     NotEqualFP32Test(backends);
756*89c4ff92SAndroid Build Coastguard Worker }
757*89c4ff92SAndroid Build Coastguard Worker 
758*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("NOT_EQUAL_Broadcast_CpuAcc_Test")
759*89c4ff92SAndroid Build Coastguard Worker {
760*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
761*89c4ff92SAndroid Build Coastguard Worker     NotEqualBroadcastTest(backends);
762*89c4ff92SAndroid Build Coastguard Worker }
763*89c4ff92SAndroid Build Coastguard Worker 
764*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("NOT_EQUAL_INT32_CpuAcc_Test")
765*89c4ff92SAndroid Build Coastguard Worker {
766*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
767*89c4ff92SAndroid Build Coastguard Worker     NotEqualInt32Test(backends);
768*89c4ff92SAndroid Build Coastguard Worker }
769*89c4ff92SAndroid Build Coastguard Worker 
770*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_FP32_CpuAcc_Test")
771*89c4ff92SAndroid Build Coastguard Worker {
772*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
773*89c4ff92SAndroid Build Coastguard Worker     GreaterFP32Test(backends);
774*89c4ff92SAndroid Build Coastguard Worker }
775*89c4ff92SAndroid Build Coastguard Worker 
776*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_Broadcast_CpuAcc_Test")
777*89c4ff92SAndroid Build Coastguard Worker {
778*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
779*89c4ff92SAndroid Build Coastguard Worker     GreaterBroadcastTest(backends);
780*89c4ff92SAndroid Build Coastguard Worker }
781*89c4ff92SAndroid Build Coastguard Worker 
782*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_INT32_CpuAcc_Test")
783*89c4ff92SAndroid Build Coastguard Worker {
784*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
785*89c4ff92SAndroid Build Coastguard Worker     GreaterInt32Test(backends);
786*89c4ff92SAndroid Build Coastguard Worker }
787*89c4ff92SAndroid Build Coastguard Worker 
788*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_EQUAL_FP32_CpuAcc_Test")
789*89c4ff92SAndroid Build Coastguard Worker {
790*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
791*89c4ff92SAndroid Build Coastguard Worker     GreaterEqualFP32Test(backends);
792*89c4ff92SAndroid Build Coastguard Worker }
793*89c4ff92SAndroid Build Coastguard Worker 
794*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_EQUAL_Broadcast_CpuAcc_Test")
795*89c4ff92SAndroid Build Coastguard Worker {
796*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
797*89c4ff92SAndroid Build Coastguard Worker     GreaterEqualBroadcastTest(backends);
798*89c4ff92SAndroid Build Coastguard Worker }
799*89c4ff92SAndroid Build Coastguard Worker 
800*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("GREATER_EQUAL_INT32_CpuAcc_Test")
801*89c4ff92SAndroid Build Coastguard Worker {
802*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
803*89c4ff92SAndroid Build Coastguard Worker     GreaterEqualInt32Test(backends);
804*89c4ff92SAndroid Build Coastguard Worker }
805*89c4ff92SAndroid Build Coastguard Worker 
806*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_FP32_CpuAcc_Test")
807*89c4ff92SAndroid Build Coastguard Worker {
808*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
809*89c4ff92SAndroid Build Coastguard Worker     LessFP32Test(backends);
810*89c4ff92SAndroid Build Coastguard Worker }
811*89c4ff92SAndroid Build Coastguard Worker 
812*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_Broadcast_CpuAcc_Test")
813*89c4ff92SAndroid Build Coastguard Worker {
814*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
815*89c4ff92SAndroid Build Coastguard Worker     LessBroadcastTest(backends);
816*89c4ff92SAndroid Build Coastguard Worker }
817*89c4ff92SAndroid Build Coastguard Worker 
818*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_INT32_CpuAcc_Test")
819*89c4ff92SAndroid Build Coastguard Worker {
820*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
821*89c4ff92SAndroid Build Coastguard Worker     LessInt32Test(backends);
822*89c4ff92SAndroid Build Coastguard Worker }
823*89c4ff92SAndroid Build Coastguard Worker 
824*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_EQUAL_FP32_CpuAcc_Test")
825*89c4ff92SAndroid Build Coastguard Worker {
826*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
827*89c4ff92SAndroid Build Coastguard Worker     LessEqualFP32Test(backends);
828*89c4ff92SAndroid Build Coastguard Worker }
829*89c4ff92SAndroid Build Coastguard Worker 
830*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_EQUAL_Broadcast_CpuAcc_Test")
831*89c4ff92SAndroid Build Coastguard Worker {
832*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
833*89c4ff92SAndroid Build Coastguard Worker     LessEqualBroadcastTest(backends);
834*89c4ff92SAndroid Build Coastguard Worker }
835*89c4ff92SAndroid Build Coastguard Worker 
836*89c4ff92SAndroid Build Coastguard Worker TEST_CASE ("LESS_EQUAL_INT32_CpuAcc_Test")
837*89c4ff92SAndroid Build Coastguard Worker {
838*89c4ff92SAndroid Build Coastguard Worker     std::vector<armnn::BackendId> backends = { armnn::Compute::CpuAcc };
839*89c4ff92SAndroid Build Coastguard Worker     LessEqualInt32Test(backends);
840*89c4ff92SAndroid Build Coastguard Worker }
841*89c4ff92SAndroid Build Coastguard Worker 
842*89c4ff92SAndroid Build Coastguard Worker } // End TEST_SUITE("Comparison_CpuAccTests")
843*89c4ff92SAndroid Build Coastguard Worker 
844*89c4ff92SAndroid Build Coastguard Worker } // namespace armnnDelegate