1 // Copyright 2019 Google LLC
2 //
3 // This source code is licensed under the BSD-style license found in the
4 // LICENSE file in the root directory of this source tree.
5 //
6 // Auto-generated file. Do not edit!
7 // Specification: test/f32-vaddc-relu.yaml
8 // Generator: tools/generate-vbinary-test.py
9
10
11 #include <gtest/gtest.h>
12
13 #include <xnnpack/common.h>
14 #include <xnnpack/isa-checks.h>
15
16 #include <xnnpack/vbinary.h>
17 #include "vbinaryc-microkernel-tester.h"
18
19
20 #if XNN_ARCH_WASMSIMD
TEST(F32_VADDC_RELU__WASMSIMD_X4,batch_eq_4)21 TEST(F32_VADDC_RELU__WASMSIMD_X4, batch_eq_4) {
22 VBinOpCMicrokernelTester()
23 .batch_size(4)
24 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x4, VBinOpCMicrokernelTester::OpType::AddC);
25 }
26
TEST(F32_VADDC_RELU__WASMSIMD_X4,batch_div_4)27 TEST(F32_VADDC_RELU__WASMSIMD_X4, batch_div_4) {
28 for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
29 VBinOpCMicrokernelTester()
30 .batch_size(batch_size)
31 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x4, VBinOpCMicrokernelTester::OpType::AddC);
32 }
33 }
34
TEST(F32_VADDC_RELU__WASMSIMD_X4,batch_lt_4)35 TEST(F32_VADDC_RELU__WASMSIMD_X4, batch_lt_4) {
36 for (size_t batch_size = 1; batch_size < 4; batch_size++) {
37 VBinOpCMicrokernelTester()
38 .batch_size(batch_size)
39 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x4, VBinOpCMicrokernelTester::OpType::AddC);
40 }
41 }
42
TEST(F32_VADDC_RELU__WASMSIMD_X4,batch_gt_4)43 TEST(F32_VADDC_RELU__WASMSIMD_X4, batch_gt_4) {
44 for (size_t batch_size = 5; batch_size < 8; batch_size++) {
45 VBinOpCMicrokernelTester()
46 .batch_size(batch_size)
47 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x4, VBinOpCMicrokernelTester::OpType::AddC);
48 }
49 }
50
TEST(F32_VADDC_RELU__WASMSIMD_X4,inplace)51 TEST(F32_VADDC_RELU__WASMSIMD_X4, inplace) {
52 for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
53 VBinOpCMicrokernelTester()
54 .batch_size(batch_size)
55 .inplace(true)
56 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x4, VBinOpCMicrokernelTester::OpType::AddC);
57 }
58 }
59 #endif // XNN_ARCH_WASMSIMD
60
61
62 #if XNN_ARCH_WASMSIMD
TEST(F32_VADDC_RELU__WASMSIMD_X8,batch_eq_8)63 TEST(F32_VADDC_RELU__WASMSIMD_X8, batch_eq_8) {
64 VBinOpCMicrokernelTester()
65 .batch_size(8)
66 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x8, VBinOpCMicrokernelTester::OpType::AddC);
67 }
68
TEST(F32_VADDC_RELU__WASMSIMD_X8,batch_div_8)69 TEST(F32_VADDC_RELU__WASMSIMD_X8, batch_div_8) {
70 for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
71 VBinOpCMicrokernelTester()
72 .batch_size(batch_size)
73 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x8, VBinOpCMicrokernelTester::OpType::AddC);
74 }
75 }
76
TEST(F32_VADDC_RELU__WASMSIMD_X8,batch_lt_8)77 TEST(F32_VADDC_RELU__WASMSIMD_X8, batch_lt_8) {
78 for (size_t batch_size = 1; batch_size < 8; batch_size++) {
79 VBinOpCMicrokernelTester()
80 .batch_size(batch_size)
81 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x8, VBinOpCMicrokernelTester::OpType::AddC);
82 }
83 }
84
TEST(F32_VADDC_RELU__WASMSIMD_X8,batch_gt_8)85 TEST(F32_VADDC_RELU__WASMSIMD_X8, batch_gt_8) {
86 for (size_t batch_size = 9; batch_size < 16; batch_size++) {
87 VBinOpCMicrokernelTester()
88 .batch_size(batch_size)
89 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x8, VBinOpCMicrokernelTester::OpType::AddC);
90 }
91 }
92
TEST(F32_VADDC_RELU__WASMSIMD_X8,inplace)93 TEST(F32_VADDC_RELU__WASMSIMD_X8, inplace) {
94 for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
95 VBinOpCMicrokernelTester()
96 .batch_size(batch_size)
97 .inplace(true)
98 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x8, VBinOpCMicrokernelTester::OpType::AddC);
99 }
100 }
101 #endif // XNN_ARCH_WASMSIMD
102
103
104 #if XNN_ARCH_WASMSIMD
TEST(F32_VADDC_RELU__WASMSIMD_X16,batch_eq_16)105 TEST(F32_VADDC_RELU__WASMSIMD_X16, batch_eq_16) {
106 VBinOpCMicrokernelTester()
107 .batch_size(16)
108 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x16, VBinOpCMicrokernelTester::OpType::AddC);
109 }
110
TEST(F32_VADDC_RELU__WASMSIMD_X16,batch_div_16)111 TEST(F32_VADDC_RELU__WASMSIMD_X16, batch_div_16) {
112 for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
113 VBinOpCMicrokernelTester()
114 .batch_size(batch_size)
115 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x16, VBinOpCMicrokernelTester::OpType::AddC);
116 }
117 }
118
TEST(F32_VADDC_RELU__WASMSIMD_X16,batch_lt_16)119 TEST(F32_VADDC_RELU__WASMSIMD_X16, batch_lt_16) {
120 for (size_t batch_size = 1; batch_size < 16; batch_size++) {
121 VBinOpCMicrokernelTester()
122 .batch_size(batch_size)
123 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x16, VBinOpCMicrokernelTester::OpType::AddC);
124 }
125 }
126
TEST(F32_VADDC_RELU__WASMSIMD_X16,batch_gt_16)127 TEST(F32_VADDC_RELU__WASMSIMD_X16, batch_gt_16) {
128 for (size_t batch_size = 17; batch_size < 32; batch_size++) {
129 VBinOpCMicrokernelTester()
130 .batch_size(batch_size)
131 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x16, VBinOpCMicrokernelTester::OpType::AddC);
132 }
133 }
134
TEST(F32_VADDC_RELU__WASMSIMD_X16,inplace)135 TEST(F32_VADDC_RELU__WASMSIMD_X16, inplace) {
136 for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
137 VBinOpCMicrokernelTester()
138 .batch_size(batch_size)
139 .inplace(true)
140 .Test(xnn_f32_vaddc_relu_ukernel__wasmsimd_x16, VBinOpCMicrokernelTester::OpType::AddC);
141 }
142 }
143 #endif // XNN_ARCH_WASMSIMD
144
145
146 #if XNN_ARCH_WASM || XNN_ARCH_WASMSIMD
TEST(F32_VADDC_RELU__WASM_X1,batch_eq_1)147 TEST(F32_VADDC_RELU__WASM_X1, batch_eq_1) {
148 VBinOpCMicrokernelTester()
149 .batch_size(1)
150 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x1, VBinOpCMicrokernelTester::OpType::AddC);
151 }
152
TEST(F32_VADDC_RELU__WASM_X1,batch_gt_1)153 TEST(F32_VADDC_RELU__WASM_X1, batch_gt_1) {
154 for (size_t batch_size = 2; batch_size < 10; batch_size++) {
155 VBinOpCMicrokernelTester()
156 .batch_size(batch_size)
157 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x1, VBinOpCMicrokernelTester::OpType::AddC);
158 }
159 }
160
TEST(F32_VADDC_RELU__WASM_X1,inplace)161 TEST(F32_VADDC_RELU__WASM_X1, inplace) {
162 for (size_t batch_size = 1; batch_size <= 5; batch_size += 1) {
163 VBinOpCMicrokernelTester()
164 .batch_size(batch_size)
165 .inplace(true)
166 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x1, VBinOpCMicrokernelTester::OpType::AddC);
167 }
168 }
169 #endif // XNN_ARCH_WASM || XNN_ARCH_WASMSIMD
170
171
172 #if XNN_ARCH_WASM || XNN_ARCH_WASMSIMD
TEST(F32_VADDC_RELU__WASM_X2,batch_eq_2)173 TEST(F32_VADDC_RELU__WASM_X2, batch_eq_2) {
174 VBinOpCMicrokernelTester()
175 .batch_size(2)
176 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x2, VBinOpCMicrokernelTester::OpType::AddC);
177 }
178
TEST(F32_VADDC_RELU__WASM_X2,batch_div_2)179 TEST(F32_VADDC_RELU__WASM_X2, batch_div_2) {
180 for (size_t batch_size = 4; batch_size < 20; batch_size += 2) {
181 VBinOpCMicrokernelTester()
182 .batch_size(batch_size)
183 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x2, VBinOpCMicrokernelTester::OpType::AddC);
184 }
185 }
186
TEST(F32_VADDC_RELU__WASM_X2,batch_lt_2)187 TEST(F32_VADDC_RELU__WASM_X2, batch_lt_2) {
188 for (size_t batch_size = 1; batch_size < 2; batch_size++) {
189 VBinOpCMicrokernelTester()
190 .batch_size(batch_size)
191 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x2, VBinOpCMicrokernelTester::OpType::AddC);
192 }
193 }
194
TEST(F32_VADDC_RELU__WASM_X2,batch_gt_2)195 TEST(F32_VADDC_RELU__WASM_X2, batch_gt_2) {
196 for (size_t batch_size = 3; batch_size < 4; batch_size++) {
197 VBinOpCMicrokernelTester()
198 .batch_size(batch_size)
199 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x2, VBinOpCMicrokernelTester::OpType::AddC);
200 }
201 }
202
TEST(F32_VADDC_RELU__WASM_X2,inplace)203 TEST(F32_VADDC_RELU__WASM_X2, inplace) {
204 for (size_t batch_size = 1; batch_size <= 10; batch_size += 1) {
205 VBinOpCMicrokernelTester()
206 .batch_size(batch_size)
207 .inplace(true)
208 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x2, VBinOpCMicrokernelTester::OpType::AddC);
209 }
210 }
211 #endif // XNN_ARCH_WASM || XNN_ARCH_WASMSIMD
212
213
214 #if XNN_ARCH_WASM || XNN_ARCH_WASMSIMD
TEST(F32_VADDC_RELU__WASM_X4,batch_eq_4)215 TEST(F32_VADDC_RELU__WASM_X4, batch_eq_4) {
216 VBinOpCMicrokernelTester()
217 .batch_size(4)
218 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x4, VBinOpCMicrokernelTester::OpType::AddC);
219 }
220
TEST(F32_VADDC_RELU__WASM_X4,batch_div_4)221 TEST(F32_VADDC_RELU__WASM_X4, batch_div_4) {
222 for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
223 VBinOpCMicrokernelTester()
224 .batch_size(batch_size)
225 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x4, VBinOpCMicrokernelTester::OpType::AddC);
226 }
227 }
228
TEST(F32_VADDC_RELU__WASM_X4,batch_lt_4)229 TEST(F32_VADDC_RELU__WASM_X4, batch_lt_4) {
230 for (size_t batch_size = 1; batch_size < 4; batch_size++) {
231 VBinOpCMicrokernelTester()
232 .batch_size(batch_size)
233 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x4, VBinOpCMicrokernelTester::OpType::AddC);
234 }
235 }
236
TEST(F32_VADDC_RELU__WASM_X4,batch_gt_4)237 TEST(F32_VADDC_RELU__WASM_X4, batch_gt_4) {
238 for (size_t batch_size = 5; batch_size < 8; batch_size++) {
239 VBinOpCMicrokernelTester()
240 .batch_size(batch_size)
241 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x4, VBinOpCMicrokernelTester::OpType::AddC);
242 }
243 }
244
TEST(F32_VADDC_RELU__WASM_X4,inplace)245 TEST(F32_VADDC_RELU__WASM_X4, inplace) {
246 for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
247 VBinOpCMicrokernelTester()
248 .batch_size(batch_size)
249 .inplace(true)
250 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x4, VBinOpCMicrokernelTester::OpType::AddC);
251 }
252 }
253 #endif // XNN_ARCH_WASM || XNN_ARCH_WASMSIMD
254
255
256 #if XNN_ARCH_WASM || XNN_ARCH_WASMSIMD
TEST(F32_VADDC_RELU__WASM_X8,batch_eq_8)257 TEST(F32_VADDC_RELU__WASM_X8, batch_eq_8) {
258 VBinOpCMicrokernelTester()
259 .batch_size(8)
260 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x8, VBinOpCMicrokernelTester::OpType::AddC);
261 }
262
TEST(F32_VADDC_RELU__WASM_X8,batch_div_8)263 TEST(F32_VADDC_RELU__WASM_X8, batch_div_8) {
264 for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
265 VBinOpCMicrokernelTester()
266 .batch_size(batch_size)
267 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x8, VBinOpCMicrokernelTester::OpType::AddC);
268 }
269 }
270
TEST(F32_VADDC_RELU__WASM_X8,batch_lt_8)271 TEST(F32_VADDC_RELU__WASM_X8, batch_lt_8) {
272 for (size_t batch_size = 1; batch_size < 8; batch_size++) {
273 VBinOpCMicrokernelTester()
274 .batch_size(batch_size)
275 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x8, VBinOpCMicrokernelTester::OpType::AddC);
276 }
277 }
278
TEST(F32_VADDC_RELU__WASM_X8,batch_gt_8)279 TEST(F32_VADDC_RELU__WASM_X8, batch_gt_8) {
280 for (size_t batch_size = 9; batch_size < 16; batch_size++) {
281 VBinOpCMicrokernelTester()
282 .batch_size(batch_size)
283 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x8, VBinOpCMicrokernelTester::OpType::AddC);
284 }
285 }
286
TEST(F32_VADDC_RELU__WASM_X8,inplace)287 TEST(F32_VADDC_RELU__WASM_X8, inplace) {
288 for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
289 VBinOpCMicrokernelTester()
290 .batch_size(batch_size)
291 .inplace(true)
292 .Test(xnn_f32_vaddc_relu_ukernel__wasm_x8, VBinOpCMicrokernelTester::OpType::AddC);
293 }
294 }
295 #endif // XNN_ARCH_WASM || XNN_ARCH_WASMSIMD
296
297
TEST(F32_VADDC_RELU__SCALAR_X1,batch_eq_1)298 TEST(F32_VADDC_RELU__SCALAR_X1, batch_eq_1) {
299 VBinOpCMicrokernelTester()
300 .batch_size(1)
301 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x1, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
302 }
303
TEST(F32_VADDC_RELU__SCALAR_X1,batch_gt_1)304 TEST(F32_VADDC_RELU__SCALAR_X1, batch_gt_1) {
305 for (size_t batch_size = 2; batch_size < 10; batch_size++) {
306 VBinOpCMicrokernelTester()
307 .batch_size(batch_size)
308 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x1, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
309 }
310 }
311
TEST(F32_VADDC_RELU__SCALAR_X1,inplace)312 TEST(F32_VADDC_RELU__SCALAR_X1, inplace) {
313 for (size_t batch_size = 1; batch_size <= 5; batch_size += 1) {
314 VBinOpCMicrokernelTester()
315 .batch_size(batch_size)
316 .inplace(true)
317 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x1, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
318 }
319 }
320
321
TEST(F32_VADDC_RELU__SCALAR_X2,batch_eq_2)322 TEST(F32_VADDC_RELU__SCALAR_X2, batch_eq_2) {
323 VBinOpCMicrokernelTester()
324 .batch_size(2)
325 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x2, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
326 }
327
TEST(F32_VADDC_RELU__SCALAR_X2,batch_div_2)328 TEST(F32_VADDC_RELU__SCALAR_X2, batch_div_2) {
329 for (size_t batch_size = 4; batch_size < 20; batch_size += 2) {
330 VBinOpCMicrokernelTester()
331 .batch_size(batch_size)
332 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x2, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
333 }
334 }
335
TEST(F32_VADDC_RELU__SCALAR_X2,batch_lt_2)336 TEST(F32_VADDC_RELU__SCALAR_X2, batch_lt_2) {
337 for (size_t batch_size = 1; batch_size < 2; batch_size++) {
338 VBinOpCMicrokernelTester()
339 .batch_size(batch_size)
340 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x2, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
341 }
342 }
343
TEST(F32_VADDC_RELU__SCALAR_X2,batch_gt_2)344 TEST(F32_VADDC_RELU__SCALAR_X2, batch_gt_2) {
345 for (size_t batch_size = 3; batch_size < 4; batch_size++) {
346 VBinOpCMicrokernelTester()
347 .batch_size(batch_size)
348 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x2, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
349 }
350 }
351
TEST(F32_VADDC_RELU__SCALAR_X2,inplace)352 TEST(F32_VADDC_RELU__SCALAR_X2, inplace) {
353 for (size_t batch_size = 1; batch_size <= 10; batch_size += 1) {
354 VBinOpCMicrokernelTester()
355 .batch_size(batch_size)
356 .inplace(true)
357 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x2, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
358 }
359 }
360
361
TEST(F32_VADDC_RELU__SCALAR_X4,batch_eq_4)362 TEST(F32_VADDC_RELU__SCALAR_X4, batch_eq_4) {
363 VBinOpCMicrokernelTester()
364 .batch_size(4)
365 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x4, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
366 }
367
TEST(F32_VADDC_RELU__SCALAR_X4,batch_div_4)368 TEST(F32_VADDC_RELU__SCALAR_X4, batch_div_4) {
369 for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
370 VBinOpCMicrokernelTester()
371 .batch_size(batch_size)
372 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x4, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
373 }
374 }
375
TEST(F32_VADDC_RELU__SCALAR_X4,batch_lt_4)376 TEST(F32_VADDC_RELU__SCALAR_X4, batch_lt_4) {
377 for (size_t batch_size = 1; batch_size < 4; batch_size++) {
378 VBinOpCMicrokernelTester()
379 .batch_size(batch_size)
380 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x4, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
381 }
382 }
383
TEST(F32_VADDC_RELU__SCALAR_X4,batch_gt_4)384 TEST(F32_VADDC_RELU__SCALAR_X4, batch_gt_4) {
385 for (size_t batch_size = 5; batch_size < 8; batch_size++) {
386 VBinOpCMicrokernelTester()
387 .batch_size(batch_size)
388 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x4, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
389 }
390 }
391
TEST(F32_VADDC_RELU__SCALAR_X4,inplace)392 TEST(F32_VADDC_RELU__SCALAR_X4, inplace) {
393 for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
394 VBinOpCMicrokernelTester()
395 .batch_size(batch_size)
396 .inplace(true)
397 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x4, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
398 }
399 }
400
401
TEST(F32_VADDC_RELU__SCALAR_X8,batch_eq_8)402 TEST(F32_VADDC_RELU__SCALAR_X8, batch_eq_8) {
403 VBinOpCMicrokernelTester()
404 .batch_size(8)
405 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x8, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
406 }
407
TEST(F32_VADDC_RELU__SCALAR_X8,batch_div_8)408 TEST(F32_VADDC_RELU__SCALAR_X8, batch_div_8) {
409 for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
410 VBinOpCMicrokernelTester()
411 .batch_size(batch_size)
412 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x8, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
413 }
414 }
415
TEST(F32_VADDC_RELU__SCALAR_X8,batch_lt_8)416 TEST(F32_VADDC_RELU__SCALAR_X8, batch_lt_8) {
417 for (size_t batch_size = 1; batch_size < 8; batch_size++) {
418 VBinOpCMicrokernelTester()
419 .batch_size(batch_size)
420 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x8, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
421 }
422 }
423
TEST(F32_VADDC_RELU__SCALAR_X8,batch_gt_8)424 TEST(F32_VADDC_RELU__SCALAR_X8, batch_gt_8) {
425 for (size_t batch_size = 9; batch_size < 16; batch_size++) {
426 VBinOpCMicrokernelTester()
427 .batch_size(batch_size)
428 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x8, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
429 }
430 }
431
TEST(F32_VADDC_RELU__SCALAR_X8,inplace)432 TEST(F32_VADDC_RELU__SCALAR_X8, inplace) {
433 for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
434 VBinOpCMicrokernelTester()
435 .batch_size(batch_size)
436 .inplace(true)
437 .Test(xnn_f32_vaddc_relu_ukernel__scalar_x8, VBinOpCMicrokernelTester::OpType::AddC, VBinOpCMicrokernelTester::Variant::Scalar);
438 }
439 }
440