xref: /aosp_15_r20/external/XNNPACK/test/f32-vsigmoid.cc (revision 4bdc94577ba0e567308109d787f7fec7b531ce36)
1*4bdc9457SAndroid Build Coastguard Worker // Copyright 2019 Google LLC
2*4bdc9457SAndroid Build Coastguard Worker //
3*4bdc9457SAndroid Build Coastguard Worker // This source code is licensed under the BSD-style license found in the
4*4bdc9457SAndroid Build Coastguard Worker // LICENSE file in the root directory of this source tree.
5*4bdc9457SAndroid Build Coastguard Worker //
6*4bdc9457SAndroid Build Coastguard Worker // Auto-generated file. Do not edit!
7*4bdc9457SAndroid Build Coastguard Worker //   Specification: test/f32-vsigmoid.yaml
8*4bdc9457SAndroid Build Coastguard Worker //   Generator: tools/generate-vunary-test.py
9*4bdc9457SAndroid Build Coastguard Worker 
10*4bdc9457SAndroid Build Coastguard Worker 
11*4bdc9457SAndroid Build Coastguard Worker #include <gtest/gtest.h>
12*4bdc9457SAndroid Build Coastguard Worker 
13*4bdc9457SAndroid Build Coastguard Worker #include <xnnpack/common.h>
14*4bdc9457SAndroid Build Coastguard Worker #include <xnnpack/isa-checks.h>
15*4bdc9457SAndroid Build Coastguard Worker 
16*4bdc9457SAndroid Build Coastguard Worker #include <xnnpack/vunary.h>
17*4bdc9457SAndroid Build Coastguard Worker #include "vunary-microkernel-tester.h"
18*4bdc9457SAndroid Build Coastguard Worker 
19*4bdc9457SAndroid Build Coastguard Worker 
20*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X4,batch_eq_4)21*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X4, batch_eq_4) {
22*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
23*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
24*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
25*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
26*4bdc9457SAndroid Build Coastguard Worker   }
27*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X4,batch_div_4)28*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X4, batch_div_4) {
29*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
30*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
31*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
32*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
33*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
34*4bdc9457SAndroid Build Coastguard Worker     }
35*4bdc9457SAndroid Build Coastguard Worker   }
36*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X4,batch_lt_4)37*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X4, batch_lt_4) {
38*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
39*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
40*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
41*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
42*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
43*4bdc9457SAndroid Build Coastguard Worker     }
44*4bdc9457SAndroid Build Coastguard Worker   }
45*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X4,batch_gt_4)46*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X4, batch_gt_4) {
47*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
48*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
49*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
50*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
51*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
52*4bdc9457SAndroid Build Coastguard Worker     }
53*4bdc9457SAndroid Build Coastguard Worker   }
54*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X4,inplace)55*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X4, inplace) {
56*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
57*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
58*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
59*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
60*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
61*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
62*4bdc9457SAndroid Build Coastguard Worker     }
63*4bdc9457SAndroid Build Coastguard Worker   }
64*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
65*4bdc9457SAndroid Build Coastguard Worker 
66*4bdc9457SAndroid Build Coastguard Worker 
67*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X8,batch_eq_8)68*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X8, batch_eq_8) {
69*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
70*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
71*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
72*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
73*4bdc9457SAndroid Build Coastguard Worker   }
74*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X8,batch_div_8)75*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X8, batch_div_8) {
76*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
77*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
78*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
79*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
80*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
81*4bdc9457SAndroid Build Coastguard Worker     }
82*4bdc9457SAndroid Build Coastguard Worker   }
83*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X8,batch_lt_8)84*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X8, batch_lt_8) {
85*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
86*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
87*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
88*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
89*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
90*4bdc9457SAndroid Build Coastguard Worker     }
91*4bdc9457SAndroid Build Coastguard Worker   }
92*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X8,batch_gt_8)93*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X8, batch_gt_8) {
94*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
95*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
96*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
97*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
98*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
99*4bdc9457SAndroid Build Coastguard Worker     }
100*4bdc9457SAndroid Build Coastguard Worker   }
101*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X8,inplace)102*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X8, inplace) {
103*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
104*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
105*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
106*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
107*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
108*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
109*4bdc9457SAndroid Build Coastguard Worker     }
110*4bdc9457SAndroid Build Coastguard Worker   }
111*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
112*4bdc9457SAndroid Build Coastguard Worker 
113*4bdc9457SAndroid Build Coastguard Worker 
114*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X12,batch_eq_12)115*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X12, batch_eq_12) {
116*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
117*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
118*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
119*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
120*4bdc9457SAndroid Build Coastguard Worker   }
121*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X12,batch_div_12)122*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X12, batch_div_12) {
123*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
124*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
125*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
126*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
127*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
128*4bdc9457SAndroid Build Coastguard Worker     }
129*4bdc9457SAndroid Build Coastguard Worker   }
130*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X12,batch_lt_12)131*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X12, batch_lt_12) {
132*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
133*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
134*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
135*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
136*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
137*4bdc9457SAndroid Build Coastguard Worker     }
138*4bdc9457SAndroid Build Coastguard Worker   }
139*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X12,batch_gt_12)140*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X12, batch_gt_12) {
141*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
142*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
143*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
144*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
145*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
146*4bdc9457SAndroid Build Coastguard Worker     }
147*4bdc9457SAndroid Build Coastguard Worker   }
148*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X12,inplace)149*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X12, inplace) {
150*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
151*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
152*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
153*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
154*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
155*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
156*4bdc9457SAndroid Build Coastguard Worker     }
157*4bdc9457SAndroid Build Coastguard Worker   }
158*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
159*4bdc9457SAndroid Build Coastguard Worker 
160*4bdc9457SAndroid Build Coastguard Worker 
161*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X16,batch_eq_16)162*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X16, batch_eq_16) {
163*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
164*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
165*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
166*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
167*4bdc9457SAndroid Build Coastguard Worker   }
168*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X16,batch_div_16)169*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X16, batch_div_16) {
170*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
171*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
172*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
173*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
174*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
175*4bdc9457SAndroid Build Coastguard Worker     }
176*4bdc9457SAndroid Build Coastguard Worker   }
177*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X16,batch_lt_16)178*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X16, batch_lt_16) {
179*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
180*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
181*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
182*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
183*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
184*4bdc9457SAndroid Build Coastguard Worker     }
185*4bdc9457SAndroid Build Coastguard Worker   }
186*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X16,batch_gt_16)187*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X16, batch_gt_16) {
188*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
189*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
190*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
191*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
192*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
193*4bdc9457SAndroid Build Coastguard Worker     }
194*4bdc9457SAndroid Build Coastguard Worker   }
195*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X16,inplace)196*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X16, inplace) {
197*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
198*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
199*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
200*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
201*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
202*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
203*4bdc9457SAndroid Build Coastguard Worker     }
204*4bdc9457SAndroid Build Coastguard Worker   }
205*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
206*4bdc9457SAndroid Build Coastguard Worker 
207*4bdc9457SAndroid Build Coastguard Worker 
208*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X20,batch_eq_20)209*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X20, batch_eq_20) {
210*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
211*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
212*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
213*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
214*4bdc9457SAndroid Build Coastguard Worker   }
215*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X20,batch_div_20)216*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X20, batch_div_20) {
217*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
218*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
219*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
220*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
221*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
222*4bdc9457SAndroid Build Coastguard Worker     }
223*4bdc9457SAndroid Build Coastguard Worker   }
224*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X20,batch_lt_20)225*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X20, batch_lt_20) {
226*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
227*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
228*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
229*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
230*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
231*4bdc9457SAndroid Build Coastguard Worker     }
232*4bdc9457SAndroid Build Coastguard Worker   }
233*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X20,batch_gt_20)234*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X20, batch_gt_20) {
235*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
236*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
237*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
238*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
239*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
240*4bdc9457SAndroid Build Coastguard Worker     }
241*4bdc9457SAndroid Build Coastguard Worker   }
242*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X20,inplace)243*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X20, inplace) {
244*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
245*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
246*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
247*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
248*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
249*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
250*4bdc9457SAndroid Build Coastguard Worker     }
251*4bdc9457SAndroid Build Coastguard Worker   }
252*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
253*4bdc9457SAndroid Build Coastguard Worker 
254*4bdc9457SAndroid Build Coastguard Worker 
255*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X24,batch_eq_24)256*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X24, batch_eq_24) {
257*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
258*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
259*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
260*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
261*4bdc9457SAndroid Build Coastguard Worker   }
262*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X24,batch_div_24)263*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X24, batch_div_24) {
264*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
265*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
266*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
267*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
268*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
269*4bdc9457SAndroid Build Coastguard Worker     }
270*4bdc9457SAndroid Build Coastguard Worker   }
271*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X24,batch_lt_24)272*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X24, batch_lt_24) {
273*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
274*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
275*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
276*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
277*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
278*4bdc9457SAndroid Build Coastguard Worker     }
279*4bdc9457SAndroid Build Coastguard Worker   }
280*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X24,batch_gt_24)281*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X24, batch_gt_24) {
282*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
283*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
284*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
285*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
286*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
287*4bdc9457SAndroid Build Coastguard Worker     }
288*4bdc9457SAndroid Build Coastguard Worker   }
289*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X24,inplace)290*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT64_P2_NR2RECPS_X24, inplace) {
291*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
292*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
293*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
294*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
295*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
296*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut64_p2_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_lut64_p2_params);
297*4bdc9457SAndroid Build Coastguard Worker     }
298*4bdc9457SAndroid Build Coastguard Worker   }
299*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
300*4bdc9457SAndroid Build Coastguard Worker 
301*4bdc9457SAndroid Build Coastguard Worker 
302*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X4,batch_eq_4)303*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X4, batch_eq_4) {
304*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
305*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
306*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
307*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
308*4bdc9457SAndroid Build Coastguard Worker   }
309*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X4,batch_div_4)310*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X4, batch_div_4) {
311*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
312*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
313*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
314*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
315*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
316*4bdc9457SAndroid Build Coastguard Worker     }
317*4bdc9457SAndroid Build Coastguard Worker   }
318*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X4,batch_lt_4)319*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X4, batch_lt_4) {
320*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
321*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
322*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
323*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
324*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
325*4bdc9457SAndroid Build Coastguard Worker     }
326*4bdc9457SAndroid Build Coastguard Worker   }
327*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X4,batch_gt_4)328*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X4, batch_gt_4) {
329*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
330*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
331*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
332*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
333*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
334*4bdc9457SAndroid Build Coastguard Worker     }
335*4bdc9457SAndroid Build Coastguard Worker   }
336*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X4,inplace)337*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X4, inplace) {
338*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
339*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
340*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
341*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
342*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
343*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
344*4bdc9457SAndroid Build Coastguard Worker     }
345*4bdc9457SAndroid Build Coastguard Worker   }
346*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
347*4bdc9457SAndroid Build Coastguard Worker 
348*4bdc9457SAndroid Build Coastguard Worker 
349*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X8,batch_eq_8)350*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X8, batch_eq_8) {
351*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
352*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
353*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
354*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
355*4bdc9457SAndroid Build Coastguard Worker   }
356*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X8,batch_div_8)357*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X8, batch_div_8) {
358*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
359*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
360*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
361*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
362*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
363*4bdc9457SAndroid Build Coastguard Worker     }
364*4bdc9457SAndroid Build Coastguard Worker   }
365*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X8,batch_lt_8)366*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X8, batch_lt_8) {
367*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
368*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
369*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
370*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
371*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
372*4bdc9457SAndroid Build Coastguard Worker     }
373*4bdc9457SAndroid Build Coastguard Worker   }
374*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X8,batch_gt_8)375*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X8, batch_gt_8) {
376*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
377*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
378*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
379*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
380*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
381*4bdc9457SAndroid Build Coastguard Worker     }
382*4bdc9457SAndroid Build Coastguard Worker   }
383*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X8,inplace)384*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X8, inplace) {
385*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
386*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
387*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
388*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
389*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
390*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
391*4bdc9457SAndroid Build Coastguard Worker     }
392*4bdc9457SAndroid Build Coastguard Worker   }
393*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
394*4bdc9457SAndroid Build Coastguard Worker 
395*4bdc9457SAndroid Build Coastguard Worker 
396*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X12,batch_eq_12)397*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X12, batch_eq_12) {
398*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
399*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
400*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
401*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
402*4bdc9457SAndroid Build Coastguard Worker   }
403*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X12,batch_div_12)404*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X12, batch_div_12) {
405*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
406*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
407*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
408*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
409*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
410*4bdc9457SAndroid Build Coastguard Worker     }
411*4bdc9457SAndroid Build Coastguard Worker   }
412*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X12,batch_lt_12)413*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X12, batch_lt_12) {
414*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
415*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
416*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
417*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
418*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
419*4bdc9457SAndroid Build Coastguard Worker     }
420*4bdc9457SAndroid Build Coastguard Worker   }
421*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X12,batch_gt_12)422*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X12, batch_gt_12) {
423*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
424*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
425*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
426*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
427*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
428*4bdc9457SAndroid Build Coastguard Worker     }
429*4bdc9457SAndroid Build Coastguard Worker   }
430*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X12,inplace)431*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X12, inplace) {
432*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
433*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
434*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
435*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
436*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
437*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
438*4bdc9457SAndroid Build Coastguard Worker     }
439*4bdc9457SAndroid Build Coastguard Worker   }
440*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
441*4bdc9457SAndroid Build Coastguard Worker 
442*4bdc9457SAndroid Build Coastguard Worker 
443*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X16,batch_eq_16)444*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X16, batch_eq_16) {
445*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
446*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
447*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
448*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
449*4bdc9457SAndroid Build Coastguard Worker   }
450*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X16,batch_div_16)451*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X16, batch_div_16) {
452*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
453*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
454*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
455*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
456*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
457*4bdc9457SAndroid Build Coastguard Worker     }
458*4bdc9457SAndroid Build Coastguard Worker   }
459*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X16,batch_lt_16)460*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X16, batch_lt_16) {
461*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
462*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
463*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
464*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
465*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
466*4bdc9457SAndroid Build Coastguard Worker     }
467*4bdc9457SAndroid Build Coastguard Worker   }
468*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X16,batch_gt_16)469*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X16, batch_gt_16) {
470*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
471*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
472*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
473*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
474*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
475*4bdc9457SAndroid Build Coastguard Worker     }
476*4bdc9457SAndroid Build Coastguard Worker   }
477*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X16,inplace)478*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X16, inplace) {
479*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
480*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
481*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
482*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
483*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
484*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
485*4bdc9457SAndroid Build Coastguard Worker     }
486*4bdc9457SAndroid Build Coastguard Worker   }
487*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
488*4bdc9457SAndroid Build Coastguard Worker 
489*4bdc9457SAndroid Build Coastguard Worker 
490*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X20,batch_eq_20)491*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X20, batch_eq_20) {
492*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
493*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
494*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
495*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
496*4bdc9457SAndroid Build Coastguard Worker   }
497*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X20,batch_div_20)498*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X20, batch_div_20) {
499*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
500*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
501*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
502*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
503*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
504*4bdc9457SAndroid Build Coastguard Worker     }
505*4bdc9457SAndroid Build Coastguard Worker   }
506*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X20,batch_lt_20)507*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X20, batch_lt_20) {
508*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
509*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
510*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
511*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
512*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
513*4bdc9457SAndroid Build Coastguard Worker     }
514*4bdc9457SAndroid Build Coastguard Worker   }
515*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X20,batch_gt_20)516*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X20, batch_gt_20) {
517*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
518*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
519*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
520*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
521*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
522*4bdc9457SAndroid Build Coastguard Worker     }
523*4bdc9457SAndroid Build Coastguard Worker   }
524*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X20,inplace)525*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X20, inplace) {
526*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
527*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
528*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
529*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
530*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
531*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
532*4bdc9457SAndroid Build Coastguard Worker     }
533*4bdc9457SAndroid Build Coastguard Worker   }
534*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
535*4bdc9457SAndroid Build Coastguard Worker 
536*4bdc9457SAndroid Build Coastguard Worker 
537*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X24,batch_eq_24)538*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X24, batch_eq_24) {
539*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
540*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
541*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
542*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
543*4bdc9457SAndroid Build Coastguard Worker   }
544*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X24,batch_div_24)545*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X24, batch_div_24) {
546*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
547*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
548*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
549*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
550*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
551*4bdc9457SAndroid Build Coastguard Worker     }
552*4bdc9457SAndroid Build Coastguard Worker   }
553*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X24,batch_lt_24)554*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X24, batch_lt_24) {
555*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
556*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
557*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
558*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
559*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
560*4bdc9457SAndroid Build Coastguard Worker     }
561*4bdc9457SAndroid Build Coastguard Worker   }
562*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X24,batch_gt_24)563*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X24, batch_gt_24) {
564*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
565*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
566*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
567*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
568*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
569*4bdc9457SAndroid Build Coastguard Worker     }
570*4bdc9457SAndroid Build Coastguard Worker   }
571*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X24,inplace)572*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_LUT2048_P1_NR2RECPS_X24, inplace) {
573*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
574*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
575*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
576*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
577*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
578*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_lut2048_p1_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_lut2048_p1_params);
579*4bdc9457SAndroid Build Coastguard Worker     }
580*4bdc9457SAndroid Build Coastguard Worker   }
581*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
582*4bdc9457SAndroid Build Coastguard Worker 
583*4bdc9457SAndroid Build Coastguard Worker 
584*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X4,batch_eq_4)585*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X4, batch_eq_4) {
586*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
587*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
588*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
589*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_p5_params);
590*4bdc9457SAndroid Build Coastguard Worker   }
591*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X4,batch_div_4)592*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X4, batch_div_4) {
593*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
594*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
595*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
596*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
597*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_p5_params);
598*4bdc9457SAndroid Build Coastguard Worker     }
599*4bdc9457SAndroid Build Coastguard Worker   }
600*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X4,batch_lt_4)601*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X4, batch_lt_4) {
602*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
603*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
604*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
605*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
606*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_p5_params);
607*4bdc9457SAndroid Build Coastguard Worker     }
608*4bdc9457SAndroid Build Coastguard Worker   }
609*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X4,batch_gt_4)610*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X4, batch_gt_4) {
611*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
612*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
613*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
614*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
615*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_p5_params);
616*4bdc9457SAndroid Build Coastguard Worker     }
617*4bdc9457SAndroid Build Coastguard Worker   }
618*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X4,inplace)619*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X4, inplace) {
620*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
621*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
622*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
623*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
624*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
625*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x4, xnn_init_f32_sigmoid_neon_rr2_p5_params);
626*4bdc9457SAndroid Build Coastguard Worker     }
627*4bdc9457SAndroid Build Coastguard Worker   }
628*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
629*4bdc9457SAndroid Build Coastguard Worker 
630*4bdc9457SAndroid Build Coastguard Worker 
631*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X8,batch_eq_8)632*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X8, batch_eq_8) {
633*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
634*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
635*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
636*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_p5_params);
637*4bdc9457SAndroid Build Coastguard Worker   }
638*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X8,batch_div_8)639*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X8, batch_div_8) {
640*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
641*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
642*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
643*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
644*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_p5_params);
645*4bdc9457SAndroid Build Coastguard Worker     }
646*4bdc9457SAndroid Build Coastguard Worker   }
647*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X8,batch_lt_8)648*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X8, batch_lt_8) {
649*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
650*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
651*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
652*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
653*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_p5_params);
654*4bdc9457SAndroid Build Coastguard Worker     }
655*4bdc9457SAndroid Build Coastguard Worker   }
656*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X8,batch_gt_8)657*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X8, batch_gt_8) {
658*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
659*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
660*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
661*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
662*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_p5_params);
663*4bdc9457SAndroid Build Coastguard Worker     }
664*4bdc9457SAndroid Build Coastguard Worker   }
665*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X8,inplace)666*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X8, inplace) {
667*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
668*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
669*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
670*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
671*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
672*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x8, xnn_init_f32_sigmoid_neon_rr2_p5_params);
673*4bdc9457SAndroid Build Coastguard Worker     }
674*4bdc9457SAndroid Build Coastguard Worker   }
675*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
676*4bdc9457SAndroid Build Coastguard Worker 
677*4bdc9457SAndroid Build Coastguard Worker 
678*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X12,batch_eq_12)679*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X12, batch_eq_12) {
680*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
681*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
682*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
683*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_p5_params);
684*4bdc9457SAndroid Build Coastguard Worker   }
685*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X12,batch_div_12)686*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X12, batch_div_12) {
687*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
688*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
689*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
690*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
691*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_p5_params);
692*4bdc9457SAndroid Build Coastguard Worker     }
693*4bdc9457SAndroid Build Coastguard Worker   }
694*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X12,batch_lt_12)695*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X12, batch_lt_12) {
696*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
697*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
698*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
699*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
700*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_p5_params);
701*4bdc9457SAndroid Build Coastguard Worker     }
702*4bdc9457SAndroid Build Coastguard Worker   }
703*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X12,batch_gt_12)704*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X12, batch_gt_12) {
705*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
706*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
707*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
708*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
709*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_p5_params);
710*4bdc9457SAndroid Build Coastguard Worker     }
711*4bdc9457SAndroid Build Coastguard Worker   }
712*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X12,inplace)713*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X12, inplace) {
714*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
715*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
716*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
717*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
718*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
719*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x12, xnn_init_f32_sigmoid_neon_rr2_p5_params);
720*4bdc9457SAndroid Build Coastguard Worker     }
721*4bdc9457SAndroid Build Coastguard Worker   }
722*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
723*4bdc9457SAndroid Build Coastguard Worker 
724*4bdc9457SAndroid Build Coastguard Worker 
725*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X16,batch_eq_16)726*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X16, batch_eq_16) {
727*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
728*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
729*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
730*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_p5_params);
731*4bdc9457SAndroid Build Coastguard Worker   }
732*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X16,batch_div_16)733*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X16, batch_div_16) {
734*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
735*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
736*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
737*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
738*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_p5_params);
739*4bdc9457SAndroid Build Coastguard Worker     }
740*4bdc9457SAndroid Build Coastguard Worker   }
741*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X16,batch_lt_16)742*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X16, batch_lt_16) {
743*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
744*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
745*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
746*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
747*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_p5_params);
748*4bdc9457SAndroid Build Coastguard Worker     }
749*4bdc9457SAndroid Build Coastguard Worker   }
750*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X16,batch_gt_16)751*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X16, batch_gt_16) {
752*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
753*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
754*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
755*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
756*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_p5_params);
757*4bdc9457SAndroid Build Coastguard Worker     }
758*4bdc9457SAndroid Build Coastguard Worker   }
759*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X16,inplace)760*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X16, inplace) {
761*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
762*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
763*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
764*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
765*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
766*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x16, xnn_init_f32_sigmoid_neon_rr2_p5_params);
767*4bdc9457SAndroid Build Coastguard Worker     }
768*4bdc9457SAndroid Build Coastguard Worker   }
769*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
770*4bdc9457SAndroid Build Coastguard Worker 
771*4bdc9457SAndroid Build Coastguard Worker 
772*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X20,batch_eq_20)773*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X20, batch_eq_20) {
774*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
775*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
776*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
777*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_p5_params);
778*4bdc9457SAndroid Build Coastguard Worker   }
779*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X20,batch_div_20)780*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X20, batch_div_20) {
781*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
782*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
783*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
784*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
785*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_p5_params);
786*4bdc9457SAndroid Build Coastguard Worker     }
787*4bdc9457SAndroid Build Coastguard Worker   }
788*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X20,batch_lt_20)789*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X20, batch_lt_20) {
790*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
791*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
792*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
793*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
794*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_p5_params);
795*4bdc9457SAndroid Build Coastguard Worker     }
796*4bdc9457SAndroid Build Coastguard Worker   }
797*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X20,batch_gt_20)798*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X20, batch_gt_20) {
799*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
800*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
801*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
802*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
803*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_p5_params);
804*4bdc9457SAndroid Build Coastguard Worker     }
805*4bdc9457SAndroid Build Coastguard Worker   }
806*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X20,inplace)807*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X20, inplace) {
808*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
809*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
810*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
811*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
812*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
813*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x20, xnn_init_f32_sigmoid_neon_rr2_p5_params);
814*4bdc9457SAndroid Build Coastguard Worker     }
815*4bdc9457SAndroid Build Coastguard Worker   }
816*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
817*4bdc9457SAndroid Build Coastguard Worker 
818*4bdc9457SAndroid Build Coastguard Worker 
819*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X24,batch_eq_24)820*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X24, batch_eq_24) {
821*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
822*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
823*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
824*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_p5_params);
825*4bdc9457SAndroid Build Coastguard Worker   }
826*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X24,batch_div_24)827*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X24, batch_div_24) {
828*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
829*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
830*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
831*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
832*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_p5_params);
833*4bdc9457SAndroid Build Coastguard Worker     }
834*4bdc9457SAndroid Build Coastguard Worker   }
835*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X24,batch_lt_24)836*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X24, batch_lt_24) {
837*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
838*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
839*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
840*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
841*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_p5_params);
842*4bdc9457SAndroid Build Coastguard Worker     }
843*4bdc9457SAndroid Build Coastguard Worker   }
844*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X24,batch_gt_24)845*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X24, batch_gt_24) {
846*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
847*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
848*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
849*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
850*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_p5_params);
851*4bdc9457SAndroid Build Coastguard Worker     }
852*4bdc9457SAndroid Build Coastguard Worker   }
853*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X24,inplace)854*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEON_RR2_P5_NR2RECPS_X24, inplace) {
855*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON;
856*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
857*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
858*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
859*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
860*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neon_rr2_p5_nr2recps_x24, xnn_init_f32_sigmoid_neon_rr2_p5_params);
861*4bdc9457SAndroid Build Coastguard Worker     }
862*4bdc9457SAndroid Build Coastguard Worker   }
863*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
864*4bdc9457SAndroid Build Coastguard Worker 
865*4bdc9457SAndroid Build Coastguard Worker 
866*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X4,batch_eq_4)867*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X4, batch_eq_4) {
868*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
869*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
870*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
871*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
872*4bdc9457SAndroid Build Coastguard Worker   }
873*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X4,batch_div_4)874*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X4, batch_div_4) {
875*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
876*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
877*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
878*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
879*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
880*4bdc9457SAndroid Build Coastguard Worker     }
881*4bdc9457SAndroid Build Coastguard Worker   }
882*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X4,batch_lt_4)883*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X4, batch_lt_4) {
884*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
885*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
886*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
887*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
888*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
889*4bdc9457SAndroid Build Coastguard Worker     }
890*4bdc9457SAndroid Build Coastguard Worker   }
891*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X4,batch_gt_4)892*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X4, batch_gt_4) {
893*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
894*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
895*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
896*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
897*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
898*4bdc9457SAndroid Build Coastguard Worker     }
899*4bdc9457SAndroid Build Coastguard Worker   }
900*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X4,inplace)901*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X4, inplace) {
902*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
903*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
904*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
905*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
906*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
907*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
908*4bdc9457SAndroid Build Coastguard Worker     }
909*4bdc9457SAndroid Build Coastguard Worker   }
910*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
911*4bdc9457SAndroid Build Coastguard Worker 
912*4bdc9457SAndroid Build Coastguard Worker 
913*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X8,batch_eq_8)914*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X8, batch_eq_8) {
915*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
916*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
917*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
918*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
919*4bdc9457SAndroid Build Coastguard Worker   }
920*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X8,batch_div_8)921*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X8, batch_div_8) {
922*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
923*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
924*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
925*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
926*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
927*4bdc9457SAndroid Build Coastguard Worker     }
928*4bdc9457SAndroid Build Coastguard Worker   }
929*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X8,batch_lt_8)930*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X8, batch_lt_8) {
931*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
932*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
933*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
934*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
935*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
936*4bdc9457SAndroid Build Coastguard Worker     }
937*4bdc9457SAndroid Build Coastguard Worker   }
938*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X8,batch_gt_8)939*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X8, batch_gt_8) {
940*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
941*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
942*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
943*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
944*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
945*4bdc9457SAndroid Build Coastguard Worker     }
946*4bdc9457SAndroid Build Coastguard Worker   }
947*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X8,inplace)948*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X8, inplace) {
949*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
950*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
951*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
952*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
953*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
954*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
955*4bdc9457SAndroid Build Coastguard Worker     }
956*4bdc9457SAndroid Build Coastguard Worker   }
957*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
958*4bdc9457SAndroid Build Coastguard Worker 
959*4bdc9457SAndroid Build Coastguard Worker 
960*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X12,batch_eq_12)961*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X12, batch_eq_12) {
962*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
963*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
964*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
965*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
966*4bdc9457SAndroid Build Coastguard Worker   }
967*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X12,batch_div_12)968*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X12, batch_div_12) {
969*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
970*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
971*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
972*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
973*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
974*4bdc9457SAndroid Build Coastguard Worker     }
975*4bdc9457SAndroid Build Coastguard Worker   }
976*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X12,batch_lt_12)977*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X12, batch_lt_12) {
978*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
979*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
980*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
981*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
982*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
983*4bdc9457SAndroid Build Coastguard Worker     }
984*4bdc9457SAndroid Build Coastguard Worker   }
985*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X12,batch_gt_12)986*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X12, batch_gt_12) {
987*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
988*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
989*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
990*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
991*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
992*4bdc9457SAndroid Build Coastguard Worker     }
993*4bdc9457SAndroid Build Coastguard Worker   }
994*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X12,inplace)995*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X12, inplace) {
996*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
997*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
998*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
999*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1000*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1001*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1002*4bdc9457SAndroid Build Coastguard Worker     }
1003*4bdc9457SAndroid Build Coastguard Worker   }
1004*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
1005*4bdc9457SAndroid Build Coastguard Worker 
1006*4bdc9457SAndroid Build Coastguard Worker 
1007*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X16,batch_eq_16)1008*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X16, batch_eq_16) {
1009*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1010*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1011*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
1012*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1013*4bdc9457SAndroid Build Coastguard Worker   }
1014*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X16,batch_div_16)1015*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X16, batch_div_16) {
1016*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1017*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
1018*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1019*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1020*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1021*4bdc9457SAndroid Build Coastguard Worker     }
1022*4bdc9457SAndroid Build Coastguard Worker   }
1023*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X16,batch_lt_16)1024*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X16, batch_lt_16) {
1025*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1026*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
1027*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1028*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1029*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1030*4bdc9457SAndroid Build Coastguard Worker     }
1031*4bdc9457SAndroid Build Coastguard Worker   }
1032*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X16,batch_gt_16)1033*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X16, batch_gt_16) {
1034*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1035*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
1036*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1037*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1038*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1039*4bdc9457SAndroid Build Coastguard Worker     }
1040*4bdc9457SAndroid Build Coastguard Worker   }
1041*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X16,inplace)1042*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X16, inplace) {
1043*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1044*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
1045*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1046*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1047*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1048*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1049*4bdc9457SAndroid Build Coastguard Worker     }
1050*4bdc9457SAndroid Build Coastguard Worker   }
1051*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
1052*4bdc9457SAndroid Build Coastguard Worker 
1053*4bdc9457SAndroid Build Coastguard Worker 
1054*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X20,batch_eq_20)1055*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X20, batch_eq_20) {
1056*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1057*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1058*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
1059*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1060*4bdc9457SAndroid Build Coastguard Worker   }
1061*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X20,batch_div_20)1062*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X20, batch_div_20) {
1063*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1064*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
1065*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1066*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1067*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1068*4bdc9457SAndroid Build Coastguard Worker     }
1069*4bdc9457SAndroid Build Coastguard Worker   }
1070*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X20,batch_lt_20)1071*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X20, batch_lt_20) {
1072*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1073*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
1074*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1075*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1076*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1077*4bdc9457SAndroid Build Coastguard Worker     }
1078*4bdc9457SAndroid Build Coastguard Worker   }
1079*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X20,batch_gt_20)1080*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X20, batch_gt_20) {
1081*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1082*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
1083*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1084*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1085*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1086*4bdc9457SAndroid Build Coastguard Worker     }
1087*4bdc9457SAndroid Build Coastguard Worker   }
1088*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X20,inplace)1089*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X20, inplace) {
1090*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1091*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
1092*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1093*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1094*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1095*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1096*4bdc9457SAndroid Build Coastguard Worker     }
1097*4bdc9457SAndroid Build Coastguard Worker   }
1098*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
1099*4bdc9457SAndroid Build Coastguard Worker 
1100*4bdc9457SAndroid Build Coastguard Worker 
1101*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X24,batch_eq_24)1102*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X24, batch_eq_24) {
1103*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1104*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1105*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
1106*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1107*4bdc9457SAndroid Build Coastguard Worker   }
1108*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X24,batch_div_24)1109*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X24, batch_div_24) {
1110*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1111*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
1112*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1113*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1114*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1115*4bdc9457SAndroid Build Coastguard Worker     }
1116*4bdc9457SAndroid Build Coastguard Worker   }
1117*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X24,batch_lt_24)1118*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X24, batch_lt_24) {
1119*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1120*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
1121*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1122*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1123*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1124*4bdc9457SAndroid Build Coastguard Worker     }
1125*4bdc9457SAndroid Build Coastguard Worker   }
1126*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X24,batch_gt_24)1127*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X24, batch_gt_24) {
1128*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1129*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
1130*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1131*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1132*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1133*4bdc9457SAndroid Build Coastguard Worker     }
1134*4bdc9457SAndroid Build Coastguard Worker   }
1135*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X24,inplace)1136*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_DIV_X24, inplace) {
1137*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1138*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
1139*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1140*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1141*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1142*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1143*4bdc9457SAndroid Build Coastguard Worker     }
1144*4bdc9457SAndroid Build Coastguard Worker   }
1145*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
1146*4bdc9457SAndroid Build Coastguard Worker 
1147*4bdc9457SAndroid Build Coastguard Worker 
1148*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X4,batch_eq_4)1149*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X4, batch_eq_4) {
1150*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1151*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1152*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
1153*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1154*4bdc9457SAndroid Build Coastguard Worker   }
1155*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X4,batch_div_4)1156*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X4, batch_div_4) {
1157*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1158*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
1159*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1160*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1161*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1162*4bdc9457SAndroid Build Coastguard Worker     }
1163*4bdc9457SAndroid Build Coastguard Worker   }
1164*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X4,batch_lt_4)1165*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X4, batch_lt_4) {
1166*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1167*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
1168*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1169*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1170*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1171*4bdc9457SAndroid Build Coastguard Worker     }
1172*4bdc9457SAndroid Build Coastguard Worker   }
1173*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X4,batch_gt_4)1174*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X4, batch_gt_4) {
1175*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1176*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
1177*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1178*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1179*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1180*4bdc9457SAndroid Build Coastguard Worker     }
1181*4bdc9457SAndroid Build Coastguard Worker   }
1182*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X4,inplace)1183*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X4, inplace) {
1184*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1185*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
1186*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1187*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1188*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1189*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1190*4bdc9457SAndroid Build Coastguard Worker     }
1191*4bdc9457SAndroid Build Coastguard Worker   }
1192*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1193*4bdc9457SAndroid Build Coastguard Worker 
1194*4bdc9457SAndroid Build Coastguard Worker 
1195*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X8,batch_eq_8)1196*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X8, batch_eq_8) {
1197*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1198*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1199*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
1200*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1201*4bdc9457SAndroid Build Coastguard Worker   }
1202*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X8,batch_div_8)1203*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X8, batch_div_8) {
1204*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1205*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
1206*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1207*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1208*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1209*4bdc9457SAndroid Build Coastguard Worker     }
1210*4bdc9457SAndroid Build Coastguard Worker   }
1211*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X8,batch_lt_8)1212*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X8, batch_lt_8) {
1213*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1214*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
1215*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1216*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1217*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1218*4bdc9457SAndroid Build Coastguard Worker     }
1219*4bdc9457SAndroid Build Coastguard Worker   }
1220*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X8,batch_gt_8)1221*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X8, batch_gt_8) {
1222*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1223*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
1224*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1225*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1226*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1227*4bdc9457SAndroid Build Coastguard Worker     }
1228*4bdc9457SAndroid Build Coastguard Worker   }
1229*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X8,inplace)1230*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X8, inplace) {
1231*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1232*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
1233*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1234*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1235*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1236*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1237*4bdc9457SAndroid Build Coastguard Worker     }
1238*4bdc9457SAndroid Build Coastguard Worker   }
1239*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1240*4bdc9457SAndroid Build Coastguard Worker 
1241*4bdc9457SAndroid Build Coastguard Worker 
1242*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X12,batch_eq_12)1243*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X12, batch_eq_12) {
1244*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1245*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1246*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
1247*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1248*4bdc9457SAndroid Build Coastguard Worker   }
1249*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X12,batch_div_12)1250*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X12, batch_div_12) {
1251*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1252*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
1253*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1254*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1255*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1256*4bdc9457SAndroid Build Coastguard Worker     }
1257*4bdc9457SAndroid Build Coastguard Worker   }
1258*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X12,batch_lt_12)1259*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X12, batch_lt_12) {
1260*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1261*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
1262*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1263*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1264*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1265*4bdc9457SAndroid Build Coastguard Worker     }
1266*4bdc9457SAndroid Build Coastguard Worker   }
1267*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X12,batch_gt_12)1268*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X12, batch_gt_12) {
1269*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1270*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
1271*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1272*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1273*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1274*4bdc9457SAndroid Build Coastguard Worker     }
1275*4bdc9457SAndroid Build Coastguard Worker   }
1276*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X12,inplace)1277*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X12, inplace) {
1278*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1279*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
1280*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1281*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1282*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1283*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1284*4bdc9457SAndroid Build Coastguard Worker     }
1285*4bdc9457SAndroid Build Coastguard Worker   }
1286*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1287*4bdc9457SAndroid Build Coastguard Worker 
1288*4bdc9457SAndroid Build Coastguard Worker 
1289*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X16,batch_eq_16)1290*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X16, batch_eq_16) {
1291*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1292*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1293*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
1294*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1295*4bdc9457SAndroid Build Coastguard Worker   }
1296*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X16,batch_div_16)1297*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X16, batch_div_16) {
1298*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1299*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
1300*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1301*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1302*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1303*4bdc9457SAndroid Build Coastguard Worker     }
1304*4bdc9457SAndroid Build Coastguard Worker   }
1305*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X16,batch_lt_16)1306*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X16, batch_lt_16) {
1307*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1308*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
1309*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1310*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1311*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1312*4bdc9457SAndroid Build Coastguard Worker     }
1313*4bdc9457SAndroid Build Coastguard Worker   }
1314*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X16,batch_gt_16)1315*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X16, batch_gt_16) {
1316*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1317*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
1318*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1319*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1320*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1321*4bdc9457SAndroid Build Coastguard Worker     }
1322*4bdc9457SAndroid Build Coastguard Worker   }
1323*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X16,inplace)1324*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X16, inplace) {
1325*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1326*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
1327*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1328*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1329*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1330*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1331*4bdc9457SAndroid Build Coastguard Worker     }
1332*4bdc9457SAndroid Build Coastguard Worker   }
1333*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1334*4bdc9457SAndroid Build Coastguard Worker 
1335*4bdc9457SAndroid Build Coastguard Worker 
1336*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X20,batch_eq_20)1337*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X20, batch_eq_20) {
1338*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1339*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1340*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
1341*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1342*4bdc9457SAndroid Build Coastguard Worker   }
1343*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X20,batch_div_20)1344*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X20, batch_div_20) {
1345*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1346*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
1347*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1348*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1349*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1350*4bdc9457SAndroid Build Coastguard Worker     }
1351*4bdc9457SAndroid Build Coastguard Worker   }
1352*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X20,batch_lt_20)1353*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X20, batch_lt_20) {
1354*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1355*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
1356*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1357*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1358*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1359*4bdc9457SAndroid Build Coastguard Worker     }
1360*4bdc9457SAndroid Build Coastguard Worker   }
1361*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X20,batch_gt_20)1362*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X20, batch_gt_20) {
1363*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1364*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
1365*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1366*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1367*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1368*4bdc9457SAndroid Build Coastguard Worker     }
1369*4bdc9457SAndroid Build Coastguard Worker   }
1370*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X20,inplace)1371*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X20, inplace) {
1372*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1373*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
1374*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1375*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1376*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1377*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1378*4bdc9457SAndroid Build Coastguard Worker     }
1379*4bdc9457SAndroid Build Coastguard Worker   }
1380*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1381*4bdc9457SAndroid Build Coastguard Worker 
1382*4bdc9457SAndroid Build Coastguard Worker 
1383*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X24,batch_eq_24)1384*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X24, batch_eq_24) {
1385*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1386*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1387*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
1388*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1389*4bdc9457SAndroid Build Coastguard Worker   }
1390*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X24,batch_div_24)1391*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X24, batch_div_24) {
1392*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1393*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
1394*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1395*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1396*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1397*4bdc9457SAndroid Build Coastguard Worker     }
1398*4bdc9457SAndroid Build Coastguard Worker   }
1399*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X24,batch_lt_24)1400*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X24, batch_lt_24) {
1401*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1402*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
1403*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1404*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1405*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1406*4bdc9457SAndroid Build Coastguard Worker     }
1407*4bdc9457SAndroid Build Coastguard Worker   }
1408*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X24,batch_gt_24)1409*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X24, batch_gt_24) {
1410*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1411*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
1412*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1413*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1414*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1415*4bdc9457SAndroid Build Coastguard Worker     }
1416*4bdc9457SAndroid Build Coastguard Worker   }
1417*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X24,inplace)1418*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR1RECPS1FMA_X24, inplace) {
1419*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1420*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
1421*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1422*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1423*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1424*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1425*4bdc9457SAndroid Build Coastguard Worker     }
1426*4bdc9457SAndroid Build Coastguard Worker   }
1427*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1428*4bdc9457SAndroid Build Coastguard Worker 
1429*4bdc9457SAndroid Build Coastguard Worker 
1430*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X4,batch_eq_4)1431*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X4, batch_eq_4) {
1432*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1433*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1434*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
1435*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1436*4bdc9457SAndroid Build Coastguard Worker   }
1437*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X4,batch_div_4)1438*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X4, batch_div_4) {
1439*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1440*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
1441*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1442*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1443*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1444*4bdc9457SAndroid Build Coastguard Worker     }
1445*4bdc9457SAndroid Build Coastguard Worker   }
1446*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X4,batch_lt_4)1447*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X4, batch_lt_4) {
1448*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1449*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
1450*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1451*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1452*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1453*4bdc9457SAndroid Build Coastguard Worker     }
1454*4bdc9457SAndroid Build Coastguard Worker   }
1455*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X4,batch_gt_4)1456*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X4, batch_gt_4) {
1457*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1458*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
1459*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1460*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1461*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1462*4bdc9457SAndroid Build Coastguard Worker     }
1463*4bdc9457SAndroid Build Coastguard Worker   }
1464*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X4,inplace)1465*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X4, inplace) {
1466*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1467*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
1468*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1469*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1470*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1471*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1472*4bdc9457SAndroid Build Coastguard Worker     }
1473*4bdc9457SAndroid Build Coastguard Worker   }
1474*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1475*4bdc9457SAndroid Build Coastguard Worker 
1476*4bdc9457SAndroid Build Coastguard Worker 
1477*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X8,batch_eq_8)1478*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X8, batch_eq_8) {
1479*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1480*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1481*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
1482*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1483*4bdc9457SAndroid Build Coastguard Worker   }
1484*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X8,batch_div_8)1485*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X8, batch_div_8) {
1486*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1487*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
1488*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1489*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1490*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1491*4bdc9457SAndroid Build Coastguard Worker     }
1492*4bdc9457SAndroid Build Coastguard Worker   }
1493*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X8,batch_lt_8)1494*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X8, batch_lt_8) {
1495*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1496*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
1497*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1498*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1499*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1500*4bdc9457SAndroid Build Coastguard Worker     }
1501*4bdc9457SAndroid Build Coastguard Worker   }
1502*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X8,batch_gt_8)1503*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X8, batch_gt_8) {
1504*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1505*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
1506*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1507*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1508*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1509*4bdc9457SAndroid Build Coastguard Worker     }
1510*4bdc9457SAndroid Build Coastguard Worker   }
1511*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X8,inplace)1512*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X8, inplace) {
1513*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1514*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
1515*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1516*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1517*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1518*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1519*4bdc9457SAndroid Build Coastguard Worker     }
1520*4bdc9457SAndroid Build Coastguard Worker   }
1521*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1522*4bdc9457SAndroid Build Coastguard Worker 
1523*4bdc9457SAndroid Build Coastguard Worker 
1524*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X12,batch_eq_12)1525*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X12, batch_eq_12) {
1526*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1527*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1528*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
1529*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1530*4bdc9457SAndroid Build Coastguard Worker   }
1531*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X12,batch_div_12)1532*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X12, batch_div_12) {
1533*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1534*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
1535*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1536*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1537*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1538*4bdc9457SAndroid Build Coastguard Worker     }
1539*4bdc9457SAndroid Build Coastguard Worker   }
1540*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X12,batch_lt_12)1541*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X12, batch_lt_12) {
1542*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1543*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
1544*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1545*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1546*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1547*4bdc9457SAndroid Build Coastguard Worker     }
1548*4bdc9457SAndroid Build Coastguard Worker   }
1549*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X12,batch_gt_12)1550*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X12, batch_gt_12) {
1551*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1552*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
1553*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1554*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1555*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1556*4bdc9457SAndroid Build Coastguard Worker     }
1557*4bdc9457SAndroid Build Coastguard Worker   }
1558*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X12,inplace)1559*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X12, inplace) {
1560*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1561*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
1562*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1563*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1564*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1565*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1566*4bdc9457SAndroid Build Coastguard Worker     }
1567*4bdc9457SAndroid Build Coastguard Worker   }
1568*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1569*4bdc9457SAndroid Build Coastguard Worker 
1570*4bdc9457SAndroid Build Coastguard Worker 
1571*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X16,batch_eq_16)1572*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X16, batch_eq_16) {
1573*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1574*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1575*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
1576*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1577*4bdc9457SAndroid Build Coastguard Worker   }
1578*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X16,batch_div_16)1579*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X16, batch_div_16) {
1580*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1581*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
1582*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1583*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1584*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1585*4bdc9457SAndroid Build Coastguard Worker     }
1586*4bdc9457SAndroid Build Coastguard Worker   }
1587*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X16,batch_lt_16)1588*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X16, batch_lt_16) {
1589*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1590*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
1591*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1592*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1593*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1594*4bdc9457SAndroid Build Coastguard Worker     }
1595*4bdc9457SAndroid Build Coastguard Worker   }
1596*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X16,batch_gt_16)1597*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X16, batch_gt_16) {
1598*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1599*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
1600*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1601*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1602*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1603*4bdc9457SAndroid Build Coastguard Worker     }
1604*4bdc9457SAndroid Build Coastguard Worker   }
1605*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X16,inplace)1606*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X16, inplace) {
1607*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1608*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
1609*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1610*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1611*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1612*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1613*4bdc9457SAndroid Build Coastguard Worker     }
1614*4bdc9457SAndroid Build Coastguard Worker   }
1615*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1616*4bdc9457SAndroid Build Coastguard Worker 
1617*4bdc9457SAndroid Build Coastguard Worker 
1618*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X20,batch_eq_20)1619*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X20, batch_eq_20) {
1620*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1621*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1622*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
1623*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1624*4bdc9457SAndroid Build Coastguard Worker   }
1625*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X20,batch_div_20)1626*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X20, batch_div_20) {
1627*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1628*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
1629*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1630*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1631*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1632*4bdc9457SAndroid Build Coastguard Worker     }
1633*4bdc9457SAndroid Build Coastguard Worker   }
1634*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X20,batch_lt_20)1635*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X20, batch_lt_20) {
1636*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1637*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
1638*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1639*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1640*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1641*4bdc9457SAndroid Build Coastguard Worker     }
1642*4bdc9457SAndroid Build Coastguard Worker   }
1643*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X20,batch_gt_20)1644*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X20, batch_gt_20) {
1645*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1646*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
1647*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1648*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1649*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1650*4bdc9457SAndroid Build Coastguard Worker     }
1651*4bdc9457SAndroid Build Coastguard Worker   }
1652*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X20,inplace)1653*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X20, inplace) {
1654*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1655*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
1656*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1657*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1658*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1659*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1660*4bdc9457SAndroid Build Coastguard Worker     }
1661*4bdc9457SAndroid Build Coastguard Worker   }
1662*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1663*4bdc9457SAndroid Build Coastguard Worker 
1664*4bdc9457SAndroid Build Coastguard Worker 
1665*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X24,batch_eq_24)1666*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X24, batch_eq_24) {
1667*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1668*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1669*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
1670*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1671*4bdc9457SAndroid Build Coastguard Worker   }
1672*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X24,batch_div_24)1673*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X24, batch_div_24) {
1674*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1675*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
1676*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1677*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1678*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1679*4bdc9457SAndroid Build Coastguard Worker     }
1680*4bdc9457SAndroid Build Coastguard Worker   }
1681*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X24,batch_lt_24)1682*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X24, batch_lt_24) {
1683*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1684*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
1685*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1686*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1687*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1688*4bdc9457SAndroid Build Coastguard Worker     }
1689*4bdc9457SAndroid Build Coastguard Worker   }
1690*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X24,batch_gt_24)1691*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X24, batch_gt_24) {
1692*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1693*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
1694*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1695*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1696*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1697*4bdc9457SAndroid Build Coastguard Worker     }
1698*4bdc9457SAndroid Build Coastguard Worker   }
1699*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X24,inplace)1700*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2FMA_X24, inplace) {
1701*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1702*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
1703*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1704*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1705*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1706*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1707*4bdc9457SAndroid Build Coastguard Worker     }
1708*4bdc9457SAndroid Build Coastguard Worker   }
1709*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1710*4bdc9457SAndroid Build Coastguard Worker 
1711*4bdc9457SAndroid Build Coastguard Worker 
1712*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X4,batch_eq_4)1713*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X4, batch_eq_4) {
1714*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1715*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1716*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
1717*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1718*4bdc9457SAndroid Build Coastguard Worker   }
1719*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X4,batch_div_4)1720*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X4, batch_div_4) {
1721*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1722*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
1723*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1724*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1725*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1726*4bdc9457SAndroid Build Coastguard Worker     }
1727*4bdc9457SAndroid Build Coastguard Worker   }
1728*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X4,batch_lt_4)1729*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X4, batch_lt_4) {
1730*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1731*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
1732*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1733*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1734*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1735*4bdc9457SAndroid Build Coastguard Worker     }
1736*4bdc9457SAndroid Build Coastguard Worker   }
1737*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X4,batch_gt_4)1738*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X4, batch_gt_4) {
1739*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1740*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
1741*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1742*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1743*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1744*4bdc9457SAndroid Build Coastguard Worker     }
1745*4bdc9457SAndroid Build Coastguard Worker   }
1746*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X4,inplace)1747*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X4, inplace) {
1748*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1749*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
1750*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1751*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1752*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1753*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1754*4bdc9457SAndroid Build Coastguard Worker     }
1755*4bdc9457SAndroid Build Coastguard Worker   }
1756*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1757*4bdc9457SAndroid Build Coastguard Worker 
1758*4bdc9457SAndroid Build Coastguard Worker 
1759*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X8,batch_eq_8)1760*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X8, batch_eq_8) {
1761*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1762*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1763*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
1764*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1765*4bdc9457SAndroid Build Coastguard Worker   }
1766*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X8,batch_div_8)1767*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X8, batch_div_8) {
1768*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1769*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
1770*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1771*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1772*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1773*4bdc9457SAndroid Build Coastguard Worker     }
1774*4bdc9457SAndroid Build Coastguard Worker   }
1775*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X8,batch_lt_8)1776*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X8, batch_lt_8) {
1777*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1778*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
1779*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1780*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1781*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1782*4bdc9457SAndroid Build Coastguard Worker     }
1783*4bdc9457SAndroid Build Coastguard Worker   }
1784*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X8,batch_gt_8)1785*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X8, batch_gt_8) {
1786*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1787*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
1788*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1789*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1790*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1791*4bdc9457SAndroid Build Coastguard Worker     }
1792*4bdc9457SAndroid Build Coastguard Worker   }
1793*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X8,inplace)1794*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X8, inplace) {
1795*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1796*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
1797*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1798*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1799*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1800*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1801*4bdc9457SAndroid Build Coastguard Worker     }
1802*4bdc9457SAndroid Build Coastguard Worker   }
1803*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1804*4bdc9457SAndroid Build Coastguard Worker 
1805*4bdc9457SAndroid Build Coastguard Worker 
1806*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X12,batch_eq_12)1807*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X12, batch_eq_12) {
1808*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1809*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1810*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
1811*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1812*4bdc9457SAndroid Build Coastguard Worker   }
1813*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X12,batch_div_12)1814*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X12, batch_div_12) {
1815*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1816*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
1817*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1818*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1819*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1820*4bdc9457SAndroid Build Coastguard Worker     }
1821*4bdc9457SAndroid Build Coastguard Worker   }
1822*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X12,batch_lt_12)1823*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X12, batch_lt_12) {
1824*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1825*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
1826*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1827*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1828*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1829*4bdc9457SAndroid Build Coastguard Worker     }
1830*4bdc9457SAndroid Build Coastguard Worker   }
1831*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X12,batch_gt_12)1832*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X12, batch_gt_12) {
1833*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1834*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
1835*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1836*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1837*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1838*4bdc9457SAndroid Build Coastguard Worker     }
1839*4bdc9457SAndroid Build Coastguard Worker   }
1840*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X12,inplace)1841*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X12, inplace) {
1842*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1843*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
1844*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1845*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1846*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1847*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1848*4bdc9457SAndroid Build Coastguard Worker     }
1849*4bdc9457SAndroid Build Coastguard Worker   }
1850*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1851*4bdc9457SAndroid Build Coastguard Worker 
1852*4bdc9457SAndroid Build Coastguard Worker 
1853*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X16,batch_eq_16)1854*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X16, batch_eq_16) {
1855*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1856*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1857*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
1858*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1859*4bdc9457SAndroid Build Coastguard Worker   }
1860*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X16,batch_div_16)1861*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X16, batch_div_16) {
1862*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1863*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
1864*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1865*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1866*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1867*4bdc9457SAndroid Build Coastguard Worker     }
1868*4bdc9457SAndroid Build Coastguard Worker   }
1869*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X16,batch_lt_16)1870*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X16, batch_lt_16) {
1871*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1872*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
1873*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1874*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1875*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1876*4bdc9457SAndroid Build Coastguard Worker     }
1877*4bdc9457SAndroid Build Coastguard Worker   }
1878*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X16,batch_gt_16)1879*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X16, batch_gt_16) {
1880*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1881*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
1882*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1883*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1884*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1885*4bdc9457SAndroid Build Coastguard Worker     }
1886*4bdc9457SAndroid Build Coastguard Worker   }
1887*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X16,inplace)1888*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X16, inplace) {
1889*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1890*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
1891*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1892*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1893*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1894*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1895*4bdc9457SAndroid Build Coastguard Worker     }
1896*4bdc9457SAndroid Build Coastguard Worker   }
1897*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1898*4bdc9457SAndroid Build Coastguard Worker 
1899*4bdc9457SAndroid Build Coastguard Worker 
1900*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X20,batch_eq_20)1901*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X20, batch_eq_20) {
1902*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1903*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1904*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
1905*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1906*4bdc9457SAndroid Build Coastguard Worker   }
1907*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X20,batch_div_20)1908*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X20, batch_div_20) {
1909*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1910*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
1911*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1912*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1913*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1914*4bdc9457SAndroid Build Coastguard Worker     }
1915*4bdc9457SAndroid Build Coastguard Worker   }
1916*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X20,batch_lt_20)1917*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X20, batch_lt_20) {
1918*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1919*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
1920*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1921*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1922*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1923*4bdc9457SAndroid Build Coastguard Worker     }
1924*4bdc9457SAndroid Build Coastguard Worker   }
1925*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X20,batch_gt_20)1926*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X20, batch_gt_20) {
1927*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1928*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
1929*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1930*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1931*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1932*4bdc9457SAndroid Build Coastguard Worker     }
1933*4bdc9457SAndroid Build Coastguard Worker   }
1934*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X20,inplace)1935*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X20, inplace) {
1936*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1937*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
1938*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1939*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1940*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1941*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1942*4bdc9457SAndroid Build Coastguard Worker     }
1943*4bdc9457SAndroid Build Coastguard Worker   }
1944*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1945*4bdc9457SAndroid Build Coastguard Worker 
1946*4bdc9457SAndroid Build Coastguard Worker 
1947*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X24,batch_eq_24)1948*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X24, batch_eq_24) {
1949*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1950*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1951*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
1952*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1953*4bdc9457SAndroid Build Coastguard Worker   }
1954*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X24,batch_div_24)1955*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X24, batch_div_24) {
1956*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1957*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
1958*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1959*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1960*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1961*4bdc9457SAndroid Build Coastguard Worker     }
1962*4bdc9457SAndroid Build Coastguard Worker   }
1963*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X24,batch_lt_24)1964*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X24, batch_lt_24) {
1965*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1966*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
1967*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1968*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1969*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1970*4bdc9457SAndroid Build Coastguard Worker     }
1971*4bdc9457SAndroid Build Coastguard Worker   }
1972*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X24,batch_gt_24)1973*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X24, batch_gt_24) {
1974*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1975*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
1976*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1977*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1978*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1979*4bdc9457SAndroid Build Coastguard Worker     }
1980*4bdc9457SAndroid Build Coastguard Worker   }
1981*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X24,inplace)1982*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT64_P2_NR2RECPS_X24, inplace) {
1983*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1984*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
1985*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
1986*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
1987*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
1988*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut64_p2_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut64_p2_params);
1989*4bdc9457SAndroid Build Coastguard Worker     }
1990*4bdc9457SAndroid Build Coastguard Worker   }
1991*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
1992*4bdc9457SAndroid Build Coastguard Worker 
1993*4bdc9457SAndroid Build Coastguard Worker 
1994*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X4,batch_eq_4)1995*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X4, batch_eq_4) {
1996*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
1997*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
1998*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
1999*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2000*4bdc9457SAndroid Build Coastguard Worker   }
2001*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X4,batch_div_4)2002*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X4, batch_div_4) {
2003*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2004*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
2005*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2006*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2007*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2008*4bdc9457SAndroid Build Coastguard Worker     }
2009*4bdc9457SAndroid Build Coastguard Worker   }
2010*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X4,batch_lt_4)2011*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X4, batch_lt_4) {
2012*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2013*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
2014*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2015*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2016*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2017*4bdc9457SAndroid Build Coastguard Worker     }
2018*4bdc9457SAndroid Build Coastguard Worker   }
2019*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X4,batch_gt_4)2020*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X4, batch_gt_4) {
2021*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2022*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
2023*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2024*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2025*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2026*4bdc9457SAndroid Build Coastguard Worker     }
2027*4bdc9457SAndroid Build Coastguard Worker   }
2028*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X4,inplace)2029*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X4, inplace) {
2030*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2031*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
2032*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2033*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2034*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2035*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2036*4bdc9457SAndroid Build Coastguard Worker     }
2037*4bdc9457SAndroid Build Coastguard Worker   }
2038*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
2039*4bdc9457SAndroid Build Coastguard Worker 
2040*4bdc9457SAndroid Build Coastguard Worker 
2041*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X8,batch_eq_8)2042*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X8, batch_eq_8) {
2043*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2044*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2045*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
2046*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2047*4bdc9457SAndroid Build Coastguard Worker   }
2048*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X8,batch_div_8)2049*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X8, batch_div_8) {
2050*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2051*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
2052*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2053*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2054*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2055*4bdc9457SAndroid Build Coastguard Worker     }
2056*4bdc9457SAndroid Build Coastguard Worker   }
2057*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X8,batch_lt_8)2058*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X8, batch_lt_8) {
2059*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2060*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
2061*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2062*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2063*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2064*4bdc9457SAndroid Build Coastguard Worker     }
2065*4bdc9457SAndroid Build Coastguard Worker   }
2066*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X8,batch_gt_8)2067*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X8, batch_gt_8) {
2068*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2069*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
2070*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2071*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2072*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2073*4bdc9457SAndroid Build Coastguard Worker     }
2074*4bdc9457SAndroid Build Coastguard Worker   }
2075*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X8,inplace)2076*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X8, inplace) {
2077*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2078*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
2079*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2080*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2081*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2082*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2083*4bdc9457SAndroid Build Coastguard Worker     }
2084*4bdc9457SAndroid Build Coastguard Worker   }
2085*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
2086*4bdc9457SAndroid Build Coastguard Worker 
2087*4bdc9457SAndroid Build Coastguard Worker 
2088*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X12,batch_eq_12)2089*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X12, batch_eq_12) {
2090*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2091*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2092*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
2093*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2094*4bdc9457SAndroid Build Coastguard Worker   }
2095*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X12,batch_div_12)2096*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X12, batch_div_12) {
2097*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2098*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
2099*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2100*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2101*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2102*4bdc9457SAndroid Build Coastguard Worker     }
2103*4bdc9457SAndroid Build Coastguard Worker   }
2104*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X12,batch_lt_12)2105*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X12, batch_lt_12) {
2106*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2107*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
2108*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2109*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2110*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2111*4bdc9457SAndroid Build Coastguard Worker     }
2112*4bdc9457SAndroid Build Coastguard Worker   }
2113*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X12,batch_gt_12)2114*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X12, batch_gt_12) {
2115*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2116*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
2117*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2118*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2119*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2120*4bdc9457SAndroid Build Coastguard Worker     }
2121*4bdc9457SAndroid Build Coastguard Worker   }
2122*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X12,inplace)2123*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X12, inplace) {
2124*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2125*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
2126*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2127*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2128*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2129*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2130*4bdc9457SAndroid Build Coastguard Worker     }
2131*4bdc9457SAndroid Build Coastguard Worker   }
2132*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
2133*4bdc9457SAndroid Build Coastguard Worker 
2134*4bdc9457SAndroid Build Coastguard Worker 
2135*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X16,batch_eq_16)2136*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X16, batch_eq_16) {
2137*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2138*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2139*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
2140*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2141*4bdc9457SAndroid Build Coastguard Worker   }
2142*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X16,batch_div_16)2143*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X16, batch_div_16) {
2144*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2145*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
2146*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2147*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2148*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2149*4bdc9457SAndroid Build Coastguard Worker     }
2150*4bdc9457SAndroid Build Coastguard Worker   }
2151*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X16,batch_lt_16)2152*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X16, batch_lt_16) {
2153*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2154*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
2155*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2156*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2157*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2158*4bdc9457SAndroid Build Coastguard Worker     }
2159*4bdc9457SAndroid Build Coastguard Worker   }
2160*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X16,batch_gt_16)2161*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X16, batch_gt_16) {
2162*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2163*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
2164*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2165*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2166*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2167*4bdc9457SAndroid Build Coastguard Worker     }
2168*4bdc9457SAndroid Build Coastguard Worker   }
2169*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X16,inplace)2170*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X16, inplace) {
2171*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2172*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
2173*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2174*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2175*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2176*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2177*4bdc9457SAndroid Build Coastguard Worker     }
2178*4bdc9457SAndroid Build Coastguard Worker   }
2179*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
2180*4bdc9457SAndroid Build Coastguard Worker 
2181*4bdc9457SAndroid Build Coastguard Worker 
2182*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X20,batch_eq_20)2183*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X20, batch_eq_20) {
2184*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2185*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2186*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
2187*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2188*4bdc9457SAndroid Build Coastguard Worker   }
2189*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X20,batch_div_20)2190*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X20, batch_div_20) {
2191*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2192*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
2193*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2194*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2195*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2196*4bdc9457SAndroid Build Coastguard Worker     }
2197*4bdc9457SAndroid Build Coastguard Worker   }
2198*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X20,batch_lt_20)2199*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X20, batch_lt_20) {
2200*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2201*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
2202*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2203*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2204*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2205*4bdc9457SAndroid Build Coastguard Worker     }
2206*4bdc9457SAndroid Build Coastguard Worker   }
2207*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X20,batch_gt_20)2208*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X20, batch_gt_20) {
2209*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2210*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
2211*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2212*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2213*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2214*4bdc9457SAndroid Build Coastguard Worker     }
2215*4bdc9457SAndroid Build Coastguard Worker   }
2216*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X20,inplace)2217*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X20, inplace) {
2218*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2219*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
2220*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2221*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2222*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2223*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2224*4bdc9457SAndroid Build Coastguard Worker     }
2225*4bdc9457SAndroid Build Coastguard Worker   }
2226*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
2227*4bdc9457SAndroid Build Coastguard Worker 
2228*4bdc9457SAndroid Build Coastguard Worker 
2229*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X24,batch_eq_24)2230*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X24, batch_eq_24) {
2231*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2232*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2233*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
2234*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2235*4bdc9457SAndroid Build Coastguard Worker   }
2236*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X24,batch_div_24)2237*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X24, batch_div_24) {
2238*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2239*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
2240*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2241*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2242*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2243*4bdc9457SAndroid Build Coastguard Worker     }
2244*4bdc9457SAndroid Build Coastguard Worker   }
2245*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X24,batch_lt_24)2246*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X24, batch_lt_24) {
2247*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2248*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
2249*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2250*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2251*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2252*4bdc9457SAndroid Build Coastguard Worker     }
2253*4bdc9457SAndroid Build Coastguard Worker   }
2254*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X24,batch_gt_24)2255*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X24, batch_gt_24) {
2256*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2257*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
2258*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2259*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2260*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2261*4bdc9457SAndroid Build Coastguard Worker     }
2262*4bdc9457SAndroid Build Coastguard Worker   }
2263*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X24,inplace)2264*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_DIV_X24, inplace) {
2265*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2266*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
2267*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2268*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2269*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2270*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2271*4bdc9457SAndroid Build Coastguard Worker     }
2272*4bdc9457SAndroid Build Coastguard Worker   }
2273*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
2274*4bdc9457SAndroid Build Coastguard Worker 
2275*4bdc9457SAndroid Build Coastguard Worker 
2276*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X4,batch_eq_4)2277*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X4, batch_eq_4) {
2278*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2279*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2280*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
2281*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2282*4bdc9457SAndroid Build Coastguard Worker   }
2283*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X4,batch_div_4)2284*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X4, batch_div_4) {
2285*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2286*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
2287*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2288*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2289*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2290*4bdc9457SAndroid Build Coastguard Worker     }
2291*4bdc9457SAndroid Build Coastguard Worker   }
2292*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X4,batch_lt_4)2293*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X4, batch_lt_4) {
2294*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2295*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
2296*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2297*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2298*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2299*4bdc9457SAndroid Build Coastguard Worker     }
2300*4bdc9457SAndroid Build Coastguard Worker   }
2301*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X4,batch_gt_4)2302*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X4, batch_gt_4) {
2303*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2304*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
2305*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2306*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2307*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2308*4bdc9457SAndroid Build Coastguard Worker     }
2309*4bdc9457SAndroid Build Coastguard Worker   }
2310*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X4,inplace)2311*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X4, inplace) {
2312*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2313*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
2314*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2315*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2316*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2317*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2318*4bdc9457SAndroid Build Coastguard Worker     }
2319*4bdc9457SAndroid Build Coastguard Worker   }
2320*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2321*4bdc9457SAndroid Build Coastguard Worker 
2322*4bdc9457SAndroid Build Coastguard Worker 
2323*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X8,batch_eq_8)2324*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X8, batch_eq_8) {
2325*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2326*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2327*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
2328*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2329*4bdc9457SAndroid Build Coastguard Worker   }
2330*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X8,batch_div_8)2331*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X8, batch_div_8) {
2332*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2333*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
2334*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2335*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2336*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2337*4bdc9457SAndroid Build Coastguard Worker     }
2338*4bdc9457SAndroid Build Coastguard Worker   }
2339*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X8,batch_lt_8)2340*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X8, batch_lt_8) {
2341*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2342*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
2343*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2344*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2345*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2346*4bdc9457SAndroid Build Coastguard Worker     }
2347*4bdc9457SAndroid Build Coastguard Worker   }
2348*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X8,batch_gt_8)2349*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X8, batch_gt_8) {
2350*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2351*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
2352*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2353*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2354*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2355*4bdc9457SAndroid Build Coastguard Worker     }
2356*4bdc9457SAndroid Build Coastguard Worker   }
2357*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X8,inplace)2358*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X8, inplace) {
2359*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2360*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
2361*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2362*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2363*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2364*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2365*4bdc9457SAndroid Build Coastguard Worker     }
2366*4bdc9457SAndroid Build Coastguard Worker   }
2367*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2368*4bdc9457SAndroid Build Coastguard Worker 
2369*4bdc9457SAndroid Build Coastguard Worker 
2370*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X12,batch_eq_12)2371*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X12, batch_eq_12) {
2372*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2373*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2374*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
2375*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2376*4bdc9457SAndroid Build Coastguard Worker   }
2377*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X12,batch_div_12)2378*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X12, batch_div_12) {
2379*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2380*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
2381*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2382*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2383*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2384*4bdc9457SAndroid Build Coastguard Worker     }
2385*4bdc9457SAndroid Build Coastguard Worker   }
2386*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X12,batch_lt_12)2387*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X12, batch_lt_12) {
2388*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2389*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
2390*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2391*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2392*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2393*4bdc9457SAndroid Build Coastguard Worker     }
2394*4bdc9457SAndroid Build Coastguard Worker   }
2395*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X12,batch_gt_12)2396*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X12, batch_gt_12) {
2397*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2398*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
2399*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2400*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2401*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2402*4bdc9457SAndroid Build Coastguard Worker     }
2403*4bdc9457SAndroid Build Coastguard Worker   }
2404*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X12,inplace)2405*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X12, inplace) {
2406*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2407*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
2408*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2409*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2410*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2411*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2412*4bdc9457SAndroid Build Coastguard Worker     }
2413*4bdc9457SAndroid Build Coastguard Worker   }
2414*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2415*4bdc9457SAndroid Build Coastguard Worker 
2416*4bdc9457SAndroid Build Coastguard Worker 
2417*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X16,batch_eq_16)2418*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X16, batch_eq_16) {
2419*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2420*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2421*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
2422*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2423*4bdc9457SAndroid Build Coastguard Worker   }
2424*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X16,batch_div_16)2425*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X16, batch_div_16) {
2426*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2427*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
2428*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2429*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2430*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2431*4bdc9457SAndroid Build Coastguard Worker     }
2432*4bdc9457SAndroid Build Coastguard Worker   }
2433*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X16,batch_lt_16)2434*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X16, batch_lt_16) {
2435*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2436*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
2437*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2438*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2439*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2440*4bdc9457SAndroid Build Coastguard Worker     }
2441*4bdc9457SAndroid Build Coastguard Worker   }
2442*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X16,batch_gt_16)2443*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X16, batch_gt_16) {
2444*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2445*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
2446*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2447*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2448*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2449*4bdc9457SAndroid Build Coastguard Worker     }
2450*4bdc9457SAndroid Build Coastguard Worker   }
2451*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X16,inplace)2452*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X16, inplace) {
2453*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2454*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
2455*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2456*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2457*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2458*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2459*4bdc9457SAndroid Build Coastguard Worker     }
2460*4bdc9457SAndroid Build Coastguard Worker   }
2461*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2462*4bdc9457SAndroid Build Coastguard Worker 
2463*4bdc9457SAndroid Build Coastguard Worker 
2464*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X20,batch_eq_20)2465*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X20, batch_eq_20) {
2466*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2467*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2468*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
2469*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2470*4bdc9457SAndroid Build Coastguard Worker   }
2471*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X20,batch_div_20)2472*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X20, batch_div_20) {
2473*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2474*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
2475*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2476*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2477*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2478*4bdc9457SAndroid Build Coastguard Worker     }
2479*4bdc9457SAndroid Build Coastguard Worker   }
2480*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X20,batch_lt_20)2481*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X20, batch_lt_20) {
2482*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2483*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
2484*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2485*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2486*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2487*4bdc9457SAndroid Build Coastguard Worker     }
2488*4bdc9457SAndroid Build Coastguard Worker   }
2489*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X20,batch_gt_20)2490*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X20, batch_gt_20) {
2491*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2492*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
2493*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2494*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2495*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2496*4bdc9457SAndroid Build Coastguard Worker     }
2497*4bdc9457SAndroid Build Coastguard Worker   }
2498*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X20,inplace)2499*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X20, inplace) {
2500*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2501*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
2502*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2503*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2504*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2505*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2506*4bdc9457SAndroid Build Coastguard Worker     }
2507*4bdc9457SAndroid Build Coastguard Worker   }
2508*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2509*4bdc9457SAndroid Build Coastguard Worker 
2510*4bdc9457SAndroid Build Coastguard Worker 
2511*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X24,batch_eq_24)2512*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X24, batch_eq_24) {
2513*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2514*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2515*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
2516*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2517*4bdc9457SAndroid Build Coastguard Worker   }
2518*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X24,batch_div_24)2519*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X24, batch_div_24) {
2520*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2521*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
2522*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2523*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2524*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2525*4bdc9457SAndroid Build Coastguard Worker     }
2526*4bdc9457SAndroid Build Coastguard Worker   }
2527*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X24,batch_lt_24)2528*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X24, batch_lt_24) {
2529*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2530*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
2531*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2532*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2533*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2534*4bdc9457SAndroid Build Coastguard Worker     }
2535*4bdc9457SAndroid Build Coastguard Worker   }
2536*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X24,batch_gt_24)2537*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X24, batch_gt_24) {
2538*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2539*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
2540*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2541*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2542*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2543*4bdc9457SAndroid Build Coastguard Worker     }
2544*4bdc9457SAndroid Build Coastguard Worker   }
2545*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X24,inplace)2546*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR1RECPS1FMA_X24, inplace) {
2547*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2548*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
2549*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2550*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2551*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2552*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2553*4bdc9457SAndroid Build Coastguard Worker     }
2554*4bdc9457SAndroid Build Coastguard Worker   }
2555*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2556*4bdc9457SAndroid Build Coastguard Worker 
2557*4bdc9457SAndroid Build Coastguard Worker 
2558*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X4,batch_eq_4)2559*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X4, batch_eq_4) {
2560*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2561*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2562*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
2563*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2564*4bdc9457SAndroid Build Coastguard Worker   }
2565*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X4,batch_div_4)2566*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X4, batch_div_4) {
2567*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2568*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
2569*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2570*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2571*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2572*4bdc9457SAndroid Build Coastguard Worker     }
2573*4bdc9457SAndroid Build Coastguard Worker   }
2574*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X4,batch_lt_4)2575*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X4, batch_lt_4) {
2576*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2577*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
2578*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2579*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2580*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2581*4bdc9457SAndroid Build Coastguard Worker     }
2582*4bdc9457SAndroid Build Coastguard Worker   }
2583*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X4,batch_gt_4)2584*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X4, batch_gt_4) {
2585*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2586*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
2587*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2588*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2589*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2590*4bdc9457SAndroid Build Coastguard Worker     }
2591*4bdc9457SAndroid Build Coastguard Worker   }
2592*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X4,inplace)2593*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X4, inplace) {
2594*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2595*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
2596*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2597*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2598*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2599*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2600*4bdc9457SAndroid Build Coastguard Worker     }
2601*4bdc9457SAndroid Build Coastguard Worker   }
2602*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2603*4bdc9457SAndroid Build Coastguard Worker 
2604*4bdc9457SAndroid Build Coastguard Worker 
2605*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X8,batch_eq_8)2606*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X8, batch_eq_8) {
2607*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2608*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2609*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
2610*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2611*4bdc9457SAndroid Build Coastguard Worker   }
2612*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X8,batch_div_8)2613*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X8, batch_div_8) {
2614*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2615*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
2616*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2617*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2618*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2619*4bdc9457SAndroid Build Coastguard Worker     }
2620*4bdc9457SAndroid Build Coastguard Worker   }
2621*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X8,batch_lt_8)2622*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X8, batch_lt_8) {
2623*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2624*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
2625*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2626*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2627*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2628*4bdc9457SAndroid Build Coastguard Worker     }
2629*4bdc9457SAndroid Build Coastguard Worker   }
2630*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X8,batch_gt_8)2631*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X8, batch_gt_8) {
2632*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2633*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
2634*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2635*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2636*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2637*4bdc9457SAndroid Build Coastguard Worker     }
2638*4bdc9457SAndroid Build Coastguard Worker   }
2639*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X8,inplace)2640*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X8, inplace) {
2641*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2642*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
2643*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2644*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2645*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2646*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2647*4bdc9457SAndroid Build Coastguard Worker     }
2648*4bdc9457SAndroid Build Coastguard Worker   }
2649*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2650*4bdc9457SAndroid Build Coastguard Worker 
2651*4bdc9457SAndroid Build Coastguard Worker 
2652*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X12,batch_eq_12)2653*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X12, batch_eq_12) {
2654*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2655*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2656*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
2657*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2658*4bdc9457SAndroid Build Coastguard Worker   }
2659*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X12,batch_div_12)2660*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X12, batch_div_12) {
2661*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2662*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
2663*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2664*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2665*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2666*4bdc9457SAndroid Build Coastguard Worker     }
2667*4bdc9457SAndroid Build Coastguard Worker   }
2668*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X12,batch_lt_12)2669*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X12, batch_lt_12) {
2670*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2671*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
2672*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2673*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2674*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2675*4bdc9457SAndroid Build Coastguard Worker     }
2676*4bdc9457SAndroid Build Coastguard Worker   }
2677*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X12,batch_gt_12)2678*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X12, batch_gt_12) {
2679*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2680*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
2681*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2682*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2683*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2684*4bdc9457SAndroid Build Coastguard Worker     }
2685*4bdc9457SAndroid Build Coastguard Worker   }
2686*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X12,inplace)2687*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X12, inplace) {
2688*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2689*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
2690*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2691*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2692*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2693*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2694*4bdc9457SAndroid Build Coastguard Worker     }
2695*4bdc9457SAndroid Build Coastguard Worker   }
2696*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2697*4bdc9457SAndroid Build Coastguard Worker 
2698*4bdc9457SAndroid Build Coastguard Worker 
2699*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X16,batch_eq_16)2700*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X16, batch_eq_16) {
2701*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2702*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2703*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
2704*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2705*4bdc9457SAndroid Build Coastguard Worker   }
2706*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X16,batch_div_16)2707*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X16, batch_div_16) {
2708*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2709*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
2710*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2711*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2712*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2713*4bdc9457SAndroid Build Coastguard Worker     }
2714*4bdc9457SAndroid Build Coastguard Worker   }
2715*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X16,batch_lt_16)2716*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X16, batch_lt_16) {
2717*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2718*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
2719*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2720*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2721*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2722*4bdc9457SAndroid Build Coastguard Worker     }
2723*4bdc9457SAndroid Build Coastguard Worker   }
2724*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X16,batch_gt_16)2725*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X16, batch_gt_16) {
2726*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2727*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
2728*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2729*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2730*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2731*4bdc9457SAndroid Build Coastguard Worker     }
2732*4bdc9457SAndroid Build Coastguard Worker   }
2733*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X16,inplace)2734*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X16, inplace) {
2735*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2736*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
2737*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2738*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2739*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2740*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2741*4bdc9457SAndroid Build Coastguard Worker     }
2742*4bdc9457SAndroid Build Coastguard Worker   }
2743*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2744*4bdc9457SAndroid Build Coastguard Worker 
2745*4bdc9457SAndroid Build Coastguard Worker 
2746*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X20,batch_eq_20)2747*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X20, batch_eq_20) {
2748*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2749*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2750*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
2751*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2752*4bdc9457SAndroid Build Coastguard Worker   }
2753*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X20,batch_div_20)2754*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X20, batch_div_20) {
2755*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2756*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
2757*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2758*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2759*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2760*4bdc9457SAndroid Build Coastguard Worker     }
2761*4bdc9457SAndroid Build Coastguard Worker   }
2762*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X20,batch_lt_20)2763*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X20, batch_lt_20) {
2764*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2765*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
2766*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2767*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2768*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2769*4bdc9457SAndroid Build Coastguard Worker     }
2770*4bdc9457SAndroid Build Coastguard Worker   }
2771*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X20,batch_gt_20)2772*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X20, batch_gt_20) {
2773*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2774*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
2775*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2776*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2777*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2778*4bdc9457SAndroid Build Coastguard Worker     }
2779*4bdc9457SAndroid Build Coastguard Worker   }
2780*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X20,inplace)2781*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X20, inplace) {
2782*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2783*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
2784*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2785*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2786*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2787*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2788*4bdc9457SAndroid Build Coastguard Worker     }
2789*4bdc9457SAndroid Build Coastguard Worker   }
2790*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2791*4bdc9457SAndroid Build Coastguard Worker 
2792*4bdc9457SAndroid Build Coastguard Worker 
2793*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X24,batch_eq_24)2794*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X24, batch_eq_24) {
2795*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2796*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2797*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
2798*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2799*4bdc9457SAndroid Build Coastguard Worker   }
2800*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X24,batch_div_24)2801*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X24, batch_div_24) {
2802*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2803*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
2804*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2805*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2806*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2807*4bdc9457SAndroid Build Coastguard Worker     }
2808*4bdc9457SAndroid Build Coastguard Worker   }
2809*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X24,batch_lt_24)2810*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X24, batch_lt_24) {
2811*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2812*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
2813*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2814*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2815*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2816*4bdc9457SAndroid Build Coastguard Worker     }
2817*4bdc9457SAndroid Build Coastguard Worker   }
2818*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X24,batch_gt_24)2819*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X24, batch_gt_24) {
2820*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2821*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
2822*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2823*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2824*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2825*4bdc9457SAndroid Build Coastguard Worker     }
2826*4bdc9457SAndroid Build Coastguard Worker   }
2827*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X24,inplace)2828*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2FMA_X24, inplace) {
2829*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2830*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
2831*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2832*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2833*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2834*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2835*4bdc9457SAndroid Build Coastguard Worker     }
2836*4bdc9457SAndroid Build Coastguard Worker   }
2837*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2838*4bdc9457SAndroid Build Coastguard Worker 
2839*4bdc9457SAndroid Build Coastguard Worker 
2840*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X4,batch_eq_4)2841*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X4, batch_eq_4) {
2842*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2843*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2844*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
2845*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2846*4bdc9457SAndroid Build Coastguard Worker   }
2847*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X4,batch_div_4)2848*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X4, batch_div_4) {
2849*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2850*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
2851*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2852*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2853*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2854*4bdc9457SAndroid Build Coastguard Worker     }
2855*4bdc9457SAndroid Build Coastguard Worker   }
2856*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X4,batch_lt_4)2857*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X4, batch_lt_4) {
2858*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2859*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
2860*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2861*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2862*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2863*4bdc9457SAndroid Build Coastguard Worker     }
2864*4bdc9457SAndroid Build Coastguard Worker   }
2865*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X4,batch_gt_4)2866*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X4, batch_gt_4) {
2867*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2868*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
2869*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2870*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2871*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2872*4bdc9457SAndroid Build Coastguard Worker     }
2873*4bdc9457SAndroid Build Coastguard Worker   }
2874*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X4,inplace)2875*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X4, inplace) {
2876*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2877*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
2878*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2879*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2880*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2881*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2882*4bdc9457SAndroid Build Coastguard Worker     }
2883*4bdc9457SAndroid Build Coastguard Worker   }
2884*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2885*4bdc9457SAndroid Build Coastguard Worker 
2886*4bdc9457SAndroid Build Coastguard Worker 
2887*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X8,batch_eq_8)2888*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X8, batch_eq_8) {
2889*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2890*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2891*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
2892*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2893*4bdc9457SAndroid Build Coastguard Worker   }
2894*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X8,batch_div_8)2895*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X8, batch_div_8) {
2896*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2897*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
2898*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2899*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2900*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2901*4bdc9457SAndroid Build Coastguard Worker     }
2902*4bdc9457SAndroid Build Coastguard Worker   }
2903*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X8,batch_lt_8)2904*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X8, batch_lt_8) {
2905*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2906*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
2907*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2908*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2909*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2910*4bdc9457SAndroid Build Coastguard Worker     }
2911*4bdc9457SAndroid Build Coastguard Worker   }
2912*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X8,batch_gt_8)2913*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X8, batch_gt_8) {
2914*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2915*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
2916*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2917*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2918*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2919*4bdc9457SAndroid Build Coastguard Worker     }
2920*4bdc9457SAndroid Build Coastguard Worker   }
2921*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X8,inplace)2922*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X8, inplace) {
2923*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2924*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
2925*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2926*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2927*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2928*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2929*4bdc9457SAndroid Build Coastguard Worker     }
2930*4bdc9457SAndroid Build Coastguard Worker   }
2931*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2932*4bdc9457SAndroid Build Coastguard Worker 
2933*4bdc9457SAndroid Build Coastguard Worker 
2934*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X12,batch_eq_12)2935*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X12, batch_eq_12) {
2936*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2937*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2938*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
2939*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2940*4bdc9457SAndroid Build Coastguard Worker   }
2941*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X12,batch_div_12)2942*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X12, batch_div_12) {
2943*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2944*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
2945*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2946*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2947*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2948*4bdc9457SAndroid Build Coastguard Worker     }
2949*4bdc9457SAndroid Build Coastguard Worker   }
2950*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X12,batch_lt_12)2951*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X12, batch_lt_12) {
2952*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2953*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
2954*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2955*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2956*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2957*4bdc9457SAndroid Build Coastguard Worker     }
2958*4bdc9457SAndroid Build Coastguard Worker   }
2959*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X12,batch_gt_12)2960*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X12, batch_gt_12) {
2961*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2962*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
2963*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2964*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2965*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2966*4bdc9457SAndroid Build Coastguard Worker     }
2967*4bdc9457SAndroid Build Coastguard Worker   }
2968*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X12,inplace)2969*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X12, inplace) {
2970*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2971*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
2972*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2973*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2974*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
2975*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2976*4bdc9457SAndroid Build Coastguard Worker     }
2977*4bdc9457SAndroid Build Coastguard Worker   }
2978*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
2979*4bdc9457SAndroid Build Coastguard Worker 
2980*4bdc9457SAndroid Build Coastguard Worker 
2981*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X16,batch_eq_16)2982*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X16, batch_eq_16) {
2983*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2984*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
2985*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
2986*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2987*4bdc9457SAndroid Build Coastguard Worker   }
2988*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X16,batch_div_16)2989*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X16, batch_div_16) {
2990*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
2991*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
2992*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
2993*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
2994*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
2995*4bdc9457SAndroid Build Coastguard Worker     }
2996*4bdc9457SAndroid Build Coastguard Worker   }
2997*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X16,batch_lt_16)2998*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X16, batch_lt_16) {
2999*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3000*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
3001*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3002*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3003*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
3004*4bdc9457SAndroid Build Coastguard Worker     }
3005*4bdc9457SAndroid Build Coastguard Worker   }
3006*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X16,batch_gt_16)3007*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X16, batch_gt_16) {
3008*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3009*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
3010*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3011*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3012*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
3013*4bdc9457SAndroid Build Coastguard Worker     }
3014*4bdc9457SAndroid Build Coastguard Worker   }
3015*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X16,inplace)3016*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X16, inplace) {
3017*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3018*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
3019*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3020*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3021*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3022*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
3023*4bdc9457SAndroid Build Coastguard Worker     }
3024*4bdc9457SAndroid Build Coastguard Worker   }
3025*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3026*4bdc9457SAndroid Build Coastguard Worker 
3027*4bdc9457SAndroid Build Coastguard Worker 
3028*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X20,batch_eq_20)3029*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X20, batch_eq_20) {
3030*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3031*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3032*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
3033*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
3034*4bdc9457SAndroid Build Coastguard Worker   }
3035*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X20,batch_div_20)3036*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X20, batch_div_20) {
3037*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3038*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
3039*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3040*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3041*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
3042*4bdc9457SAndroid Build Coastguard Worker     }
3043*4bdc9457SAndroid Build Coastguard Worker   }
3044*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X20,batch_lt_20)3045*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X20, batch_lt_20) {
3046*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3047*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
3048*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3049*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3050*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
3051*4bdc9457SAndroid Build Coastguard Worker     }
3052*4bdc9457SAndroid Build Coastguard Worker   }
3053*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X20,batch_gt_20)3054*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X20, batch_gt_20) {
3055*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3056*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
3057*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3058*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3059*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
3060*4bdc9457SAndroid Build Coastguard Worker     }
3061*4bdc9457SAndroid Build Coastguard Worker   }
3062*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X20,inplace)3063*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X20, inplace) {
3064*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3065*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
3066*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3067*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3068*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3069*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
3070*4bdc9457SAndroid Build Coastguard Worker     }
3071*4bdc9457SAndroid Build Coastguard Worker   }
3072*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3073*4bdc9457SAndroid Build Coastguard Worker 
3074*4bdc9457SAndroid Build Coastguard Worker 
3075*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X24,batch_eq_24)3076*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X24, batch_eq_24) {
3077*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3078*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3079*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
3080*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
3081*4bdc9457SAndroid Build Coastguard Worker   }
3082*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X24,batch_div_24)3083*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X24, batch_div_24) {
3084*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3085*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
3086*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3087*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3088*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
3089*4bdc9457SAndroid Build Coastguard Worker     }
3090*4bdc9457SAndroid Build Coastguard Worker   }
3091*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X24,batch_lt_24)3092*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X24, batch_lt_24) {
3093*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3094*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
3095*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3096*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3097*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
3098*4bdc9457SAndroid Build Coastguard Worker     }
3099*4bdc9457SAndroid Build Coastguard Worker   }
3100*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X24,batch_gt_24)3101*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X24, batch_gt_24) {
3102*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3103*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
3104*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3105*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3106*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
3107*4bdc9457SAndroid Build Coastguard Worker     }
3108*4bdc9457SAndroid Build Coastguard Worker   }
3109*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X24,inplace)3110*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_LUT2048_P1_NR2RECPS_X24, inplace) {
3111*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3112*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
3113*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3114*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3115*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3116*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_lut2048_p1_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_lut2048_p1_params);
3117*4bdc9457SAndroid Build Coastguard Worker     }
3118*4bdc9457SAndroid Build Coastguard Worker   }
3119*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3120*4bdc9457SAndroid Build Coastguard Worker 
3121*4bdc9457SAndroid Build Coastguard Worker 
3122*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X4,batch_eq_4)3123*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X4, batch_eq_4) {
3124*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3125*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3126*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
3127*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3128*4bdc9457SAndroid Build Coastguard Worker   }
3129*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X4,batch_div_4)3130*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X4, batch_div_4) {
3131*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3132*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
3133*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3134*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3135*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3136*4bdc9457SAndroid Build Coastguard Worker     }
3137*4bdc9457SAndroid Build Coastguard Worker   }
3138*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X4,batch_lt_4)3139*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X4, batch_lt_4) {
3140*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3141*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
3142*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3143*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3144*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3145*4bdc9457SAndroid Build Coastguard Worker     }
3146*4bdc9457SAndroid Build Coastguard Worker   }
3147*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X4,batch_gt_4)3148*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X4, batch_gt_4) {
3149*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3150*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
3151*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3152*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3153*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3154*4bdc9457SAndroid Build Coastguard Worker     }
3155*4bdc9457SAndroid Build Coastguard Worker   }
3156*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X4,inplace)3157*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X4, inplace) {
3158*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3159*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
3160*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3161*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3162*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3163*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3164*4bdc9457SAndroid Build Coastguard Worker     }
3165*4bdc9457SAndroid Build Coastguard Worker   }
3166*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
3167*4bdc9457SAndroid Build Coastguard Worker 
3168*4bdc9457SAndroid Build Coastguard Worker 
3169*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X8,batch_eq_8)3170*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X8, batch_eq_8) {
3171*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3172*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3173*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
3174*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3175*4bdc9457SAndroid Build Coastguard Worker   }
3176*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X8,batch_div_8)3177*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X8, batch_div_8) {
3178*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3179*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
3180*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3181*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3182*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3183*4bdc9457SAndroid Build Coastguard Worker     }
3184*4bdc9457SAndroid Build Coastguard Worker   }
3185*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X8,batch_lt_8)3186*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X8, batch_lt_8) {
3187*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3188*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
3189*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3190*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3191*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3192*4bdc9457SAndroid Build Coastguard Worker     }
3193*4bdc9457SAndroid Build Coastguard Worker   }
3194*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X8,batch_gt_8)3195*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X8, batch_gt_8) {
3196*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3197*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
3198*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3199*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3200*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3201*4bdc9457SAndroid Build Coastguard Worker     }
3202*4bdc9457SAndroid Build Coastguard Worker   }
3203*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X8,inplace)3204*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X8, inplace) {
3205*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3206*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
3207*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3208*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3209*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3210*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3211*4bdc9457SAndroid Build Coastguard Worker     }
3212*4bdc9457SAndroid Build Coastguard Worker   }
3213*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
3214*4bdc9457SAndroid Build Coastguard Worker 
3215*4bdc9457SAndroid Build Coastguard Worker 
3216*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X12,batch_eq_12)3217*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X12, batch_eq_12) {
3218*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3219*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3220*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
3221*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3222*4bdc9457SAndroid Build Coastguard Worker   }
3223*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X12,batch_div_12)3224*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X12, batch_div_12) {
3225*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3226*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
3227*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3228*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3229*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3230*4bdc9457SAndroid Build Coastguard Worker     }
3231*4bdc9457SAndroid Build Coastguard Worker   }
3232*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X12,batch_lt_12)3233*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X12, batch_lt_12) {
3234*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3235*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
3236*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3237*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3238*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3239*4bdc9457SAndroid Build Coastguard Worker     }
3240*4bdc9457SAndroid Build Coastguard Worker   }
3241*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X12,batch_gt_12)3242*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X12, batch_gt_12) {
3243*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3244*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
3245*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3246*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3247*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3248*4bdc9457SAndroid Build Coastguard Worker     }
3249*4bdc9457SAndroid Build Coastguard Worker   }
3250*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X12,inplace)3251*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X12, inplace) {
3252*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3253*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
3254*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3255*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3256*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3257*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3258*4bdc9457SAndroid Build Coastguard Worker     }
3259*4bdc9457SAndroid Build Coastguard Worker   }
3260*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
3261*4bdc9457SAndroid Build Coastguard Worker 
3262*4bdc9457SAndroid Build Coastguard Worker 
3263*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X16,batch_eq_16)3264*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X16, batch_eq_16) {
3265*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3266*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3267*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
3268*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3269*4bdc9457SAndroid Build Coastguard Worker   }
3270*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X16,batch_div_16)3271*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X16, batch_div_16) {
3272*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3273*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
3274*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3275*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3276*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3277*4bdc9457SAndroid Build Coastguard Worker     }
3278*4bdc9457SAndroid Build Coastguard Worker   }
3279*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X16,batch_lt_16)3280*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X16, batch_lt_16) {
3281*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3282*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
3283*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3284*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3285*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3286*4bdc9457SAndroid Build Coastguard Worker     }
3287*4bdc9457SAndroid Build Coastguard Worker   }
3288*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X16,batch_gt_16)3289*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X16, batch_gt_16) {
3290*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3291*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
3292*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3293*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3294*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3295*4bdc9457SAndroid Build Coastguard Worker     }
3296*4bdc9457SAndroid Build Coastguard Worker   }
3297*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X16,inplace)3298*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X16, inplace) {
3299*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3300*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
3301*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3302*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3303*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3304*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3305*4bdc9457SAndroid Build Coastguard Worker     }
3306*4bdc9457SAndroid Build Coastguard Worker   }
3307*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
3308*4bdc9457SAndroid Build Coastguard Worker 
3309*4bdc9457SAndroid Build Coastguard Worker 
3310*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X20,batch_eq_20)3311*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X20, batch_eq_20) {
3312*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3313*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3314*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
3315*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3316*4bdc9457SAndroid Build Coastguard Worker   }
3317*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X20,batch_div_20)3318*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X20, batch_div_20) {
3319*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3320*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
3321*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3322*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3323*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3324*4bdc9457SAndroid Build Coastguard Worker     }
3325*4bdc9457SAndroid Build Coastguard Worker   }
3326*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X20,batch_lt_20)3327*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X20, batch_lt_20) {
3328*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3329*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
3330*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3331*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3332*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3333*4bdc9457SAndroid Build Coastguard Worker     }
3334*4bdc9457SAndroid Build Coastguard Worker   }
3335*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X20,batch_gt_20)3336*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X20, batch_gt_20) {
3337*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3338*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
3339*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3340*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3341*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3342*4bdc9457SAndroid Build Coastguard Worker     }
3343*4bdc9457SAndroid Build Coastguard Worker   }
3344*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X20,inplace)3345*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X20, inplace) {
3346*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3347*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
3348*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3349*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3350*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3351*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3352*4bdc9457SAndroid Build Coastguard Worker     }
3353*4bdc9457SAndroid Build Coastguard Worker   }
3354*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
3355*4bdc9457SAndroid Build Coastguard Worker 
3356*4bdc9457SAndroid Build Coastguard Worker 
3357*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X24,batch_eq_24)3358*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X24, batch_eq_24) {
3359*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3360*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3361*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
3362*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3363*4bdc9457SAndroid Build Coastguard Worker   }
3364*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X24,batch_div_24)3365*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X24, batch_div_24) {
3366*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3367*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
3368*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3369*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3370*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3371*4bdc9457SAndroid Build Coastguard Worker     }
3372*4bdc9457SAndroid Build Coastguard Worker   }
3373*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X24,batch_lt_24)3374*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X24, batch_lt_24) {
3375*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3376*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
3377*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3378*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3379*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3380*4bdc9457SAndroid Build Coastguard Worker     }
3381*4bdc9457SAndroid Build Coastguard Worker   }
3382*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X24,batch_gt_24)3383*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X24, batch_gt_24) {
3384*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3385*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
3386*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3387*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3388*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3389*4bdc9457SAndroid Build Coastguard Worker     }
3390*4bdc9457SAndroid Build Coastguard Worker   }
3391*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X24,inplace)3392*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_DIV_X24, inplace) {
3393*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3394*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
3395*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3396*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3397*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3398*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_div_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3399*4bdc9457SAndroid Build Coastguard Worker     }
3400*4bdc9457SAndroid Build Coastguard Worker   }
3401*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM64
3402*4bdc9457SAndroid Build Coastguard Worker 
3403*4bdc9457SAndroid Build Coastguard Worker 
3404*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X4,batch_eq_4)3405*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X4, batch_eq_4) {
3406*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3407*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3408*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
3409*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3410*4bdc9457SAndroid Build Coastguard Worker   }
3411*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X4,batch_div_4)3412*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X4, batch_div_4) {
3413*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3414*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
3415*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3416*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3417*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3418*4bdc9457SAndroid Build Coastguard Worker     }
3419*4bdc9457SAndroid Build Coastguard Worker   }
3420*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X4,batch_lt_4)3421*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X4, batch_lt_4) {
3422*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3423*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
3424*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3425*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3426*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3427*4bdc9457SAndroid Build Coastguard Worker     }
3428*4bdc9457SAndroid Build Coastguard Worker   }
3429*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X4,batch_gt_4)3430*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X4, batch_gt_4) {
3431*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3432*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
3433*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3434*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3435*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3436*4bdc9457SAndroid Build Coastguard Worker     }
3437*4bdc9457SAndroid Build Coastguard Worker   }
3438*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X4,inplace)3439*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X4, inplace) {
3440*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3441*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
3442*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3443*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3444*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3445*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3446*4bdc9457SAndroid Build Coastguard Worker     }
3447*4bdc9457SAndroid Build Coastguard Worker   }
3448*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3449*4bdc9457SAndroid Build Coastguard Worker 
3450*4bdc9457SAndroid Build Coastguard Worker 
3451*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X8,batch_eq_8)3452*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X8, batch_eq_8) {
3453*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3454*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3455*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
3456*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3457*4bdc9457SAndroid Build Coastguard Worker   }
3458*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X8,batch_div_8)3459*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X8, batch_div_8) {
3460*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3461*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
3462*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3463*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3464*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3465*4bdc9457SAndroid Build Coastguard Worker     }
3466*4bdc9457SAndroid Build Coastguard Worker   }
3467*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X8,batch_lt_8)3468*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X8, batch_lt_8) {
3469*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3470*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
3471*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3472*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3473*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3474*4bdc9457SAndroid Build Coastguard Worker     }
3475*4bdc9457SAndroid Build Coastguard Worker   }
3476*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X8,batch_gt_8)3477*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X8, batch_gt_8) {
3478*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3479*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
3480*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3481*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3482*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3483*4bdc9457SAndroid Build Coastguard Worker     }
3484*4bdc9457SAndroid Build Coastguard Worker   }
3485*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X8,inplace)3486*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X8, inplace) {
3487*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3488*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
3489*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3490*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3491*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3492*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3493*4bdc9457SAndroid Build Coastguard Worker     }
3494*4bdc9457SAndroid Build Coastguard Worker   }
3495*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3496*4bdc9457SAndroid Build Coastguard Worker 
3497*4bdc9457SAndroid Build Coastguard Worker 
3498*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X12,batch_eq_12)3499*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X12, batch_eq_12) {
3500*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3501*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3502*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
3503*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3504*4bdc9457SAndroid Build Coastguard Worker   }
3505*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X12,batch_div_12)3506*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X12, batch_div_12) {
3507*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3508*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
3509*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3510*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3511*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3512*4bdc9457SAndroid Build Coastguard Worker     }
3513*4bdc9457SAndroid Build Coastguard Worker   }
3514*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X12,batch_lt_12)3515*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X12, batch_lt_12) {
3516*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3517*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
3518*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3519*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3520*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3521*4bdc9457SAndroid Build Coastguard Worker     }
3522*4bdc9457SAndroid Build Coastguard Worker   }
3523*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X12,batch_gt_12)3524*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X12, batch_gt_12) {
3525*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3526*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
3527*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3528*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3529*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3530*4bdc9457SAndroid Build Coastguard Worker     }
3531*4bdc9457SAndroid Build Coastguard Worker   }
3532*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X12,inplace)3533*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X12, inplace) {
3534*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3535*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
3536*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3537*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3538*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3539*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3540*4bdc9457SAndroid Build Coastguard Worker     }
3541*4bdc9457SAndroid Build Coastguard Worker   }
3542*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3543*4bdc9457SAndroid Build Coastguard Worker 
3544*4bdc9457SAndroid Build Coastguard Worker 
3545*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X16,batch_eq_16)3546*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X16, batch_eq_16) {
3547*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3548*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3549*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
3550*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3551*4bdc9457SAndroid Build Coastguard Worker   }
3552*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X16,batch_div_16)3553*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X16, batch_div_16) {
3554*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3555*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
3556*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3557*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3558*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3559*4bdc9457SAndroid Build Coastguard Worker     }
3560*4bdc9457SAndroid Build Coastguard Worker   }
3561*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X16,batch_lt_16)3562*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X16, batch_lt_16) {
3563*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3564*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
3565*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3566*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3567*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3568*4bdc9457SAndroid Build Coastguard Worker     }
3569*4bdc9457SAndroid Build Coastguard Worker   }
3570*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X16,batch_gt_16)3571*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X16, batch_gt_16) {
3572*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3573*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
3574*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3575*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3576*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3577*4bdc9457SAndroid Build Coastguard Worker     }
3578*4bdc9457SAndroid Build Coastguard Worker   }
3579*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X16,inplace)3580*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X16, inplace) {
3581*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3582*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
3583*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3584*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3585*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3586*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3587*4bdc9457SAndroid Build Coastguard Worker     }
3588*4bdc9457SAndroid Build Coastguard Worker   }
3589*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3590*4bdc9457SAndroid Build Coastguard Worker 
3591*4bdc9457SAndroid Build Coastguard Worker 
3592*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X20,batch_eq_20)3593*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X20, batch_eq_20) {
3594*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3595*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3596*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
3597*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3598*4bdc9457SAndroid Build Coastguard Worker   }
3599*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X20,batch_div_20)3600*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X20, batch_div_20) {
3601*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3602*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
3603*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3604*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3605*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3606*4bdc9457SAndroid Build Coastguard Worker     }
3607*4bdc9457SAndroid Build Coastguard Worker   }
3608*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X20,batch_lt_20)3609*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X20, batch_lt_20) {
3610*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3611*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
3612*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3613*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3614*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3615*4bdc9457SAndroid Build Coastguard Worker     }
3616*4bdc9457SAndroid Build Coastguard Worker   }
3617*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X20,batch_gt_20)3618*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X20, batch_gt_20) {
3619*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3620*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
3621*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3622*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3623*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3624*4bdc9457SAndroid Build Coastguard Worker     }
3625*4bdc9457SAndroid Build Coastguard Worker   }
3626*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X20,inplace)3627*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X20, inplace) {
3628*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3629*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
3630*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3631*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3632*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3633*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3634*4bdc9457SAndroid Build Coastguard Worker     }
3635*4bdc9457SAndroid Build Coastguard Worker   }
3636*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3637*4bdc9457SAndroid Build Coastguard Worker 
3638*4bdc9457SAndroid Build Coastguard Worker 
3639*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X24,batch_eq_24)3640*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X24, batch_eq_24) {
3641*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3642*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3643*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
3644*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3645*4bdc9457SAndroid Build Coastguard Worker   }
3646*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X24,batch_div_24)3647*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X24, batch_div_24) {
3648*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3649*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
3650*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3651*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3652*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3653*4bdc9457SAndroid Build Coastguard Worker     }
3654*4bdc9457SAndroid Build Coastguard Worker   }
3655*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X24,batch_lt_24)3656*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X24, batch_lt_24) {
3657*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3658*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
3659*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3660*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3661*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3662*4bdc9457SAndroid Build Coastguard Worker     }
3663*4bdc9457SAndroid Build Coastguard Worker   }
3664*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X24,batch_gt_24)3665*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X24, batch_gt_24) {
3666*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3667*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
3668*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3669*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3670*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3671*4bdc9457SAndroid Build Coastguard Worker     }
3672*4bdc9457SAndroid Build Coastguard Worker   }
3673*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X24,inplace)3674*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR1RECPS1FMA_X24, inplace) {
3675*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3676*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
3677*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3678*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3679*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3680*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr1recps1fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3681*4bdc9457SAndroid Build Coastguard Worker     }
3682*4bdc9457SAndroid Build Coastguard Worker   }
3683*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3684*4bdc9457SAndroid Build Coastguard Worker 
3685*4bdc9457SAndroid Build Coastguard Worker 
3686*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X4,batch_eq_4)3687*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X4, batch_eq_4) {
3688*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3689*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3690*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
3691*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3692*4bdc9457SAndroid Build Coastguard Worker   }
3693*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X4,batch_div_4)3694*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X4, batch_div_4) {
3695*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3696*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
3697*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3698*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3699*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3700*4bdc9457SAndroid Build Coastguard Worker     }
3701*4bdc9457SAndroid Build Coastguard Worker   }
3702*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X4,batch_lt_4)3703*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X4, batch_lt_4) {
3704*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3705*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
3706*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3707*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3708*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3709*4bdc9457SAndroid Build Coastguard Worker     }
3710*4bdc9457SAndroid Build Coastguard Worker   }
3711*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X4,batch_gt_4)3712*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X4, batch_gt_4) {
3713*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3714*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
3715*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3716*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3717*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3718*4bdc9457SAndroid Build Coastguard Worker     }
3719*4bdc9457SAndroid Build Coastguard Worker   }
3720*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X4,inplace)3721*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X4, inplace) {
3722*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3723*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
3724*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3725*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3726*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3727*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3728*4bdc9457SAndroid Build Coastguard Worker     }
3729*4bdc9457SAndroid Build Coastguard Worker   }
3730*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3731*4bdc9457SAndroid Build Coastguard Worker 
3732*4bdc9457SAndroid Build Coastguard Worker 
3733*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X8,batch_eq_8)3734*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X8, batch_eq_8) {
3735*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3736*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3737*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
3738*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3739*4bdc9457SAndroid Build Coastguard Worker   }
3740*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X8,batch_div_8)3741*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X8, batch_div_8) {
3742*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3743*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
3744*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3745*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3746*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3747*4bdc9457SAndroid Build Coastguard Worker     }
3748*4bdc9457SAndroid Build Coastguard Worker   }
3749*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X8,batch_lt_8)3750*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X8, batch_lt_8) {
3751*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3752*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
3753*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3754*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3755*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3756*4bdc9457SAndroid Build Coastguard Worker     }
3757*4bdc9457SAndroid Build Coastguard Worker   }
3758*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X8,batch_gt_8)3759*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X8, batch_gt_8) {
3760*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3761*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
3762*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3763*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3764*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3765*4bdc9457SAndroid Build Coastguard Worker     }
3766*4bdc9457SAndroid Build Coastguard Worker   }
3767*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X8,inplace)3768*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X8, inplace) {
3769*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3770*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
3771*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3772*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3773*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3774*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3775*4bdc9457SAndroid Build Coastguard Worker     }
3776*4bdc9457SAndroid Build Coastguard Worker   }
3777*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3778*4bdc9457SAndroid Build Coastguard Worker 
3779*4bdc9457SAndroid Build Coastguard Worker 
3780*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X12,batch_eq_12)3781*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X12, batch_eq_12) {
3782*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3783*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3784*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
3785*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3786*4bdc9457SAndroid Build Coastguard Worker   }
3787*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X12,batch_div_12)3788*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X12, batch_div_12) {
3789*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3790*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
3791*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3792*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3793*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3794*4bdc9457SAndroid Build Coastguard Worker     }
3795*4bdc9457SAndroid Build Coastguard Worker   }
3796*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X12,batch_lt_12)3797*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X12, batch_lt_12) {
3798*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3799*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
3800*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3801*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3802*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3803*4bdc9457SAndroid Build Coastguard Worker     }
3804*4bdc9457SAndroid Build Coastguard Worker   }
3805*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X12,batch_gt_12)3806*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X12, batch_gt_12) {
3807*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3808*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
3809*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3810*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3811*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3812*4bdc9457SAndroid Build Coastguard Worker     }
3813*4bdc9457SAndroid Build Coastguard Worker   }
3814*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X12,inplace)3815*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X12, inplace) {
3816*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3817*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
3818*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3819*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3820*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3821*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3822*4bdc9457SAndroid Build Coastguard Worker     }
3823*4bdc9457SAndroid Build Coastguard Worker   }
3824*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3825*4bdc9457SAndroid Build Coastguard Worker 
3826*4bdc9457SAndroid Build Coastguard Worker 
3827*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X16,batch_eq_16)3828*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X16, batch_eq_16) {
3829*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3830*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3831*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
3832*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3833*4bdc9457SAndroid Build Coastguard Worker   }
3834*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X16,batch_div_16)3835*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X16, batch_div_16) {
3836*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3837*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
3838*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3839*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3840*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3841*4bdc9457SAndroid Build Coastguard Worker     }
3842*4bdc9457SAndroid Build Coastguard Worker   }
3843*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X16,batch_lt_16)3844*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X16, batch_lt_16) {
3845*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3846*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
3847*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3848*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3849*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3850*4bdc9457SAndroid Build Coastguard Worker     }
3851*4bdc9457SAndroid Build Coastguard Worker   }
3852*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X16,batch_gt_16)3853*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X16, batch_gt_16) {
3854*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3855*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
3856*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3857*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3858*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3859*4bdc9457SAndroid Build Coastguard Worker     }
3860*4bdc9457SAndroid Build Coastguard Worker   }
3861*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X16,inplace)3862*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X16, inplace) {
3863*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3864*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
3865*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3866*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3867*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3868*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3869*4bdc9457SAndroid Build Coastguard Worker     }
3870*4bdc9457SAndroid Build Coastguard Worker   }
3871*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3872*4bdc9457SAndroid Build Coastguard Worker 
3873*4bdc9457SAndroid Build Coastguard Worker 
3874*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X20,batch_eq_20)3875*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X20, batch_eq_20) {
3876*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3877*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3878*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
3879*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3880*4bdc9457SAndroid Build Coastguard Worker   }
3881*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X20,batch_div_20)3882*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X20, batch_div_20) {
3883*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3884*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
3885*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3886*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3887*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3888*4bdc9457SAndroid Build Coastguard Worker     }
3889*4bdc9457SAndroid Build Coastguard Worker   }
3890*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X20,batch_lt_20)3891*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X20, batch_lt_20) {
3892*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3893*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
3894*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3895*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3896*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3897*4bdc9457SAndroid Build Coastguard Worker     }
3898*4bdc9457SAndroid Build Coastguard Worker   }
3899*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X20,batch_gt_20)3900*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X20, batch_gt_20) {
3901*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3902*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
3903*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3904*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3905*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3906*4bdc9457SAndroid Build Coastguard Worker     }
3907*4bdc9457SAndroid Build Coastguard Worker   }
3908*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X20,inplace)3909*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X20, inplace) {
3910*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3911*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
3912*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3913*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3914*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3915*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3916*4bdc9457SAndroid Build Coastguard Worker     }
3917*4bdc9457SAndroid Build Coastguard Worker   }
3918*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3919*4bdc9457SAndroid Build Coastguard Worker 
3920*4bdc9457SAndroid Build Coastguard Worker 
3921*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X24,batch_eq_24)3922*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X24, batch_eq_24) {
3923*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3924*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3925*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
3926*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3927*4bdc9457SAndroid Build Coastguard Worker   }
3928*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X24,batch_div_24)3929*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X24, batch_div_24) {
3930*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3931*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
3932*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3933*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3934*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3935*4bdc9457SAndroid Build Coastguard Worker     }
3936*4bdc9457SAndroid Build Coastguard Worker   }
3937*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X24,batch_lt_24)3938*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X24, batch_lt_24) {
3939*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3940*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
3941*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3942*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3943*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3944*4bdc9457SAndroid Build Coastguard Worker     }
3945*4bdc9457SAndroid Build Coastguard Worker   }
3946*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X24,batch_gt_24)3947*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X24, batch_gt_24) {
3948*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3949*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
3950*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3951*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3952*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3953*4bdc9457SAndroid Build Coastguard Worker     }
3954*4bdc9457SAndroid Build Coastguard Worker   }
3955*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X24,inplace)3956*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2FMA_X24, inplace) {
3957*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3958*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
3959*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3960*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3961*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
3962*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2fma_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3963*4bdc9457SAndroid Build Coastguard Worker     }
3964*4bdc9457SAndroid Build Coastguard Worker   }
3965*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
3966*4bdc9457SAndroid Build Coastguard Worker 
3967*4bdc9457SAndroid Build Coastguard Worker 
3968*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X4,batch_eq_4)3969*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X4, batch_eq_4) {
3970*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3971*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
3972*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
3973*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3974*4bdc9457SAndroid Build Coastguard Worker   }
3975*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X4,batch_div_4)3976*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X4, batch_div_4) {
3977*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3978*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
3979*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3980*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3981*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3982*4bdc9457SAndroid Build Coastguard Worker     }
3983*4bdc9457SAndroid Build Coastguard Worker   }
3984*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X4,batch_lt_4)3985*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X4, batch_lt_4) {
3986*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3987*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
3988*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3989*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3990*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
3991*4bdc9457SAndroid Build Coastguard Worker     }
3992*4bdc9457SAndroid Build Coastguard Worker   }
3993*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X4,batch_gt_4)3994*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X4, batch_gt_4) {
3995*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
3996*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
3997*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
3998*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
3999*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4000*4bdc9457SAndroid Build Coastguard Worker     }
4001*4bdc9457SAndroid Build Coastguard Worker   }
4002*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X4,inplace)4003*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X4, inplace) {
4004*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4005*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
4006*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4007*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4008*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4009*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x4, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4010*4bdc9457SAndroid Build Coastguard Worker     }
4011*4bdc9457SAndroid Build Coastguard Worker   }
4012*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
4013*4bdc9457SAndroid Build Coastguard Worker 
4014*4bdc9457SAndroid Build Coastguard Worker 
4015*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X8,batch_eq_8)4016*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X8, batch_eq_8) {
4017*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4018*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4019*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
4020*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4021*4bdc9457SAndroid Build Coastguard Worker   }
4022*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X8,batch_div_8)4023*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X8, batch_div_8) {
4024*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4025*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
4026*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4027*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4028*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4029*4bdc9457SAndroid Build Coastguard Worker     }
4030*4bdc9457SAndroid Build Coastguard Worker   }
4031*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X8,batch_lt_8)4032*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X8, batch_lt_8) {
4033*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4034*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
4035*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4036*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4037*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4038*4bdc9457SAndroid Build Coastguard Worker     }
4039*4bdc9457SAndroid Build Coastguard Worker   }
4040*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X8,batch_gt_8)4041*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X8, batch_gt_8) {
4042*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4043*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
4044*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4045*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4046*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4047*4bdc9457SAndroid Build Coastguard Worker     }
4048*4bdc9457SAndroid Build Coastguard Worker   }
4049*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X8,inplace)4050*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X8, inplace) {
4051*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4052*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
4053*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4054*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4055*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4056*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x8, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4057*4bdc9457SAndroid Build Coastguard Worker     }
4058*4bdc9457SAndroid Build Coastguard Worker   }
4059*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
4060*4bdc9457SAndroid Build Coastguard Worker 
4061*4bdc9457SAndroid Build Coastguard Worker 
4062*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X12,batch_eq_12)4063*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X12, batch_eq_12) {
4064*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4065*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4066*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
4067*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4068*4bdc9457SAndroid Build Coastguard Worker   }
4069*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X12,batch_div_12)4070*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X12, batch_div_12) {
4071*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4072*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
4073*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4074*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4075*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4076*4bdc9457SAndroid Build Coastguard Worker     }
4077*4bdc9457SAndroid Build Coastguard Worker   }
4078*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X12,batch_lt_12)4079*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X12, batch_lt_12) {
4080*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4081*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
4082*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4083*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4084*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4085*4bdc9457SAndroid Build Coastguard Worker     }
4086*4bdc9457SAndroid Build Coastguard Worker   }
4087*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X12,batch_gt_12)4088*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X12, batch_gt_12) {
4089*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4090*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
4091*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4092*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4093*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4094*4bdc9457SAndroid Build Coastguard Worker     }
4095*4bdc9457SAndroid Build Coastguard Worker   }
4096*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X12,inplace)4097*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X12, inplace) {
4098*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4099*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
4100*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4101*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4102*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4103*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x12, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4104*4bdc9457SAndroid Build Coastguard Worker     }
4105*4bdc9457SAndroid Build Coastguard Worker   }
4106*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
4107*4bdc9457SAndroid Build Coastguard Worker 
4108*4bdc9457SAndroid Build Coastguard Worker 
4109*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X16,batch_eq_16)4110*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X16, batch_eq_16) {
4111*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4112*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4113*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
4114*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4115*4bdc9457SAndroid Build Coastguard Worker   }
4116*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X16,batch_div_16)4117*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X16, batch_div_16) {
4118*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4119*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
4120*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4121*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4122*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4123*4bdc9457SAndroid Build Coastguard Worker     }
4124*4bdc9457SAndroid Build Coastguard Worker   }
4125*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X16,batch_lt_16)4126*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X16, batch_lt_16) {
4127*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4128*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
4129*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4130*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4131*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4132*4bdc9457SAndroid Build Coastguard Worker     }
4133*4bdc9457SAndroid Build Coastguard Worker   }
4134*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X16,batch_gt_16)4135*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X16, batch_gt_16) {
4136*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4137*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
4138*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4139*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4140*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4141*4bdc9457SAndroid Build Coastguard Worker     }
4142*4bdc9457SAndroid Build Coastguard Worker   }
4143*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X16,inplace)4144*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X16, inplace) {
4145*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4146*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
4147*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4148*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4149*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4150*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x16, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4151*4bdc9457SAndroid Build Coastguard Worker     }
4152*4bdc9457SAndroid Build Coastguard Worker   }
4153*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
4154*4bdc9457SAndroid Build Coastguard Worker 
4155*4bdc9457SAndroid Build Coastguard Worker 
4156*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X20,batch_eq_20)4157*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X20, batch_eq_20) {
4158*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4159*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4160*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
4161*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4162*4bdc9457SAndroid Build Coastguard Worker   }
4163*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X20,batch_div_20)4164*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X20, batch_div_20) {
4165*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4166*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
4167*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4168*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4169*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4170*4bdc9457SAndroid Build Coastguard Worker     }
4171*4bdc9457SAndroid Build Coastguard Worker   }
4172*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X20,batch_lt_20)4173*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X20, batch_lt_20) {
4174*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4175*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
4176*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4177*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4178*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4179*4bdc9457SAndroid Build Coastguard Worker     }
4180*4bdc9457SAndroid Build Coastguard Worker   }
4181*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X20,batch_gt_20)4182*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X20, batch_gt_20) {
4183*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4184*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
4185*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4186*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4187*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4188*4bdc9457SAndroid Build Coastguard Worker     }
4189*4bdc9457SAndroid Build Coastguard Worker   }
4190*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X20,inplace)4191*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X20, inplace) {
4192*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4193*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
4194*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4195*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4196*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4197*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x20, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4198*4bdc9457SAndroid Build Coastguard Worker     }
4199*4bdc9457SAndroid Build Coastguard Worker   }
4200*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
4201*4bdc9457SAndroid Build Coastguard Worker 
4202*4bdc9457SAndroid Build Coastguard Worker 
4203*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_ARM || XNN_ARCH_ARM64
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X24,batch_eq_24)4204*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X24, batch_eq_24) {
4205*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4206*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4207*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
4208*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4209*4bdc9457SAndroid Build Coastguard Worker   }
4210*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X24,batch_div_24)4211*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X24, batch_div_24) {
4212*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4213*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
4214*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4215*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4216*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4217*4bdc9457SAndroid Build Coastguard Worker     }
4218*4bdc9457SAndroid Build Coastguard Worker   }
4219*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X24,batch_lt_24)4220*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X24, batch_lt_24) {
4221*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4222*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
4223*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4224*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4225*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4226*4bdc9457SAndroid Build Coastguard Worker     }
4227*4bdc9457SAndroid Build Coastguard Worker   }
4228*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X24,batch_gt_24)4229*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X24, batch_gt_24) {
4230*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4231*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
4232*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4233*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4234*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4235*4bdc9457SAndroid Build Coastguard Worker     }
4236*4bdc9457SAndroid Build Coastguard Worker   }
4237*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X24,inplace)4238*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__NEONFMA_RR1_P5_NR2RECPS_X24, inplace) {
4239*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_ARM_NEON_FMA;
4240*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
4241*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4242*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4243*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4244*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__neonfma_rr1_p5_nr2recps_x24, xnn_init_f32_sigmoid_neonfma_rr1_p5_params);
4245*4bdc9457SAndroid Build Coastguard Worker     }
4246*4bdc9457SAndroid Build Coastguard Worker   }
4247*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_ARM || XNN_ARCH_ARM64
4248*4bdc9457SAndroid Build Coastguard Worker 
4249*4bdc9457SAndroid Build Coastguard Worker 
4250*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X4,batch_eq_4)4251*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X4, batch_eq_4) {
4252*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4253*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4254*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
4255*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4256*4bdc9457SAndroid Build Coastguard Worker   }
4257*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X4,batch_div_4)4258*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X4, batch_div_4) {
4259*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4260*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
4261*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4262*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4263*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4264*4bdc9457SAndroid Build Coastguard Worker     }
4265*4bdc9457SAndroid Build Coastguard Worker   }
4266*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X4,batch_lt_4)4267*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X4, batch_lt_4) {
4268*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4269*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
4270*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4271*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4272*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4273*4bdc9457SAndroid Build Coastguard Worker     }
4274*4bdc9457SAndroid Build Coastguard Worker   }
4275*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X4,batch_gt_4)4276*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X4, batch_gt_4) {
4277*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4278*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
4279*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4280*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4281*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4282*4bdc9457SAndroid Build Coastguard Worker     }
4283*4bdc9457SAndroid Build Coastguard Worker   }
4284*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X4,inplace)4285*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X4, inplace) {
4286*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4287*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
4288*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4289*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4290*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4291*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4292*4bdc9457SAndroid Build Coastguard Worker     }
4293*4bdc9457SAndroid Build Coastguard Worker   }
4294*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4295*4bdc9457SAndroid Build Coastguard Worker 
4296*4bdc9457SAndroid Build Coastguard Worker 
4297*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X8,batch_eq_8)4298*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X8, batch_eq_8) {
4299*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4300*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4301*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
4302*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4303*4bdc9457SAndroid Build Coastguard Worker   }
4304*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X8,batch_div_8)4305*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X8, batch_div_8) {
4306*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4307*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
4308*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4309*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4310*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4311*4bdc9457SAndroid Build Coastguard Worker     }
4312*4bdc9457SAndroid Build Coastguard Worker   }
4313*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X8,batch_lt_8)4314*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X8, batch_lt_8) {
4315*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4316*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
4317*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4318*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4319*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4320*4bdc9457SAndroid Build Coastguard Worker     }
4321*4bdc9457SAndroid Build Coastguard Worker   }
4322*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X8,batch_gt_8)4323*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X8, batch_gt_8) {
4324*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4325*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
4326*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4327*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4328*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4329*4bdc9457SAndroid Build Coastguard Worker     }
4330*4bdc9457SAndroid Build Coastguard Worker   }
4331*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X8,inplace)4332*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X8, inplace) {
4333*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4334*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
4335*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4336*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4337*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4338*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4339*4bdc9457SAndroid Build Coastguard Worker     }
4340*4bdc9457SAndroid Build Coastguard Worker   }
4341*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4342*4bdc9457SAndroid Build Coastguard Worker 
4343*4bdc9457SAndroid Build Coastguard Worker 
4344*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X12,batch_eq_12)4345*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X12, batch_eq_12) {
4346*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4347*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4348*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
4349*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4350*4bdc9457SAndroid Build Coastguard Worker   }
4351*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X12,batch_div_12)4352*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X12, batch_div_12) {
4353*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4354*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
4355*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4356*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4357*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4358*4bdc9457SAndroid Build Coastguard Worker     }
4359*4bdc9457SAndroid Build Coastguard Worker   }
4360*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X12,batch_lt_12)4361*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X12, batch_lt_12) {
4362*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4363*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
4364*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4365*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4366*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4367*4bdc9457SAndroid Build Coastguard Worker     }
4368*4bdc9457SAndroid Build Coastguard Worker   }
4369*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X12,batch_gt_12)4370*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X12, batch_gt_12) {
4371*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4372*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
4373*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4374*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4375*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4376*4bdc9457SAndroid Build Coastguard Worker     }
4377*4bdc9457SAndroid Build Coastguard Worker   }
4378*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X12,inplace)4379*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X12, inplace) {
4380*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4381*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
4382*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4383*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4384*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4385*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4386*4bdc9457SAndroid Build Coastguard Worker     }
4387*4bdc9457SAndroid Build Coastguard Worker   }
4388*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4389*4bdc9457SAndroid Build Coastguard Worker 
4390*4bdc9457SAndroid Build Coastguard Worker 
4391*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X16,batch_eq_16)4392*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X16, batch_eq_16) {
4393*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4394*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4395*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
4396*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4397*4bdc9457SAndroid Build Coastguard Worker   }
4398*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X16,batch_div_16)4399*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X16, batch_div_16) {
4400*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4401*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
4402*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4403*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4404*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4405*4bdc9457SAndroid Build Coastguard Worker     }
4406*4bdc9457SAndroid Build Coastguard Worker   }
4407*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X16,batch_lt_16)4408*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X16, batch_lt_16) {
4409*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4410*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
4411*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4412*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4413*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4414*4bdc9457SAndroid Build Coastguard Worker     }
4415*4bdc9457SAndroid Build Coastguard Worker   }
4416*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X16,batch_gt_16)4417*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X16, batch_gt_16) {
4418*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4419*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
4420*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4421*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4422*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4423*4bdc9457SAndroid Build Coastguard Worker     }
4424*4bdc9457SAndroid Build Coastguard Worker   }
4425*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X16,inplace)4426*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X16, inplace) {
4427*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4428*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
4429*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4430*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4431*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4432*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4433*4bdc9457SAndroid Build Coastguard Worker     }
4434*4bdc9457SAndroid Build Coastguard Worker   }
4435*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4436*4bdc9457SAndroid Build Coastguard Worker 
4437*4bdc9457SAndroid Build Coastguard Worker 
4438*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X20,batch_eq_20)4439*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X20, batch_eq_20) {
4440*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4441*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4442*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
4443*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4444*4bdc9457SAndroid Build Coastguard Worker   }
4445*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X20,batch_div_20)4446*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X20, batch_div_20) {
4447*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4448*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
4449*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4450*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4451*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4452*4bdc9457SAndroid Build Coastguard Worker     }
4453*4bdc9457SAndroid Build Coastguard Worker   }
4454*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X20,batch_lt_20)4455*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X20, batch_lt_20) {
4456*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4457*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
4458*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4459*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4460*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4461*4bdc9457SAndroid Build Coastguard Worker     }
4462*4bdc9457SAndroid Build Coastguard Worker   }
4463*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X20,batch_gt_20)4464*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X20, batch_gt_20) {
4465*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4466*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
4467*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4468*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4469*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4470*4bdc9457SAndroid Build Coastguard Worker     }
4471*4bdc9457SAndroid Build Coastguard Worker   }
4472*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X20,inplace)4473*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X20, inplace) {
4474*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4475*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
4476*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4477*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4478*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4479*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4480*4bdc9457SAndroid Build Coastguard Worker     }
4481*4bdc9457SAndroid Build Coastguard Worker   }
4482*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4483*4bdc9457SAndroid Build Coastguard Worker 
4484*4bdc9457SAndroid Build Coastguard Worker 
4485*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X24,batch_eq_24)4486*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X24, batch_eq_24) {
4487*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4488*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4489*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
4490*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4491*4bdc9457SAndroid Build Coastguard Worker   }
4492*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X24,batch_div_24)4493*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X24, batch_div_24) {
4494*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4495*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
4496*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4497*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4498*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4499*4bdc9457SAndroid Build Coastguard Worker     }
4500*4bdc9457SAndroid Build Coastguard Worker   }
4501*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X24,batch_lt_24)4502*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X24, batch_lt_24) {
4503*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4504*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
4505*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4506*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4507*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4508*4bdc9457SAndroid Build Coastguard Worker     }
4509*4bdc9457SAndroid Build Coastguard Worker   }
4510*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X24,batch_gt_24)4511*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X24, batch_gt_24) {
4512*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4513*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
4514*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4515*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4516*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4517*4bdc9457SAndroid Build Coastguard Worker     }
4518*4bdc9457SAndroid Build Coastguard Worker   }
4519*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X24,inplace)4520*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_LUT64_P2_DIV_X24, inplace) {
4521*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4522*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
4523*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4524*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4525*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4526*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4527*4bdc9457SAndroid Build Coastguard Worker     }
4528*4bdc9457SAndroid Build Coastguard Worker   }
4529*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4530*4bdc9457SAndroid Build Coastguard Worker 
4531*4bdc9457SAndroid Build Coastguard Worker 
4532*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X4,batch_eq_4)4533*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X4, batch_eq_4) {
4534*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4535*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4536*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
4537*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x4, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4538*4bdc9457SAndroid Build Coastguard Worker   }
4539*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X4,batch_div_4)4540*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X4, batch_div_4) {
4541*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4542*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
4543*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4544*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4545*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x4, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4546*4bdc9457SAndroid Build Coastguard Worker     }
4547*4bdc9457SAndroid Build Coastguard Worker   }
4548*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X4,batch_lt_4)4549*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X4, batch_lt_4) {
4550*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4551*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
4552*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4553*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4554*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x4, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4555*4bdc9457SAndroid Build Coastguard Worker     }
4556*4bdc9457SAndroid Build Coastguard Worker   }
4557*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X4,batch_gt_4)4558*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X4, batch_gt_4) {
4559*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4560*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
4561*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4562*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4563*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x4, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4564*4bdc9457SAndroid Build Coastguard Worker     }
4565*4bdc9457SAndroid Build Coastguard Worker   }
4566*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X4,inplace)4567*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X4, inplace) {
4568*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4569*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
4570*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4571*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4572*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4573*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x4, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4574*4bdc9457SAndroid Build Coastguard Worker     }
4575*4bdc9457SAndroid Build Coastguard Worker   }
4576*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4577*4bdc9457SAndroid Build Coastguard Worker 
4578*4bdc9457SAndroid Build Coastguard Worker 
4579*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X8,batch_eq_8)4580*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X8, batch_eq_8) {
4581*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4582*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4583*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
4584*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x8, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4585*4bdc9457SAndroid Build Coastguard Worker   }
4586*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X8,batch_div_8)4587*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X8, batch_div_8) {
4588*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4589*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
4590*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4591*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4592*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x8, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4593*4bdc9457SAndroid Build Coastguard Worker     }
4594*4bdc9457SAndroid Build Coastguard Worker   }
4595*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X8,batch_lt_8)4596*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X8, batch_lt_8) {
4597*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4598*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
4599*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4600*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4601*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x8, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4602*4bdc9457SAndroid Build Coastguard Worker     }
4603*4bdc9457SAndroid Build Coastguard Worker   }
4604*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X8,batch_gt_8)4605*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X8, batch_gt_8) {
4606*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4607*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
4608*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4609*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4610*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x8, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4611*4bdc9457SAndroid Build Coastguard Worker     }
4612*4bdc9457SAndroid Build Coastguard Worker   }
4613*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X8,inplace)4614*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X8, inplace) {
4615*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4616*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
4617*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4618*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4619*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4620*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x8, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4621*4bdc9457SAndroid Build Coastguard Worker     }
4622*4bdc9457SAndroid Build Coastguard Worker   }
4623*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4624*4bdc9457SAndroid Build Coastguard Worker 
4625*4bdc9457SAndroid Build Coastguard Worker 
4626*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X12,batch_eq_12)4627*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X12, batch_eq_12) {
4628*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4629*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4630*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
4631*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x12, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4632*4bdc9457SAndroid Build Coastguard Worker   }
4633*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X12,batch_div_12)4634*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X12, batch_div_12) {
4635*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4636*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
4637*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4638*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4639*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x12, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4640*4bdc9457SAndroid Build Coastguard Worker     }
4641*4bdc9457SAndroid Build Coastguard Worker   }
4642*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X12,batch_lt_12)4643*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X12, batch_lt_12) {
4644*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4645*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
4646*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4647*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4648*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x12, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4649*4bdc9457SAndroid Build Coastguard Worker     }
4650*4bdc9457SAndroid Build Coastguard Worker   }
4651*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X12,batch_gt_12)4652*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X12, batch_gt_12) {
4653*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4654*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
4655*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4656*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4657*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x12, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4658*4bdc9457SAndroid Build Coastguard Worker     }
4659*4bdc9457SAndroid Build Coastguard Worker   }
4660*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X12,inplace)4661*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X12, inplace) {
4662*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4663*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
4664*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4665*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4666*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4667*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x12, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4668*4bdc9457SAndroid Build Coastguard Worker     }
4669*4bdc9457SAndroid Build Coastguard Worker   }
4670*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4671*4bdc9457SAndroid Build Coastguard Worker 
4672*4bdc9457SAndroid Build Coastguard Worker 
4673*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X16,batch_eq_16)4674*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X16, batch_eq_16) {
4675*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4676*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4677*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
4678*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x16, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4679*4bdc9457SAndroid Build Coastguard Worker   }
4680*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X16,batch_div_16)4681*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X16, batch_div_16) {
4682*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4683*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
4684*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4685*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4686*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x16, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4687*4bdc9457SAndroid Build Coastguard Worker     }
4688*4bdc9457SAndroid Build Coastguard Worker   }
4689*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X16,batch_lt_16)4690*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X16, batch_lt_16) {
4691*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4692*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
4693*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4694*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4695*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x16, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4696*4bdc9457SAndroid Build Coastguard Worker     }
4697*4bdc9457SAndroid Build Coastguard Worker   }
4698*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X16,batch_gt_16)4699*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X16, batch_gt_16) {
4700*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4701*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
4702*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4703*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4704*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x16, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4705*4bdc9457SAndroid Build Coastguard Worker     }
4706*4bdc9457SAndroid Build Coastguard Worker   }
4707*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X16,inplace)4708*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X16, inplace) {
4709*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4710*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
4711*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4712*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4713*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4714*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x16, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4715*4bdc9457SAndroid Build Coastguard Worker     }
4716*4bdc9457SAndroid Build Coastguard Worker   }
4717*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4718*4bdc9457SAndroid Build Coastguard Worker 
4719*4bdc9457SAndroid Build Coastguard Worker 
4720*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X20,batch_eq_20)4721*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X20, batch_eq_20) {
4722*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4723*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4724*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
4725*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x20, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4726*4bdc9457SAndroid Build Coastguard Worker   }
4727*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X20,batch_div_20)4728*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X20, batch_div_20) {
4729*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4730*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
4731*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4732*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4733*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x20, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4734*4bdc9457SAndroid Build Coastguard Worker     }
4735*4bdc9457SAndroid Build Coastguard Worker   }
4736*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X20,batch_lt_20)4737*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X20, batch_lt_20) {
4738*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4739*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
4740*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4741*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4742*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x20, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4743*4bdc9457SAndroid Build Coastguard Worker     }
4744*4bdc9457SAndroid Build Coastguard Worker   }
4745*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X20,batch_gt_20)4746*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X20, batch_gt_20) {
4747*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4748*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
4749*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4750*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4751*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x20, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4752*4bdc9457SAndroid Build Coastguard Worker     }
4753*4bdc9457SAndroid Build Coastguard Worker   }
4754*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X20,inplace)4755*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X20, inplace) {
4756*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4757*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
4758*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4759*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4760*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4761*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x20, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4762*4bdc9457SAndroid Build Coastguard Worker     }
4763*4bdc9457SAndroid Build Coastguard Worker   }
4764*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4765*4bdc9457SAndroid Build Coastguard Worker 
4766*4bdc9457SAndroid Build Coastguard Worker 
4767*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X24,batch_eq_24)4768*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X24, batch_eq_24) {
4769*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4770*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4771*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
4772*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x24, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4773*4bdc9457SAndroid Build Coastguard Worker   }
4774*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X24,batch_div_24)4775*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X24, batch_div_24) {
4776*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4777*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
4778*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4779*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4780*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x24, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4781*4bdc9457SAndroid Build Coastguard Worker     }
4782*4bdc9457SAndroid Build Coastguard Worker   }
4783*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X24,batch_lt_24)4784*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X24, batch_lt_24) {
4785*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4786*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
4787*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4788*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4789*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x24, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4790*4bdc9457SAndroid Build Coastguard Worker     }
4791*4bdc9457SAndroid Build Coastguard Worker   }
4792*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X24,batch_gt_24)4793*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X24, batch_gt_24) {
4794*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4795*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
4796*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4797*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4798*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x24, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4799*4bdc9457SAndroid Build Coastguard Worker     }
4800*4bdc9457SAndroid Build Coastguard Worker   }
4801*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X24,inplace)4802*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE2_RR2_P5_DIV_X24, inplace) {
4803*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE2;
4804*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
4805*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4806*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4807*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4808*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse2_rr2_p5_div_x24, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
4809*4bdc9457SAndroid Build Coastguard Worker     }
4810*4bdc9457SAndroid Build Coastguard Worker   }
4811*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4812*4bdc9457SAndroid Build Coastguard Worker 
4813*4bdc9457SAndroid Build Coastguard Worker 
4814*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X4,batch_eq_4)4815*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X4, batch_eq_4) {
4816*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4817*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4818*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
4819*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4820*4bdc9457SAndroid Build Coastguard Worker   }
4821*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X4,batch_div_4)4822*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X4, batch_div_4) {
4823*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4824*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
4825*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4826*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4827*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4828*4bdc9457SAndroid Build Coastguard Worker     }
4829*4bdc9457SAndroid Build Coastguard Worker   }
4830*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X4,batch_lt_4)4831*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X4, batch_lt_4) {
4832*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4833*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
4834*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4835*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4836*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4837*4bdc9457SAndroid Build Coastguard Worker     }
4838*4bdc9457SAndroid Build Coastguard Worker   }
4839*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X4,batch_gt_4)4840*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X4, batch_gt_4) {
4841*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4842*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
4843*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4844*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4845*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4846*4bdc9457SAndroid Build Coastguard Worker     }
4847*4bdc9457SAndroid Build Coastguard Worker   }
4848*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X4,inplace)4849*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X4, inplace) {
4850*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4851*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
4852*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4853*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4854*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4855*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4856*4bdc9457SAndroid Build Coastguard Worker     }
4857*4bdc9457SAndroid Build Coastguard Worker   }
4858*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4859*4bdc9457SAndroid Build Coastguard Worker 
4860*4bdc9457SAndroid Build Coastguard Worker 
4861*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X8,batch_eq_8)4862*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X8, batch_eq_8) {
4863*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4864*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4865*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
4866*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4867*4bdc9457SAndroid Build Coastguard Worker   }
4868*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X8,batch_div_8)4869*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X8, batch_div_8) {
4870*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4871*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
4872*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4873*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4874*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4875*4bdc9457SAndroid Build Coastguard Worker     }
4876*4bdc9457SAndroid Build Coastguard Worker   }
4877*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X8,batch_lt_8)4878*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X8, batch_lt_8) {
4879*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4880*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
4881*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4882*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4883*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4884*4bdc9457SAndroid Build Coastguard Worker     }
4885*4bdc9457SAndroid Build Coastguard Worker   }
4886*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X8,batch_gt_8)4887*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X8, batch_gt_8) {
4888*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4889*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
4890*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4891*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4892*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4893*4bdc9457SAndroid Build Coastguard Worker     }
4894*4bdc9457SAndroid Build Coastguard Worker   }
4895*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X8,inplace)4896*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X8, inplace) {
4897*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4898*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
4899*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4900*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4901*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4902*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4903*4bdc9457SAndroid Build Coastguard Worker     }
4904*4bdc9457SAndroid Build Coastguard Worker   }
4905*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4906*4bdc9457SAndroid Build Coastguard Worker 
4907*4bdc9457SAndroid Build Coastguard Worker 
4908*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X12,batch_eq_12)4909*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X12, batch_eq_12) {
4910*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4911*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4912*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
4913*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4914*4bdc9457SAndroid Build Coastguard Worker   }
4915*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X12,batch_div_12)4916*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X12, batch_div_12) {
4917*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4918*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
4919*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4920*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4921*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4922*4bdc9457SAndroid Build Coastguard Worker     }
4923*4bdc9457SAndroid Build Coastguard Worker   }
4924*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X12,batch_lt_12)4925*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X12, batch_lt_12) {
4926*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4927*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
4928*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4929*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4930*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4931*4bdc9457SAndroid Build Coastguard Worker     }
4932*4bdc9457SAndroid Build Coastguard Worker   }
4933*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X12,batch_gt_12)4934*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X12, batch_gt_12) {
4935*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4936*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
4937*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4938*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4939*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4940*4bdc9457SAndroid Build Coastguard Worker     }
4941*4bdc9457SAndroid Build Coastguard Worker   }
4942*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X12,inplace)4943*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X12, inplace) {
4944*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4945*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
4946*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4947*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4948*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4949*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4950*4bdc9457SAndroid Build Coastguard Worker     }
4951*4bdc9457SAndroid Build Coastguard Worker   }
4952*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
4953*4bdc9457SAndroid Build Coastguard Worker 
4954*4bdc9457SAndroid Build Coastguard Worker 
4955*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X16,batch_eq_16)4956*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X16, batch_eq_16) {
4957*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4958*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
4959*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
4960*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4961*4bdc9457SAndroid Build Coastguard Worker   }
4962*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X16,batch_div_16)4963*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X16, batch_div_16) {
4964*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4965*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
4966*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4967*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4968*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4969*4bdc9457SAndroid Build Coastguard Worker     }
4970*4bdc9457SAndroid Build Coastguard Worker   }
4971*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X16,batch_lt_16)4972*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X16, batch_lt_16) {
4973*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4974*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
4975*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4976*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4977*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4978*4bdc9457SAndroid Build Coastguard Worker     }
4979*4bdc9457SAndroid Build Coastguard Worker   }
4980*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X16,batch_gt_16)4981*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X16, batch_gt_16) {
4982*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4983*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
4984*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4985*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4986*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4987*4bdc9457SAndroid Build Coastguard Worker     }
4988*4bdc9457SAndroid Build Coastguard Worker   }
4989*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X16,inplace)4990*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X16, inplace) {
4991*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
4992*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
4993*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
4994*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
4995*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
4996*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
4997*4bdc9457SAndroid Build Coastguard Worker     }
4998*4bdc9457SAndroid Build Coastguard Worker   }
4999*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5000*4bdc9457SAndroid Build Coastguard Worker 
5001*4bdc9457SAndroid Build Coastguard Worker 
5002*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X20,batch_eq_20)5003*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X20, batch_eq_20) {
5004*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5005*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5006*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
5007*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
5008*4bdc9457SAndroid Build Coastguard Worker   }
5009*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X20,batch_div_20)5010*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X20, batch_div_20) {
5011*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5012*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
5013*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5014*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5015*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
5016*4bdc9457SAndroid Build Coastguard Worker     }
5017*4bdc9457SAndroid Build Coastguard Worker   }
5018*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X20,batch_lt_20)5019*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X20, batch_lt_20) {
5020*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5021*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
5022*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5023*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5024*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
5025*4bdc9457SAndroid Build Coastguard Worker     }
5026*4bdc9457SAndroid Build Coastguard Worker   }
5027*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X20,batch_gt_20)5028*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X20, batch_gt_20) {
5029*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5030*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
5031*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5032*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5033*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
5034*4bdc9457SAndroid Build Coastguard Worker     }
5035*4bdc9457SAndroid Build Coastguard Worker   }
5036*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X20,inplace)5037*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X20, inplace) {
5038*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5039*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
5040*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5041*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5042*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5043*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
5044*4bdc9457SAndroid Build Coastguard Worker     }
5045*4bdc9457SAndroid Build Coastguard Worker   }
5046*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5047*4bdc9457SAndroid Build Coastguard Worker 
5048*4bdc9457SAndroid Build Coastguard Worker 
5049*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X24,batch_eq_24)5050*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X24, batch_eq_24) {
5051*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5052*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5053*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
5054*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
5055*4bdc9457SAndroid Build Coastguard Worker   }
5056*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X24,batch_div_24)5057*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X24, batch_div_24) {
5058*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5059*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
5060*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5061*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5062*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
5063*4bdc9457SAndroid Build Coastguard Worker     }
5064*4bdc9457SAndroid Build Coastguard Worker   }
5065*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X24,batch_lt_24)5066*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X24, batch_lt_24) {
5067*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5068*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
5069*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5070*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5071*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
5072*4bdc9457SAndroid Build Coastguard Worker     }
5073*4bdc9457SAndroid Build Coastguard Worker   }
5074*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X24,batch_gt_24)5075*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X24, batch_gt_24) {
5076*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5077*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
5078*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5079*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5080*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
5081*4bdc9457SAndroid Build Coastguard Worker     }
5082*4bdc9457SAndroid Build Coastguard Worker   }
5083*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X24,inplace)5084*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_LUT64_P2_DIV_X24, inplace) {
5085*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5086*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
5087*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5088*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5089*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5090*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_sse2_rr2_lut64_p2_params);
5091*4bdc9457SAndroid Build Coastguard Worker     }
5092*4bdc9457SAndroid Build Coastguard Worker   }
5093*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5094*4bdc9457SAndroid Build Coastguard Worker 
5095*4bdc9457SAndroid Build Coastguard Worker 
5096*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X4,batch_eq_4)5097*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X4, batch_eq_4) {
5098*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5099*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5100*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
5101*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x4, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5102*4bdc9457SAndroid Build Coastguard Worker   }
5103*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X4,batch_div_4)5104*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X4, batch_div_4) {
5105*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5106*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
5107*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5108*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5109*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x4, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5110*4bdc9457SAndroid Build Coastguard Worker     }
5111*4bdc9457SAndroid Build Coastguard Worker   }
5112*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X4,batch_lt_4)5113*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X4, batch_lt_4) {
5114*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5115*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
5116*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5117*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5118*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x4, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5119*4bdc9457SAndroid Build Coastguard Worker     }
5120*4bdc9457SAndroid Build Coastguard Worker   }
5121*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X4,batch_gt_4)5122*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X4, batch_gt_4) {
5123*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5124*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
5125*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5126*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5127*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x4, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5128*4bdc9457SAndroid Build Coastguard Worker     }
5129*4bdc9457SAndroid Build Coastguard Worker   }
5130*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X4,inplace)5131*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X4, inplace) {
5132*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5133*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
5134*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5135*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5136*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5137*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x4, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5138*4bdc9457SAndroid Build Coastguard Worker     }
5139*4bdc9457SAndroid Build Coastguard Worker   }
5140*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5141*4bdc9457SAndroid Build Coastguard Worker 
5142*4bdc9457SAndroid Build Coastguard Worker 
5143*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X8,batch_eq_8)5144*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X8, batch_eq_8) {
5145*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5146*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5147*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
5148*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x8, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5149*4bdc9457SAndroid Build Coastguard Worker   }
5150*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X8,batch_div_8)5151*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X8, batch_div_8) {
5152*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5153*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
5154*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5155*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5156*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x8, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5157*4bdc9457SAndroid Build Coastguard Worker     }
5158*4bdc9457SAndroid Build Coastguard Worker   }
5159*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X8,batch_lt_8)5160*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X8, batch_lt_8) {
5161*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5162*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
5163*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5164*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5165*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x8, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5166*4bdc9457SAndroid Build Coastguard Worker     }
5167*4bdc9457SAndroid Build Coastguard Worker   }
5168*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X8,batch_gt_8)5169*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X8, batch_gt_8) {
5170*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5171*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
5172*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5173*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5174*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x8, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5175*4bdc9457SAndroid Build Coastguard Worker     }
5176*4bdc9457SAndroid Build Coastguard Worker   }
5177*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X8,inplace)5178*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X8, inplace) {
5179*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5180*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
5181*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5182*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5183*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5184*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x8, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5185*4bdc9457SAndroid Build Coastguard Worker     }
5186*4bdc9457SAndroid Build Coastguard Worker   }
5187*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5188*4bdc9457SAndroid Build Coastguard Worker 
5189*4bdc9457SAndroid Build Coastguard Worker 
5190*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X12,batch_eq_12)5191*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X12, batch_eq_12) {
5192*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5193*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5194*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
5195*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x12, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5196*4bdc9457SAndroid Build Coastguard Worker   }
5197*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X12,batch_div_12)5198*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X12, batch_div_12) {
5199*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5200*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
5201*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5202*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5203*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x12, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5204*4bdc9457SAndroid Build Coastguard Worker     }
5205*4bdc9457SAndroid Build Coastguard Worker   }
5206*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X12,batch_lt_12)5207*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X12, batch_lt_12) {
5208*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5209*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
5210*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5211*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5212*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x12, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5213*4bdc9457SAndroid Build Coastguard Worker     }
5214*4bdc9457SAndroid Build Coastguard Worker   }
5215*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X12,batch_gt_12)5216*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X12, batch_gt_12) {
5217*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5218*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
5219*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5220*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5221*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x12, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5222*4bdc9457SAndroid Build Coastguard Worker     }
5223*4bdc9457SAndroid Build Coastguard Worker   }
5224*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X12,inplace)5225*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X12, inplace) {
5226*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5227*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
5228*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5229*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5230*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5231*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x12, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5232*4bdc9457SAndroid Build Coastguard Worker     }
5233*4bdc9457SAndroid Build Coastguard Worker   }
5234*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5235*4bdc9457SAndroid Build Coastguard Worker 
5236*4bdc9457SAndroid Build Coastguard Worker 
5237*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X16,batch_eq_16)5238*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X16, batch_eq_16) {
5239*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5240*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5241*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
5242*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x16, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5243*4bdc9457SAndroid Build Coastguard Worker   }
5244*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X16,batch_div_16)5245*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X16, batch_div_16) {
5246*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5247*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
5248*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5249*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5250*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x16, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5251*4bdc9457SAndroid Build Coastguard Worker     }
5252*4bdc9457SAndroid Build Coastguard Worker   }
5253*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X16,batch_lt_16)5254*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X16, batch_lt_16) {
5255*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5256*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
5257*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5258*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5259*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x16, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5260*4bdc9457SAndroid Build Coastguard Worker     }
5261*4bdc9457SAndroid Build Coastguard Worker   }
5262*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X16,batch_gt_16)5263*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X16, batch_gt_16) {
5264*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5265*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
5266*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5267*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5268*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x16, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5269*4bdc9457SAndroid Build Coastguard Worker     }
5270*4bdc9457SAndroid Build Coastguard Worker   }
5271*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X16,inplace)5272*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X16, inplace) {
5273*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5274*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
5275*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5276*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5277*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5278*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x16, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5279*4bdc9457SAndroid Build Coastguard Worker     }
5280*4bdc9457SAndroid Build Coastguard Worker   }
5281*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5282*4bdc9457SAndroid Build Coastguard Worker 
5283*4bdc9457SAndroid Build Coastguard Worker 
5284*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X20,batch_eq_20)5285*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X20, batch_eq_20) {
5286*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5287*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5288*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
5289*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x20, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5290*4bdc9457SAndroid Build Coastguard Worker   }
5291*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X20,batch_div_20)5292*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X20, batch_div_20) {
5293*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5294*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
5295*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5296*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5297*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x20, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5298*4bdc9457SAndroid Build Coastguard Worker     }
5299*4bdc9457SAndroid Build Coastguard Worker   }
5300*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X20,batch_lt_20)5301*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X20, batch_lt_20) {
5302*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5303*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
5304*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5305*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5306*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x20, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5307*4bdc9457SAndroid Build Coastguard Worker     }
5308*4bdc9457SAndroid Build Coastguard Worker   }
5309*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X20,batch_gt_20)5310*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X20, batch_gt_20) {
5311*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5312*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
5313*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5314*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5315*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x20, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5316*4bdc9457SAndroid Build Coastguard Worker     }
5317*4bdc9457SAndroid Build Coastguard Worker   }
5318*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X20,inplace)5319*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X20, inplace) {
5320*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5321*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
5322*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5323*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5324*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5325*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x20, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5326*4bdc9457SAndroid Build Coastguard Worker     }
5327*4bdc9457SAndroid Build Coastguard Worker   }
5328*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5329*4bdc9457SAndroid Build Coastguard Worker 
5330*4bdc9457SAndroid Build Coastguard Worker 
5331*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X24,batch_eq_24)5332*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X24, batch_eq_24) {
5333*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5334*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5335*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
5336*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x24, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5337*4bdc9457SAndroid Build Coastguard Worker   }
5338*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X24,batch_div_24)5339*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X24, batch_div_24) {
5340*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5341*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
5342*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5343*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5344*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x24, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5345*4bdc9457SAndroid Build Coastguard Worker     }
5346*4bdc9457SAndroid Build Coastguard Worker   }
5347*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X24,batch_lt_24)5348*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X24, batch_lt_24) {
5349*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5350*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
5351*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5352*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5353*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x24, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5354*4bdc9457SAndroid Build Coastguard Worker     }
5355*4bdc9457SAndroid Build Coastguard Worker   }
5356*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X24,batch_gt_24)5357*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X24, batch_gt_24) {
5358*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5359*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
5360*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5361*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5362*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x24, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5363*4bdc9457SAndroid Build Coastguard Worker     }
5364*4bdc9457SAndroid Build Coastguard Worker   }
5365*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X24,inplace)5366*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__SSE41_RR2_P5_DIV_X24, inplace) {
5367*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_SSE41;
5368*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
5369*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5370*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5371*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5372*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__sse41_rr2_p5_div_x24, xnn_init_f32_sigmoid_sse2_rr2_p5_params);
5373*4bdc9457SAndroid Build Coastguard Worker     }
5374*4bdc9457SAndroid Build Coastguard Worker   }
5375*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5376*4bdc9457SAndroid Build Coastguard Worker 
5377*4bdc9457SAndroid Build Coastguard Worker 
5378*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X8,batch_eq_8)5379*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X8, batch_eq_8) {
5380*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5381*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5382*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
5383*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x8, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5384*4bdc9457SAndroid Build Coastguard Worker   }
5385*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X8,batch_div_8)5386*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X8, batch_div_8) {
5387*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5388*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
5389*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5390*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5391*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x8, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5392*4bdc9457SAndroid Build Coastguard Worker     }
5393*4bdc9457SAndroid Build Coastguard Worker   }
5394*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X8,batch_lt_8)5395*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X8, batch_lt_8) {
5396*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5397*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
5398*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5399*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5400*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x8, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5401*4bdc9457SAndroid Build Coastguard Worker     }
5402*4bdc9457SAndroid Build Coastguard Worker   }
5403*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X8,batch_gt_8)5404*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X8, batch_gt_8) {
5405*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5406*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
5407*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5408*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5409*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x8, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5410*4bdc9457SAndroid Build Coastguard Worker     }
5411*4bdc9457SAndroid Build Coastguard Worker   }
5412*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X8,inplace)5413*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X8, inplace) {
5414*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5415*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
5416*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5417*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5418*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5419*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x8, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5420*4bdc9457SAndroid Build Coastguard Worker     }
5421*4bdc9457SAndroid Build Coastguard Worker   }
5422*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5423*4bdc9457SAndroid Build Coastguard Worker 
5424*4bdc9457SAndroid Build Coastguard Worker 
5425*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X16,batch_eq_16)5426*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X16, batch_eq_16) {
5427*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5428*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5429*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
5430*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x16, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5431*4bdc9457SAndroid Build Coastguard Worker   }
5432*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X16,batch_div_16)5433*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X16, batch_div_16) {
5434*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5435*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
5436*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5437*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5438*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x16, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5439*4bdc9457SAndroid Build Coastguard Worker     }
5440*4bdc9457SAndroid Build Coastguard Worker   }
5441*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X16,batch_lt_16)5442*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X16, batch_lt_16) {
5443*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5444*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
5445*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5446*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5447*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x16, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5448*4bdc9457SAndroid Build Coastguard Worker     }
5449*4bdc9457SAndroid Build Coastguard Worker   }
5450*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X16,batch_gt_16)5451*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X16, batch_gt_16) {
5452*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5453*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
5454*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5455*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5456*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x16, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5457*4bdc9457SAndroid Build Coastguard Worker     }
5458*4bdc9457SAndroid Build Coastguard Worker   }
5459*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X16,inplace)5460*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X16, inplace) {
5461*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5462*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
5463*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5464*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5465*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5466*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x16, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5467*4bdc9457SAndroid Build Coastguard Worker     }
5468*4bdc9457SAndroid Build Coastguard Worker   }
5469*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5470*4bdc9457SAndroid Build Coastguard Worker 
5471*4bdc9457SAndroid Build Coastguard Worker 
5472*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X24,batch_eq_24)5473*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X24, batch_eq_24) {
5474*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5475*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5476*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
5477*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x24, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5478*4bdc9457SAndroid Build Coastguard Worker   }
5479*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X24,batch_div_24)5480*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X24, batch_div_24) {
5481*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5482*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
5483*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5484*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5485*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x24, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5486*4bdc9457SAndroid Build Coastguard Worker     }
5487*4bdc9457SAndroid Build Coastguard Worker   }
5488*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X24,batch_lt_24)5489*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X24, batch_lt_24) {
5490*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5491*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
5492*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5493*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5494*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x24, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5495*4bdc9457SAndroid Build Coastguard Worker     }
5496*4bdc9457SAndroid Build Coastguard Worker   }
5497*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X24,batch_gt_24)5498*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X24, batch_gt_24) {
5499*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5500*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
5501*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5502*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5503*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x24, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5504*4bdc9457SAndroid Build Coastguard Worker     }
5505*4bdc9457SAndroid Build Coastguard Worker   }
5506*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X24,inplace)5507*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X24, inplace) {
5508*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5509*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
5510*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5511*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5512*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5513*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x24, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5514*4bdc9457SAndroid Build Coastguard Worker     }
5515*4bdc9457SAndroid Build Coastguard Worker   }
5516*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5517*4bdc9457SAndroid Build Coastguard Worker 
5518*4bdc9457SAndroid Build Coastguard Worker 
5519*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X32,batch_eq_32)5520*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X32, batch_eq_32) {
5521*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5522*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5523*4bdc9457SAndroid Build Coastguard Worker       .batch_size(32)
5524*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x32, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5525*4bdc9457SAndroid Build Coastguard Worker   }
5526*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X32,batch_div_32)5527*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X32, batch_div_32) {
5528*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5529*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 64; batch_size < 320; batch_size += 32) {
5530*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5531*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5532*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x32, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5533*4bdc9457SAndroid Build Coastguard Worker     }
5534*4bdc9457SAndroid Build Coastguard Worker   }
5535*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X32,batch_lt_32)5536*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X32, batch_lt_32) {
5537*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5538*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 32; batch_size++) {
5539*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5540*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5541*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x32, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5542*4bdc9457SAndroid Build Coastguard Worker     }
5543*4bdc9457SAndroid Build Coastguard Worker   }
5544*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X32,batch_gt_32)5545*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X32, batch_gt_32) {
5546*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5547*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 33; batch_size < 64; batch_size++) {
5548*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5549*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5550*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x32, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5551*4bdc9457SAndroid Build Coastguard Worker     }
5552*4bdc9457SAndroid Build Coastguard Worker   }
5553*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X32,inplace)5554*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X32, inplace) {
5555*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5556*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 160; batch_size += 31) {
5557*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5558*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5559*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5560*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x32, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5561*4bdc9457SAndroid Build Coastguard Worker     }
5562*4bdc9457SAndroid Build Coastguard Worker   }
5563*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5564*4bdc9457SAndroid Build Coastguard Worker 
5565*4bdc9457SAndroid Build Coastguard Worker 
5566*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X40,batch_eq_40)5567*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X40, batch_eq_40) {
5568*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5569*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5570*4bdc9457SAndroid Build Coastguard Worker       .batch_size(40)
5571*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x40, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5572*4bdc9457SAndroid Build Coastguard Worker   }
5573*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X40,batch_div_40)5574*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X40, batch_div_40) {
5575*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5576*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 80; batch_size < 400; batch_size += 40) {
5577*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5578*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5579*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x40, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5580*4bdc9457SAndroid Build Coastguard Worker     }
5581*4bdc9457SAndroid Build Coastguard Worker   }
5582*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X40,batch_lt_40)5583*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X40, batch_lt_40) {
5584*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5585*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 40; batch_size++) {
5586*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5587*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5588*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x40, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5589*4bdc9457SAndroid Build Coastguard Worker     }
5590*4bdc9457SAndroid Build Coastguard Worker   }
5591*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X40,batch_gt_40)5592*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X40, batch_gt_40) {
5593*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5594*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 41; batch_size < 80; batch_size++) {
5595*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5596*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5597*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x40, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5598*4bdc9457SAndroid Build Coastguard Worker     }
5599*4bdc9457SAndroid Build Coastguard Worker   }
5600*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X40,inplace)5601*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X40, inplace) {
5602*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5603*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 200; batch_size += 39) {
5604*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5605*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5606*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5607*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x40, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5608*4bdc9457SAndroid Build Coastguard Worker     }
5609*4bdc9457SAndroid Build Coastguard Worker   }
5610*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5611*4bdc9457SAndroid Build Coastguard Worker 
5612*4bdc9457SAndroid Build Coastguard Worker 
5613*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X48,batch_eq_48)5614*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X48, batch_eq_48) {
5615*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5616*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5617*4bdc9457SAndroid Build Coastguard Worker       .batch_size(48)
5618*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x48, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5619*4bdc9457SAndroid Build Coastguard Worker   }
5620*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X48,batch_div_48)5621*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X48, batch_div_48) {
5622*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5623*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 96; batch_size < 480; batch_size += 48) {
5624*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5625*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5626*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x48, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5627*4bdc9457SAndroid Build Coastguard Worker     }
5628*4bdc9457SAndroid Build Coastguard Worker   }
5629*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X48,batch_lt_48)5630*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X48, batch_lt_48) {
5631*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5632*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 48; batch_size++) {
5633*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5634*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5635*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x48, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5636*4bdc9457SAndroid Build Coastguard Worker     }
5637*4bdc9457SAndroid Build Coastguard Worker   }
5638*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X48,batch_gt_48)5639*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X48, batch_gt_48) {
5640*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5641*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 49; batch_size < 96; batch_size++) {
5642*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5643*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5644*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x48, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5645*4bdc9457SAndroid Build Coastguard Worker     }
5646*4bdc9457SAndroid Build Coastguard Worker   }
5647*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X48,inplace)5648*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X48, inplace) {
5649*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5650*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 240; batch_size += 47) {
5651*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5652*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5653*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5654*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x48, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5655*4bdc9457SAndroid Build Coastguard Worker     }
5656*4bdc9457SAndroid Build Coastguard Worker   }
5657*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5658*4bdc9457SAndroid Build Coastguard Worker 
5659*4bdc9457SAndroid Build Coastguard Worker 
5660*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X56,batch_eq_56)5661*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X56, batch_eq_56) {
5662*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5663*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5664*4bdc9457SAndroid Build Coastguard Worker       .batch_size(56)
5665*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x56, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5666*4bdc9457SAndroid Build Coastguard Worker   }
5667*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X56,batch_div_56)5668*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X56, batch_div_56) {
5669*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5670*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 112; batch_size < 560; batch_size += 56) {
5671*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5672*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5673*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x56, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5674*4bdc9457SAndroid Build Coastguard Worker     }
5675*4bdc9457SAndroid Build Coastguard Worker   }
5676*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X56,batch_lt_56)5677*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X56, batch_lt_56) {
5678*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5679*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 56; batch_size++) {
5680*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5681*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5682*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x56, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5683*4bdc9457SAndroid Build Coastguard Worker     }
5684*4bdc9457SAndroid Build Coastguard Worker   }
5685*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X56,batch_gt_56)5686*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X56, batch_gt_56) {
5687*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5688*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 57; batch_size < 112; batch_size++) {
5689*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5690*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5691*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x56, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5692*4bdc9457SAndroid Build Coastguard Worker     }
5693*4bdc9457SAndroid Build Coastguard Worker   }
5694*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X56,inplace)5695*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X56, inplace) {
5696*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5697*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 280; batch_size += 55) {
5698*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5699*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5700*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5701*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x56, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5702*4bdc9457SAndroid Build Coastguard Worker     }
5703*4bdc9457SAndroid Build Coastguard Worker   }
5704*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5705*4bdc9457SAndroid Build Coastguard Worker 
5706*4bdc9457SAndroid Build Coastguard Worker 
5707*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X64,batch_eq_64)5708*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X64, batch_eq_64) {
5709*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5710*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5711*4bdc9457SAndroid Build Coastguard Worker       .batch_size(64)
5712*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x64, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5713*4bdc9457SAndroid Build Coastguard Worker   }
5714*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X64,batch_div_64)5715*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X64, batch_div_64) {
5716*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5717*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 128; batch_size < 640; batch_size += 64) {
5718*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5719*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5720*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x64, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5721*4bdc9457SAndroid Build Coastguard Worker     }
5722*4bdc9457SAndroid Build Coastguard Worker   }
5723*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X64,batch_lt_64)5724*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X64, batch_lt_64) {
5725*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5726*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 64; batch_size++) {
5727*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5728*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5729*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x64, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5730*4bdc9457SAndroid Build Coastguard Worker     }
5731*4bdc9457SAndroid Build Coastguard Worker   }
5732*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X64,batch_gt_64)5733*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X64, batch_gt_64) {
5734*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5735*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 65; batch_size < 128; batch_size++) {
5736*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5737*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5738*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x64, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5739*4bdc9457SAndroid Build Coastguard Worker     }
5740*4bdc9457SAndroid Build Coastguard Worker   }
5741*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X64,inplace)5742*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X64, inplace) {
5743*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5744*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 320; batch_size += 63) {
5745*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5746*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5747*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5748*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x64, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5749*4bdc9457SAndroid Build Coastguard Worker     }
5750*4bdc9457SAndroid Build Coastguard Worker   }
5751*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5752*4bdc9457SAndroid Build Coastguard Worker 
5753*4bdc9457SAndroid Build Coastguard Worker 
5754*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X72,batch_eq_72)5755*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X72, batch_eq_72) {
5756*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5757*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5758*4bdc9457SAndroid Build Coastguard Worker       .batch_size(72)
5759*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x72, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5760*4bdc9457SAndroid Build Coastguard Worker   }
5761*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X72,batch_div_72)5762*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X72, batch_div_72) {
5763*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5764*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 144; batch_size < 720; batch_size += 72) {
5765*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5766*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5767*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x72, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5768*4bdc9457SAndroid Build Coastguard Worker     }
5769*4bdc9457SAndroid Build Coastguard Worker   }
5770*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X72,batch_lt_72)5771*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X72, batch_lt_72) {
5772*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5773*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 72; batch_size++) {
5774*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5775*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5776*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x72, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5777*4bdc9457SAndroid Build Coastguard Worker     }
5778*4bdc9457SAndroid Build Coastguard Worker   }
5779*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X72,batch_gt_72)5780*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X72, batch_gt_72) {
5781*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5782*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 73; batch_size < 144; batch_size++) {
5783*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5784*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5785*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x72, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5786*4bdc9457SAndroid Build Coastguard Worker     }
5787*4bdc9457SAndroid Build Coastguard Worker   }
5788*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X72,inplace)5789*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X72, inplace) {
5790*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5791*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 360; batch_size += 71) {
5792*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5793*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5794*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5795*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x72, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5796*4bdc9457SAndroid Build Coastguard Worker     }
5797*4bdc9457SAndroid Build Coastguard Worker   }
5798*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5799*4bdc9457SAndroid Build Coastguard Worker 
5800*4bdc9457SAndroid Build Coastguard Worker 
5801*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X80,batch_eq_80)5802*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X80, batch_eq_80) {
5803*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5804*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5805*4bdc9457SAndroid Build Coastguard Worker       .batch_size(80)
5806*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x80, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5807*4bdc9457SAndroid Build Coastguard Worker   }
5808*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X80,batch_div_80)5809*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X80, batch_div_80) {
5810*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5811*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 160; batch_size < 800; batch_size += 80) {
5812*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5813*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5814*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x80, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5815*4bdc9457SAndroid Build Coastguard Worker     }
5816*4bdc9457SAndroid Build Coastguard Worker   }
5817*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X80,batch_lt_80)5818*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X80, batch_lt_80) {
5819*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5820*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 80; batch_size++) {
5821*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5822*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5823*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x80, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5824*4bdc9457SAndroid Build Coastguard Worker     }
5825*4bdc9457SAndroid Build Coastguard Worker   }
5826*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X80,batch_gt_80)5827*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X80, batch_gt_80) {
5828*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5829*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 81; batch_size < 160; batch_size++) {
5830*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5831*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5832*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x80, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5833*4bdc9457SAndroid Build Coastguard Worker     }
5834*4bdc9457SAndroid Build Coastguard Worker   }
5835*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X80,inplace)5836*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_DIV_X80, inplace) {
5837*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5838*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 400; batch_size += 79) {
5839*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5840*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5841*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5842*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_div_x80, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5843*4bdc9457SAndroid Build Coastguard Worker     }
5844*4bdc9457SAndroid Build Coastguard Worker   }
5845*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5846*4bdc9457SAndroid Build Coastguard Worker 
5847*4bdc9457SAndroid Build Coastguard Worker 
5848*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X8,batch_eq_8)5849*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X8, batch_eq_8) {
5850*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5851*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5852*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
5853*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x8, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5854*4bdc9457SAndroid Build Coastguard Worker   }
5855*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X8,batch_div_8)5856*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X8, batch_div_8) {
5857*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5858*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
5859*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5860*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5861*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x8, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5862*4bdc9457SAndroid Build Coastguard Worker     }
5863*4bdc9457SAndroid Build Coastguard Worker   }
5864*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X8,batch_lt_8)5865*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X8, batch_lt_8) {
5866*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5867*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
5868*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5869*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5870*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x8, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5871*4bdc9457SAndroid Build Coastguard Worker     }
5872*4bdc9457SAndroid Build Coastguard Worker   }
5873*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X8,batch_gt_8)5874*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X8, batch_gt_8) {
5875*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5876*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
5877*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5878*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5879*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x8, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5880*4bdc9457SAndroid Build Coastguard Worker     }
5881*4bdc9457SAndroid Build Coastguard Worker   }
5882*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X8,inplace)5883*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X8, inplace) {
5884*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5885*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
5886*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5887*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5888*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5889*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x8, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5890*4bdc9457SAndroid Build Coastguard Worker     }
5891*4bdc9457SAndroid Build Coastguard Worker   }
5892*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5893*4bdc9457SAndroid Build Coastguard Worker 
5894*4bdc9457SAndroid Build Coastguard Worker 
5895*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X16,batch_eq_16)5896*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X16, batch_eq_16) {
5897*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5898*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5899*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
5900*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x16, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5901*4bdc9457SAndroid Build Coastguard Worker   }
5902*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X16,batch_div_16)5903*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X16, batch_div_16) {
5904*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5905*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
5906*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5907*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5908*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x16, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5909*4bdc9457SAndroid Build Coastguard Worker     }
5910*4bdc9457SAndroid Build Coastguard Worker   }
5911*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X16,batch_lt_16)5912*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X16, batch_lt_16) {
5913*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5914*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
5915*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5916*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5917*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x16, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5918*4bdc9457SAndroid Build Coastguard Worker     }
5919*4bdc9457SAndroid Build Coastguard Worker   }
5920*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X16,batch_gt_16)5921*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X16, batch_gt_16) {
5922*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5923*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
5924*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5925*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5926*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x16, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5927*4bdc9457SAndroid Build Coastguard Worker     }
5928*4bdc9457SAndroid Build Coastguard Worker   }
5929*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X16,inplace)5930*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X16, inplace) {
5931*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5932*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
5933*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5934*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5935*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5936*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x16, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5937*4bdc9457SAndroid Build Coastguard Worker     }
5938*4bdc9457SAndroid Build Coastguard Worker   }
5939*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5940*4bdc9457SAndroid Build Coastguard Worker 
5941*4bdc9457SAndroid Build Coastguard Worker 
5942*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X24,batch_eq_24)5943*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X24, batch_eq_24) {
5944*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5945*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5946*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
5947*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x24, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5948*4bdc9457SAndroid Build Coastguard Worker   }
5949*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X24,batch_div_24)5950*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X24, batch_div_24) {
5951*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5952*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
5953*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5954*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5955*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x24, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5956*4bdc9457SAndroid Build Coastguard Worker     }
5957*4bdc9457SAndroid Build Coastguard Worker   }
5958*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X24,batch_lt_24)5959*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X24, batch_lt_24) {
5960*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5961*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
5962*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5963*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5964*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x24, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5965*4bdc9457SAndroid Build Coastguard Worker     }
5966*4bdc9457SAndroid Build Coastguard Worker   }
5967*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X24,batch_gt_24)5968*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X24, batch_gt_24) {
5969*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5970*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
5971*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5972*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5973*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x24, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5974*4bdc9457SAndroid Build Coastguard Worker     }
5975*4bdc9457SAndroid Build Coastguard Worker   }
5976*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X24,inplace)5977*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X24, inplace) {
5978*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5979*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
5980*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
5981*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
5982*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
5983*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x24, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5984*4bdc9457SAndroid Build Coastguard Worker     }
5985*4bdc9457SAndroid Build Coastguard Worker   }
5986*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
5987*4bdc9457SAndroid Build Coastguard Worker 
5988*4bdc9457SAndroid Build Coastguard Worker 
5989*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X32,batch_eq_32)5990*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X32, batch_eq_32) {
5991*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5992*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
5993*4bdc9457SAndroid Build Coastguard Worker       .batch_size(32)
5994*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x32, xnn_init_f32_sigmoid_avx_rr2_p5_params);
5995*4bdc9457SAndroid Build Coastguard Worker   }
5996*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X32,batch_div_32)5997*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X32, batch_div_32) {
5998*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
5999*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 64; batch_size < 320; batch_size += 32) {
6000*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6001*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6002*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x32, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6003*4bdc9457SAndroid Build Coastguard Worker     }
6004*4bdc9457SAndroid Build Coastguard Worker   }
6005*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X32,batch_lt_32)6006*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X32, batch_lt_32) {
6007*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6008*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 32; batch_size++) {
6009*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6010*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6011*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x32, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6012*4bdc9457SAndroid Build Coastguard Worker     }
6013*4bdc9457SAndroid Build Coastguard Worker   }
6014*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X32,batch_gt_32)6015*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X32, batch_gt_32) {
6016*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6017*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 33; batch_size < 64; batch_size++) {
6018*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6019*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6020*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x32, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6021*4bdc9457SAndroid Build Coastguard Worker     }
6022*4bdc9457SAndroid Build Coastguard Worker   }
6023*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X32,inplace)6024*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X32, inplace) {
6025*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6026*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 160; batch_size += 31) {
6027*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6028*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6029*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6030*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x32, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6031*4bdc9457SAndroid Build Coastguard Worker     }
6032*4bdc9457SAndroid Build Coastguard Worker   }
6033*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6034*4bdc9457SAndroid Build Coastguard Worker 
6035*4bdc9457SAndroid Build Coastguard Worker 
6036*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X40,batch_eq_40)6037*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X40, batch_eq_40) {
6038*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6039*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6040*4bdc9457SAndroid Build Coastguard Worker       .batch_size(40)
6041*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x40, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6042*4bdc9457SAndroid Build Coastguard Worker   }
6043*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X40,batch_div_40)6044*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X40, batch_div_40) {
6045*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6046*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 80; batch_size < 400; batch_size += 40) {
6047*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6048*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6049*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x40, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6050*4bdc9457SAndroid Build Coastguard Worker     }
6051*4bdc9457SAndroid Build Coastguard Worker   }
6052*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X40,batch_lt_40)6053*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X40, batch_lt_40) {
6054*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6055*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 40; batch_size++) {
6056*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6057*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6058*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x40, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6059*4bdc9457SAndroid Build Coastguard Worker     }
6060*4bdc9457SAndroid Build Coastguard Worker   }
6061*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X40,batch_gt_40)6062*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X40, batch_gt_40) {
6063*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6064*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 41; batch_size < 80; batch_size++) {
6065*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6066*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6067*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x40, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6068*4bdc9457SAndroid Build Coastguard Worker     }
6069*4bdc9457SAndroid Build Coastguard Worker   }
6070*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X40,inplace)6071*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X40, inplace) {
6072*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6073*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 200; batch_size += 39) {
6074*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6075*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6076*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6077*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x40, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6078*4bdc9457SAndroid Build Coastguard Worker     }
6079*4bdc9457SAndroid Build Coastguard Worker   }
6080*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6081*4bdc9457SAndroid Build Coastguard Worker 
6082*4bdc9457SAndroid Build Coastguard Worker 
6083*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X48,batch_eq_48)6084*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X48, batch_eq_48) {
6085*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6086*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6087*4bdc9457SAndroid Build Coastguard Worker       .batch_size(48)
6088*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x48, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6089*4bdc9457SAndroid Build Coastguard Worker   }
6090*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X48,batch_div_48)6091*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X48, batch_div_48) {
6092*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6093*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 96; batch_size < 480; batch_size += 48) {
6094*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6095*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6096*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x48, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6097*4bdc9457SAndroid Build Coastguard Worker     }
6098*4bdc9457SAndroid Build Coastguard Worker   }
6099*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X48,batch_lt_48)6100*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X48, batch_lt_48) {
6101*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6102*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 48; batch_size++) {
6103*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6104*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6105*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x48, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6106*4bdc9457SAndroid Build Coastguard Worker     }
6107*4bdc9457SAndroid Build Coastguard Worker   }
6108*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X48,batch_gt_48)6109*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X48, batch_gt_48) {
6110*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6111*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 49; batch_size < 96; batch_size++) {
6112*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6113*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6114*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x48, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6115*4bdc9457SAndroid Build Coastguard Worker     }
6116*4bdc9457SAndroid Build Coastguard Worker   }
6117*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X48,inplace)6118*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X48, inplace) {
6119*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6120*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 240; batch_size += 47) {
6121*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6122*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6123*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6124*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x48, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6125*4bdc9457SAndroid Build Coastguard Worker     }
6126*4bdc9457SAndroid Build Coastguard Worker   }
6127*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6128*4bdc9457SAndroid Build Coastguard Worker 
6129*4bdc9457SAndroid Build Coastguard Worker 
6130*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X56,batch_eq_56)6131*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X56, batch_eq_56) {
6132*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6133*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6134*4bdc9457SAndroid Build Coastguard Worker       .batch_size(56)
6135*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x56, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6136*4bdc9457SAndroid Build Coastguard Worker   }
6137*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X56,batch_div_56)6138*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X56, batch_div_56) {
6139*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6140*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 112; batch_size < 560; batch_size += 56) {
6141*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6142*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6143*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x56, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6144*4bdc9457SAndroid Build Coastguard Worker     }
6145*4bdc9457SAndroid Build Coastguard Worker   }
6146*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X56,batch_lt_56)6147*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X56, batch_lt_56) {
6148*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6149*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 56; batch_size++) {
6150*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6151*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6152*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x56, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6153*4bdc9457SAndroid Build Coastguard Worker     }
6154*4bdc9457SAndroid Build Coastguard Worker   }
6155*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X56,batch_gt_56)6156*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X56, batch_gt_56) {
6157*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6158*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 57; batch_size < 112; batch_size++) {
6159*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6160*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6161*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x56, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6162*4bdc9457SAndroid Build Coastguard Worker     }
6163*4bdc9457SAndroid Build Coastguard Worker   }
6164*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X56,inplace)6165*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X56, inplace) {
6166*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6167*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 280; batch_size += 55) {
6168*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6169*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6170*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6171*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x56, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6172*4bdc9457SAndroid Build Coastguard Worker     }
6173*4bdc9457SAndroid Build Coastguard Worker   }
6174*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6175*4bdc9457SAndroid Build Coastguard Worker 
6176*4bdc9457SAndroid Build Coastguard Worker 
6177*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X64,batch_eq_64)6178*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X64, batch_eq_64) {
6179*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6180*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6181*4bdc9457SAndroid Build Coastguard Worker       .batch_size(64)
6182*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x64, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6183*4bdc9457SAndroid Build Coastguard Worker   }
6184*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X64,batch_div_64)6185*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X64, batch_div_64) {
6186*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6187*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 128; batch_size < 640; batch_size += 64) {
6188*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6189*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6190*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x64, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6191*4bdc9457SAndroid Build Coastguard Worker     }
6192*4bdc9457SAndroid Build Coastguard Worker   }
6193*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X64,batch_lt_64)6194*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X64, batch_lt_64) {
6195*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6196*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 64; batch_size++) {
6197*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6198*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6199*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x64, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6200*4bdc9457SAndroid Build Coastguard Worker     }
6201*4bdc9457SAndroid Build Coastguard Worker   }
6202*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X64,batch_gt_64)6203*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X64, batch_gt_64) {
6204*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6205*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 65; batch_size < 128; batch_size++) {
6206*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6207*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6208*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x64, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6209*4bdc9457SAndroid Build Coastguard Worker     }
6210*4bdc9457SAndroid Build Coastguard Worker   }
6211*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X64,inplace)6212*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X64, inplace) {
6213*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6214*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 320; batch_size += 63) {
6215*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6216*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6217*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6218*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x64, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6219*4bdc9457SAndroid Build Coastguard Worker     }
6220*4bdc9457SAndroid Build Coastguard Worker   }
6221*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6222*4bdc9457SAndroid Build Coastguard Worker 
6223*4bdc9457SAndroid Build Coastguard Worker 
6224*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X72,batch_eq_72)6225*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X72, batch_eq_72) {
6226*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6227*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6228*4bdc9457SAndroid Build Coastguard Worker       .batch_size(72)
6229*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x72, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6230*4bdc9457SAndroid Build Coastguard Worker   }
6231*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X72,batch_div_72)6232*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X72, batch_div_72) {
6233*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6234*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 144; batch_size < 720; batch_size += 72) {
6235*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6236*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6237*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x72, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6238*4bdc9457SAndroid Build Coastguard Worker     }
6239*4bdc9457SAndroid Build Coastguard Worker   }
6240*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X72,batch_lt_72)6241*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X72, batch_lt_72) {
6242*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6243*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 72; batch_size++) {
6244*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6245*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6246*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x72, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6247*4bdc9457SAndroid Build Coastguard Worker     }
6248*4bdc9457SAndroid Build Coastguard Worker   }
6249*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X72,batch_gt_72)6250*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X72, batch_gt_72) {
6251*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6252*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 73; batch_size < 144; batch_size++) {
6253*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6254*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6255*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x72, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6256*4bdc9457SAndroid Build Coastguard Worker     }
6257*4bdc9457SAndroid Build Coastguard Worker   }
6258*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X72,inplace)6259*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X72, inplace) {
6260*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6261*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 360; batch_size += 71) {
6262*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6263*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6264*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6265*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x72, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6266*4bdc9457SAndroid Build Coastguard Worker     }
6267*4bdc9457SAndroid Build Coastguard Worker   }
6268*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6269*4bdc9457SAndroid Build Coastguard Worker 
6270*4bdc9457SAndroid Build Coastguard Worker 
6271*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X80,batch_eq_80)6272*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X80, batch_eq_80) {
6273*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6274*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6275*4bdc9457SAndroid Build Coastguard Worker       .batch_size(80)
6276*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x80, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6277*4bdc9457SAndroid Build Coastguard Worker   }
6278*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X80,batch_div_80)6279*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X80, batch_div_80) {
6280*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6281*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 160; batch_size < 800; batch_size += 80) {
6282*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6283*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6284*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x80, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6285*4bdc9457SAndroid Build Coastguard Worker     }
6286*4bdc9457SAndroid Build Coastguard Worker   }
6287*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X80,batch_lt_80)6288*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X80, batch_lt_80) {
6289*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6290*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 80; batch_size++) {
6291*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6292*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6293*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x80, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6294*4bdc9457SAndroid Build Coastguard Worker     }
6295*4bdc9457SAndroid Build Coastguard Worker   }
6296*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X80,batch_gt_80)6297*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X80, batch_gt_80) {
6298*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6299*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 81; batch_size < 160; batch_size++) {
6300*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6301*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6302*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x80, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6303*4bdc9457SAndroid Build Coastguard Worker     }
6304*4bdc9457SAndroid Build Coastguard Worker   }
6305*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X80,inplace)6306*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX_RR2_P5_NR2_X80, inplace) {
6307*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX;
6308*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 400; batch_size += 79) {
6309*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6310*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6311*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6312*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx_rr2_p5_nr2_x80, xnn_init_f32_sigmoid_avx_rr2_p5_params);
6313*4bdc9457SAndroid Build Coastguard Worker     }
6314*4bdc9457SAndroid Build Coastguard Worker   }
6315*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6316*4bdc9457SAndroid Build Coastguard Worker 
6317*4bdc9457SAndroid Build Coastguard Worker 
6318*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X8,batch_eq_8)6319*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X8, batch_eq_8) {
6320*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6321*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6322*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
6323*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6324*4bdc9457SAndroid Build Coastguard Worker   }
6325*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X8,batch_div_8)6326*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X8, batch_div_8) {
6327*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6328*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
6329*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6330*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6331*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6332*4bdc9457SAndroid Build Coastguard Worker     }
6333*4bdc9457SAndroid Build Coastguard Worker   }
6334*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X8,batch_lt_8)6335*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X8, batch_lt_8) {
6336*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6337*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
6338*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6339*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6340*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6341*4bdc9457SAndroid Build Coastguard Worker     }
6342*4bdc9457SAndroid Build Coastguard Worker   }
6343*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X8,batch_gt_8)6344*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X8, batch_gt_8) {
6345*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6346*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
6347*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6348*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6349*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6350*4bdc9457SAndroid Build Coastguard Worker     }
6351*4bdc9457SAndroid Build Coastguard Worker   }
6352*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X8,inplace)6353*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X8, inplace) {
6354*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6355*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
6356*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6357*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6358*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6359*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6360*4bdc9457SAndroid Build Coastguard Worker     }
6361*4bdc9457SAndroid Build Coastguard Worker   }
6362*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6363*4bdc9457SAndroid Build Coastguard Worker 
6364*4bdc9457SAndroid Build Coastguard Worker 
6365*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X16,batch_eq_16)6366*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X16, batch_eq_16) {
6367*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6368*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6369*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
6370*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6371*4bdc9457SAndroid Build Coastguard Worker   }
6372*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X16,batch_div_16)6373*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X16, batch_div_16) {
6374*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6375*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
6376*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6377*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6378*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6379*4bdc9457SAndroid Build Coastguard Worker     }
6380*4bdc9457SAndroid Build Coastguard Worker   }
6381*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X16,batch_lt_16)6382*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X16, batch_lt_16) {
6383*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6384*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
6385*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6386*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6387*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6388*4bdc9457SAndroid Build Coastguard Worker     }
6389*4bdc9457SAndroid Build Coastguard Worker   }
6390*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X16,batch_gt_16)6391*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X16, batch_gt_16) {
6392*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6393*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
6394*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6395*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6396*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6397*4bdc9457SAndroid Build Coastguard Worker     }
6398*4bdc9457SAndroid Build Coastguard Worker   }
6399*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X16,inplace)6400*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X16, inplace) {
6401*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6402*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
6403*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6404*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6405*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6406*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6407*4bdc9457SAndroid Build Coastguard Worker     }
6408*4bdc9457SAndroid Build Coastguard Worker   }
6409*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6410*4bdc9457SAndroid Build Coastguard Worker 
6411*4bdc9457SAndroid Build Coastguard Worker 
6412*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X24,batch_eq_24)6413*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X24, batch_eq_24) {
6414*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6415*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6416*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
6417*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6418*4bdc9457SAndroid Build Coastguard Worker   }
6419*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X24,batch_div_24)6420*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X24, batch_div_24) {
6421*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6422*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
6423*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6424*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6425*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6426*4bdc9457SAndroid Build Coastguard Worker     }
6427*4bdc9457SAndroid Build Coastguard Worker   }
6428*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X24,batch_lt_24)6429*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X24, batch_lt_24) {
6430*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6431*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
6432*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6433*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6434*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6435*4bdc9457SAndroid Build Coastguard Worker     }
6436*4bdc9457SAndroid Build Coastguard Worker   }
6437*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X24,batch_gt_24)6438*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X24, batch_gt_24) {
6439*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6440*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
6441*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6442*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6443*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6444*4bdc9457SAndroid Build Coastguard Worker     }
6445*4bdc9457SAndroid Build Coastguard Worker   }
6446*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X24,inplace)6447*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X24, inplace) {
6448*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6449*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
6450*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6451*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6452*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6453*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6454*4bdc9457SAndroid Build Coastguard Worker     }
6455*4bdc9457SAndroid Build Coastguard Worker   }
6456*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6457*4bdc9457SAndroid Build Coastguard Worker 
6458*4bdc9457SAndroid Build Coastguard Worker 
6459*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X32,batch_eq_32)6460*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X32, batch_eq_32) {
6461*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6462*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6463*4bdc9457SAndroid Build Coastguard Worker       .batch_size(32)
6464*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6465*4bdc9457SAndroid Build Coastguard Worker   }
6466*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X32,batch_div_32)6467*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X32, batch_div_32) {
6468*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6469*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 64; batch_size < 320; batch_size += 32) {
6470*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6471*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6472*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6473*4bdc9457SAndroid Build Coastguard Worker     }
6474*4bdc9457SAndroid Build Coastguard Worker   }
6475*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X32,batch_lt_32)6476*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X32, batch_lt_32) {
6477*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6478*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 32; batch_size++) {
6479*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6480*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6481*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6482*4bdc9457SAndroid Build Coastguard Worker     }
6483*4bdc9457SAndroid Build Coastguard Worker   }
6484*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X32,batch_gt_32)6485*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X32, batch_gt_32) {
6486*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6487*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 33; batch_size < 64; batch_size++) {
6488*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6489*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6490*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6491*4bdc9457SAndroid Build Coastguard Worker     }
6492*4bdc9457SAndroid Build Coastguard Worker   }
6493*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X32,inplace)6494*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X32, inplace) {
6495*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6496*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 160; batch_size += 31) {
6497*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6498*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6499*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6500*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6501*4bdc9457SAndroid Build Coastguard Worker     }
6502*4bdc9457SAndroid Build Coastguard Worker   }
6503*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6504*4bdc9457SAndroid Build Coastguard Worker 
6505*4bdc9457SAndroid Build Coastguard Worker 
6506*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X40,batch_eq_40)6507*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X40, batch_eq_40) {
6508*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6509*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6510*4bdc9457SAndroid Build Coastguard Worker       .batch_size(40)
6511*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6512*4bdc9457SAndroid Build Coastguard Worker   }
6513*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X40,batch_div_40)6514*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X40, batch_div_40) {
6515*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6516*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 80; batch_size < 400; batch_size += 40) {
6517*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6518*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6519*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6520*4bdc9457SAndroid Build Coastguard Worker     }
6521*4bdc9457SAndroid Build Coastguard Worker   }
6522*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X40,batch_lt_40)6523*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X40, batch_lt_40) {
6524*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6525*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 40; batch_size++) {
6526*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6527*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6528*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6529*4bdc9457SAndroid Build Coastguard Worker     }
6530*4bdc9457SAndroid Build Coastguard Worker   }
6531*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X40,batch_gt_40)6532*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X40, batch_gt_40) {
6533*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6534*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 41; batch_size < 80; batch_size++) {
6535*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6536*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6537*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6538*4bdc9457SAndroid Build Coastguard Worker     }
6539*4bdc9457SAndroid Build Coastguard Worker   }
6540*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X40,inplace)6541*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X40, inplace) {
6542*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6543*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 200; batch_size += 39) {
6544*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6545*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6546*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6547*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6548*4bdc9457SAndroid Build Coastguard Worker     }
6549*4bdc9457SAndroid Build Coastguard Worker   }
6550*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6551*4bdc9457SAndroid Build Coastguard Worker 
6552*4bdc9457SAndroid Build Coastguard Worker 
6553*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X48,batch_eq_48)6554*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X48, batch_eq_48) {
6555*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6556*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6557*4bdc9457SAndroid Build Coastguard Worker       .batch_size(48)
6558*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6559*4bdc9457SAndroid Build Coastguard Worker   }
6560*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X48,batch_div_48)6561*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X48, batch_div_48) {
6562*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6563*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 96; batch_size < 480; batch_size += 48) {
6564*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6565*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6566*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6567*4bdc9457SAndroid Build Coastguard Worker     }
6568*4bdc9457SAndroid Build Coastguard Worker   }
6569*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X48,batch_lt_48)6570*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X48, batch_lt_48) {
6571*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6572*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 48; batch_size++) {
6573*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6574*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6575*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6576*4bdc9457SAndroid Build Coastguard Worker     }
6577*4bdc9457SAndroid Build Coastguard Worker   }
6578*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X48,batch_gt_48)6579*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X48, batch_gt_48) {
6580*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6581*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 49; batch_size < 96; batch_size++) {
6582*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6583*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6584*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6585*4bdc9457SAndroid Build Coastguard Worker     }
6586*4bdc9457SAndroid Build Coastguard Worker   }
6587*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X48,inplace)6588*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X48, inplace) {
6589*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6590*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 240; batch_size += 47) {
6591*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6592*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6593*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6594*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6595*4bdc9457SAndroid Build Coastguard Worker     }
6596*4bdc9457SAndroid Build Coastguard Worker   }
6597*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6598*4bdc9457SAndroid Build Coastguard Worker 
6599*4bdc9457SAndroid Build Coastguard Worker 
6600*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X56,batch_eq_56)6601*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X56, batch_eq_56) {
6602*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6603*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6604*4bdc9457SAndroid Build Coastguard Worker       .batch_size(56)
6605*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6606*4bdc9457SAndroid Build Coastguard Worker   }
6607*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X56,batch_div_56)6608*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X56, batch_div_56) {
6609*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6610*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 112; batch_size < 560; batch_size += 56) {
6611*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6612*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6613*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6614*4bdc9457SAndroid Build Coastguard Worker     }
6615*4bdc9457SAndroid Build Coastguard Worker   }
6616*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X56,batch_lt_56)6617*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X56, batch_lt_56) {
6618*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6619*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 56; batch_size++) {
6620*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6621*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6622*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6623*4bdc9457SAndroid Build Coastguard Worker     }
6624*4bdc9457SAndroid Build Coastguard Worker   }
6625*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X56,batch_gt_56)6626*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X56, batch_gt_56) {
6627*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6628*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 57; batch_size < 112; batch_size++) {
6629*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6630*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6631*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6632*4bdc9457SAndroid Build Coastguard Worker     }
6633*4bdc9457SAndroid Build Coastguard Worker   }
6634*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X56,inplace)6635*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X56, inplace) {
6636*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6637*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 280; batch_size += 55) {
6638*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6639*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6640*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6641*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6642*4bdc9457SAndroid Build Coastguard Worker     }
6643*4bdc9457SAndroid Build Coastguard Worker   }
6644*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6645*4bdc9457SAndroid Build Coastguard Worker 
6646*4bdc9457SAndroid Build Coastguard Worker 
6647*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X64,batch_eq_64)6648*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X64, batch_eq_64) {
6649*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6650*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6651*4bdc9457SAndroid Build Coastguard Worker       .batch_size(64)
6652*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6653*4bdc9457SAndroid Build Coastguard Worker   }
6654*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X64,batch_div_64)6655*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X64, batch_div_64) {
6656*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6657*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 128; batch_size < 640; batch_size += 64) {
6658*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6659*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6660*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6661*4bdc9457SAndroid Build Coastguard Worker     }
6662*4bdc9457SAndroid Build Coastguard Worker   }
6663*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X64,batch_lt_64)6664*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X64, batch_lt_64) {
6665*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6666*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 64; batch_size++) {
6667*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6668*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6669*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6670*4bdc9457SAndroid Build Coastguard Worker     }
6671*4bdc9457SAndroid Build Coastguard Worker   }
6672*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X64,batch_gt_64)6673*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X64, batch_gt_64) {
6674*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6675*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 65; batch_size < 128; batch_size++) {
6676*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6677*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6678*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6679*4bdc9457SAndroid Build Coastguard Worker     }
6680*4bdc9457SAndroid Build Coastguard Worker   }
6681*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X64,inplace)6682*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X64, inplace) {
6683*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6684*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 320; batch_size += 63) {
6685*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6686*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6687*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6688*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6689*4bdc9457SAndroid Build Coastguard Worker     }
6690*4bdc9457SAndroid Build Coastguard Worker   }
6691*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6692*4bdc9457SAndroid Build Coastguard Worker 
6693*4bdc9457SAndroid Build Coastguard Worker 
6694*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X72,batch_eq_72)6695*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X72, batch_eq_72) {
6696*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6697*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6698*4bdc9457SAndroid Build Coastguard Worker       .batch_size(72)
6699*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6700*4bdc9457SAndroid Build Coastguard Worker   }
6701*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X72,batch_div_72)6702*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X72, batch_div_72) {
6703*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6704*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 144; batch_size < 720; batch_size += 72) {
6705*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6706*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6707*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6708*4bdc9457SAndroid Build Coastguard Worker     }
6709*4bdc9457SAndroid Build Coastguard Worker   }
6710*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X72,batch_lt_72)6711*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X72, batch_lt_72) {
6712*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6713*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 72; batch_size++) {
6714*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6715*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6716*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6717*4bdc9457SAndroid Build Coastguard Worker     }
6718*4bdc9457SAndroid Build Coastguard Worker   }
6719*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X72,batch_gt_72)6720*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X72, batch_gt_72) {
6721*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6722*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 73; batch_size < 144; batch_size++) {
6723*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6724*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6725*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6726*4bdc9457SAndroid Build Coastguard Worker     }
6727*4bdc9457SAndroid Build Coastguard Worker   }
6728*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X72,inplace)6729*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X72, inplace) {
6730*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6731*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 360; batch_size += 71) {
6732*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6733*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6734*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6735*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6736*4bdc9457SAndroid Build Coastguard Worker     }
6737*4bdc9457SAndroid Build Coastguard Worker   }
6738*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6739*4bdc9457SAndroid Build Coastguard Worker 
6740*4bdc9457SAndroid Build Coastguard Worker 
6741*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X80,batch_eq_80)6742*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X80, batch_eq_80) {
6743*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6744*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6745*4bdc9457SAndroid Build Coastguard Worker       .batch_size(80)
6746*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6747*4bdc9457SAndroid Build Coastguard Worker   }
6748*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X80,batch_div_80)6749*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X80, batch_div_80) {
6750*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6751*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 160; batch_size < 800; batch_size += 80) {
6752*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6753*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6754*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6755*4bdc9457SAndroid Build Coastguard Worker     }
6756*4bdc9457SAndroid Build Coastguard Worker   }
6757*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X80,batch_lt_80)6758*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X80, batch_lt_80) {
6759*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6760*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 80; batch_size++) {
6761*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6762*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6763*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6764*4bdc9457SAndroid Build Coastguard Worker     }
6765*4bdc9457SAndroid Build Coastguard Worker   }
6766*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X80,batch_gt_80)6767*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X80, batch_gt_80) {
6768*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6769*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 81; batch_size < 160; batch_size++) {
6770*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6771*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6772*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6773*4bdc9457SAndroid Build Coastguard Worker     }
6774*4bdc9457SAndroid Build Coastguard Worker   }
6775*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X80,inplace)6776*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_DIV_X80, inplace) {
6777*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6778*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 400; batch_size += 79) {
6779*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6780*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6781*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6782*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_div_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6783*4bdc9457SAndroid Build Coastguard Worker     }
6784*4bdc9457SAndroid Build Coastguard Worker   }
6785*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6786*4bdc9457SAndroid Build Coastguard Worker 
6787*4bdc9457SAndroid Build Coastguard Worker 
6788*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X8,batch_eq_8)6789*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X8, batch_eq_8) {
6790*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6791*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6792*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
6793*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6794*4bdc9457SAndroid Build Coastguard Worker   }
6795*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X8,batch_div_8)6796*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X8, batch_div_8) {
6797*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6798*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
6799*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6800*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6801*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6802*4bdc9457SAndroid Build Coastguard Worker     }
6803*4bdc9457SAndroid Build Coastguard Worker   }
6804*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X8,batch_lt_8)6805*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X8, batch_lt_8) {
6806*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6807*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
6808*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6809*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6810*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6811*4bdc9457SAndroid Build Coastguard Worker     }
6812*4bdc9457SAndroid Build Coastguard Worker   }
6813*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X8,batch_gt_8)6814*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X8, batch_gt_8) {
6815*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6816*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
6817*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6818*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6819*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6820*4bdc9457SAndroid Build Coastguard Worker     }
6821*4bdc9457SAndroid Build Coastguard Worker   }
6822*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X8,inplace)6823*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X8, inplace) {
6824*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6825*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
6826*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6827*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6828*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6829*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6830*4bdc9457SAndroid Build Coastguard Worker     }
6831*4bdc9457SAndroid Build Coastguard Worker   }
6832*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6833*4bdc9457SAndroid Build Coastguard Worker 
6834*4bdc9457SAndroid Build Coastguard Worker 
6835*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X16,batch_eq_16)6836*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X16, batch_eq_16) {
6837*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6838*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6839*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
6840*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6841*4bdc9457SAndroid Build Coastguard Worker   }
6842*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X16,batch_div_16)6843*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X16, batch_div_16) {
6844*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6845*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
6846*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6847*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6848*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6849*4bdc9457SAndroid Build Coastguard Worker     }
6850*4bdc9457SAndroid Build Coastguard Worker   }
6851*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X16,batch_lt_16)6852*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X16, batch_lt_16) {
6853*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6854*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
6855*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6856*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6857*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6858*4bdc9457SAndroid Build Coastguard Worker     }
6859*4bdc9457SAndroid Build Coastguard Worker   }
6860*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X16,batch_gt_16)6861*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X16, batch_gt_16) {
6862*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6863*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
6864*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6865*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6866*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6867*4bdc9457SAndroid Build Coastguard Worker     }
6868*4bdc9457SAndroid Build Coastguard Worker   }
6869*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X16,inplace)6870*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X16, inplace) {
6871*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6872*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
6873*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6874*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6875*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6876*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6877*4bdc9457SAndroid Build Coastguard Worker     }
6878*4bdc9457SAndroid Build Coastguard Worker   }
6879*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6880*4bdc9457SAndroid Build Coastguard Worker 
6881*4bdc9457SAndroid Build Coastguard Worker 
6882*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X24,batch_eq_24)6883*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X24, batch_eq_24) {
6884*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6885*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6886*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
6887*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6888*4bdc9457SAndroid Build Coastguard Worker   }
6889*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X24,batch_div_24)6890*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X24, batch_div_24) {
6891*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6892*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
6893*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6894*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6895*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6896*4bdc9457SAndroid Build Coastguard Worker     }
6897*4bdc9457SAndroid Build Coastguard Worker   }
6898*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X24,batch_lt_24)6899*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X24, batch_lt_24) {
6900*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6901*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
6902*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6903*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6904*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6905*4bdc9457SAndroid Build Coastguard Worker     }
6906*4bdc9457SAndroid Build Coastguard Worker   }
6907*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X24,batch_gt_24)6908*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X24, batch_gt_24) {
6909*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6910*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
6911*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6912*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6913*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6914*4bdc9457SAndroid Build Coastguard Worker     }
6915*4bdc9457SAndroid Build Coastguard Worker   }
6916*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X24,inplace)6917*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X24, inplace) {
6918*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6919*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
6920*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6921*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6922*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6923*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6924*4bdc9457SAndroid Build Coastguard Worker     }
6925*4bdc9457SAndroid Build Coastguard Worker   }
6926*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6927*4bdc9457SAndroid Build Coastguard Worker 
6928*4bdc9457SAndroid Build Coastguard Worker 
6929*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X32,batch_eq_32)6930*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X32, batch_eq_32) {
6931*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6932*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6933*4bdc9457SAndroid Build Coastguard Worker       .batch_size(32)
6934*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6935*4bdc9457SAndroid Build Coastguard Worker   }
6936*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X32,batch_div_32)6937*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X32, batch_div_32) {
6938*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6939*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 64; batch_size < 320; batch_size += 32) {
6940*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6941*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6942*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6943*4bdc9457SAndroid Build Coastguard Worker     }
6944*4bdc9457SAndroid Build Coastguard Worker   }
6945*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X32,batch_lt_32)6946*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X32, batch_lt_32) {
6947*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6948*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 32; batch_size++) {
6949*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6950*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6951*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6952*4bdc9457SAndroid Build Coastguard Worker     }
6953*4bdc9457SAndroid Build Coastguard Worker   }
6954*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X32,batch_gt_32)6955*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X32, batch_gt_32) {
6956*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6957*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 33; batch_size < 64; batch_size++) {
6958*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6959*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6960*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6961*4bdc9457SAndroid Build Coastguard Worker     }
6962*4bdc9457SAndroid Build Coastguard Worker   }
6963*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X32,inplace)6964*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X32, inplace) {
6965*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6966*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 160; batch_size += 31) {
6967*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6968*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6969*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
6970*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6971*4bdc9457SAndroid Build Coastguard Worker     }
6972*4bdc9457SAndroid Build Coastguard Worker   }
6973*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
6974*4bdc9457SAndroid Build Coastguard Worker 
6975*4bdc9457SAndroid Build Coastguard Worker 
6976*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X40,batch_eq_40)6977*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X40, batch_eq_40) {
6978*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6979*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
6980*4bdc9457SAndroid Build Coastguard Worker       .batch_size(40)
6981*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6982*4bdc9457SAndroid Build Coastguard Worker   }
6983*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X40,batch_div_40)6984*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X40, batch_div_40) {
6985*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6986*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 80; batch_size < 400; batch_size += 40) {
6987*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6988*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6989*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6990*4bdc9457SAndroid Build Coastguard Worker     }
6991*4bdc9457SAndroid Build Coastguard Worker   }
6992*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X40,batch_lt_40)6993*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X40, batch_lt_40) {
6994*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
6995*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 40; batch_size++) {
6996*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
6997*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
6998*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
6999*4bdc9457SAndroid Build Coastguard Worker     }
7000*4bdc9457SAndroid Build Coastguard Worker   }
7001*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X40,batch_gt_40)7002*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X40, batch_gt_40) {
7003*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7004*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 41; batch_size < 80; batch_size++) {
7005*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7006*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7007*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7008*4bdc9457SAndroid Build Coastguard Worker     }
7009*4bdc9457SAndroid Build Coastguard Worker   }
7010*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X40,inplace)7011*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X40, inplace) {
7012*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7013*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 200; batch_size += 39) {
7014*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7015*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7016*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7017*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7018*4bdc9457SAndroid Build Coastguard Worker     }
7019*4bdc9457SAndroid Build Coastguard Worker   }
7020*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7021*4bdc9457SAndroid Build Coastguard Worker 
7022*4bdc9457SAndroid Build Coastguard Worker 
7023*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X48,batch_eq_48)7024*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X48, batch_eq_48) {
7025*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7026*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7027*4bdc9457SAndroid Build Coastguard Worker       .batch_size(48)
7028*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7029*4bdc9457SAndroid Build Coastguard Worker   }
7030*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X48,batch_div_48)7031*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X48, batch_div_48) {
7032*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7033*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 96; batch_size < 480; batch_size += 48) {
7034*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7035*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7036*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7037*4bdc9457SAndroid Build Coastguard Worker     }
7038*4bdc9457SAndroid Build Coastguard Worker   }
7039*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X48,batch_lt_48)7040*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X48, batch_lt_48) {
7041*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7042*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 48; batch_size++) {
7043*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7044*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7045*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7046*4bdc9457SAndroid Build Coastguard Worker     }
7047*4bdc9457SAndroid Build Coastguard Worker   }
7048*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X48,batch_gt_48)7049*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X48, batch_gt_48) {
7050*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7051*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 49; batch_size < 96; batch_size++) {
7052*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7053*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7054*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7055*4bdc9457SAndroid Build Coastguard Worker     }
7056*4bdc9457SAndroid Build Coastguard Worker   }
7057*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X48,inplace)7058*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X48, inplace) {
7059*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7060*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 240; batch_size += 47) {
7061*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7062*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7063*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7064*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7065*4bdc9457SAndroid Build Coastguard Worker     }
7066*4bdc9457SAndroid Build Coastguard Worker   }
7067*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7068*4bdc9457SAndroid Build Coastguard Worker 
7069*4bdc9457SAndroid Build Coastguard Worker 
7070*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X56,batch_eq_56)7071*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X56, batch_eq_56) {
7072*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7073*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7074*4bdc9457SAndroid Build Coastguard Worker       .batch_size(56)
7075*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7076*4bdc9457SAndroid Build Coastguard Worker   }
7077*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X56,batch_div_56)7078*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X56, batch_div_56) {
7079*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7080*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 112; batch_size < 560; batch_size += 56) {
7081*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7082*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7083*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7084*4bdc9457SAndroid Build Coastguard Worker     }
7085*4bdc9457SAndroid Build Coastguard Worker   }
7086*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X56,batch_lt_56)7087*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X56, batch_lt_56) {
7088*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7089*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 56; batch_size++) {
7090*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7091*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7092*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7093*4bdc9457SAndroid Build Coastguard Worker     }
7094*4bdc9457SAndroid Build Coastguard Worker   }
7095*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X56,batch_gt_56)7096*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X56, batch_gt_56) {
7097*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7098*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 57; batch_size < 112; batch_size++) {
7099*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7100*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7101*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7102*4bdc9457SAndroid Build Coastguard Worker     }
7103*4bdc9457SAndroid Build Coastguard Worker   }
7104*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X56,inplace)7105*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X56, inplace) {
7106*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7107*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 280; batch_size += 55) {
7108*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7109*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7110*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7111*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7112*4bdc9457SAndroid Build Coastguard Worker     }
7113*4bdc9457SAndroid Build Coastguard Worker   }
7114*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7115*4bdc9457SAndroid Build Coastguard Worker 
7116*4bdc9457SAndroid Build Coastguard Worker 
7117*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X64,batch_eq_64)7118*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X64, batch_eq_64) {
7119*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7120*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7121*4bdc9457SAndroid Build Coastguard Worker       .batch_size(64)
7122*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7123*4bdc9457SAndroid Build Coastguard Worker   }
7124*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X64,batch_div_64)7125*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X64, batch_div_64) {
7126*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7127*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 128; batch_size < 640; batch_size += 64) {
7128*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7129*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7130*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7131*4bdc9457SAndroid Build Coastguard Worker     }
7132*4bdc9457SAndroid Build Coastguard Worker   }
7133*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X64,batch_lt_64)7134*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X64, batch_lt_64) {
7135*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7136*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 64; batch_size++) {
7137*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7138*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7139*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7140*4bdc9457SAndroid Build Coastguard Worker     }
7141*4bdc9457SAndroid Build Coastguard Worker   }
7142*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X64,batch_gt_64)7143*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X64, batch_gt_64) {
7144*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7145*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 65; batch_size < 128; batch_size++) {
7146*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7147*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7148*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7149*4bdc9457SAndroid Build Coastguard Worker     }
7150*4bdc9457SAndroid Build Coastguard Worker   }
7151*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X64,inplace)7152*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X64, inplace) {
7153*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7154*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 320; batch_size += 63) {
7155*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7156*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7157*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7158*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7159*4bdc9457SAndroid Build Coastguard Worker     }
7160*4bdc9457SAndroid Build Coastguard Worker   }
7161*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7162*4bdc9457SAndroid Build Coastguard Worker 
7163*4bdc9457SAndroid Build Coastguard Worker 
7164*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X72,batch_eq_72)7165*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X72, batch_eq_72) {
7166*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7167*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7168*4bdc9457SAndroid Build Coastguard Worker       .batch_size(72)
7169*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7170*4bdc9457SAndroid Build Coastguard Worker   }
7171*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X72,batch_div_72)7172*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X72, batch_div_72) {
7173*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7174*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 144; batch_size < 720; batch_size += 72) {
7175*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7176*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7177*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7178*4bdc9457SAndroid Build Coastguard Worker     }
7179*4bdc9457SAndroid Build Coastguard Worker   }
7180*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X72,batch_lt_72)7181*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X72, batch_lt_72) {
7182*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7183*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 72; batch_size++) {
7184*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7185*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7186*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7187*4bdc9457SAndroid Build Coastguard Worker     }
7188*4bdc9457SAndroid Build Coastguard Worker   }
7189*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X72,batch_gt_72)7190*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X72, batch_gt_72) {
7191*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7192*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 73; batch_size < 144; batch_size++) {
7193*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7194*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7195*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7196*4bdc9457SAndroid Build Coastguard Worker     }
7197*4bdc9457SAndroid Build Coastguard Worker   }
7198*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X72,inplace)7199*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X72, inplace) {
7200*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7201*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 360; batch_size += 71) {
7202*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7203*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7204*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7205*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7206*4bdc9457SAndroid Build Coastguard Worker     }
7207*4bdc9457SAndroid Build Coastguard Worker   }
7208*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7209*4bdc9457SAndroid Build Coastguard Worker 
7210*4bdc9457SAndroid Build Coastguard Worker 
7211*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X80,batch_eq_80)7212*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X80, batch_eq_80) {
7213*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7214*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7215*4bdc9457SAndroid Build Coastguard Worker       .batch_size(80)
7216*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7217*4bdc9457SAndroid Build Coastguard Worker   }
7218*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X80,batch_div_80)7219*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X80, batch_div_80) {
7220*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7221*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 160; batch_size < 800; batch_size += 80) {
7222*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7223*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7224*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7225*4bdc9457SAndroid Build Coastguard Worker     }
7226*4bdc9457SAndroid Build Coastguard Worker   }
7227*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X80,batch_lt_80)7228*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X80, batch_lt_80) {
7229*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7230*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 80; batch_size++) {
7231*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7232*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7233*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7234*4bdc9457SAndroid Build Coastguard Worker     }
7235*4bdc9457SAndroid Build Coastguard Worker   }
7236*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X80,batch_gt_80)7237*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X80, batch_gt_80) {
7238*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7239*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 81; batch_size < 160; batch_size++) {
7240*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7241*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7242*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7243*4bdc9457SAndroid Build Coastguard Worker     }
7244*4bdc9457SAndroid Build Coastguard Worker   }
7245*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X80,inplace)7246*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR1FMA_X80, inplace) {
7247*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7248*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 400; batch_size += 79) {
7249*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7250*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7251*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7252*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr1fma_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7253*4bdc9457SAndroid Build Coastguard Worker     }
7254*4bdc9457SAndroid Build Coastguard Worker   }
7255*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7256*4bdc9457SAndroid Build Coastguard Worker 
7257*4bdc9457SAndroid Build Coastguard Worker 
7258*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X8,batch_eq_8)7259*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X8, batch_eq_8) {
7260*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7261*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7262*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
7263*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7264*4bdc9457SAndroid Build Coastguard Worker   }
7265*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X8,batch_div_8)7266*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X8, batch_div_8) {
7267*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7268*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
7269*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7270*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7271*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7272*4bdc9457SAndroid Build Coastguard Worker     }
7273*4bdc9457SAndroid Build Coastguard Worker   }
7274*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X8,batch_lt_8)7275*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X8, batch_lt_8) {
7276*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7277*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
7278*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7279*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7280*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7281*4bdc9457SAndroid Build Coastguard Worker     }
7282*4bdc9457SAndroid Build Coastguard Worker   }
7283*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X8,batch_gt_8)7284*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X8, batch_gt_8) {
7285*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7286*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
7287*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7288*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7289*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7290*4bdc9457SAndroid Build Coastguard Worker     }
7291*4bdc9457SAndroid Build Coastguard Worker   }
7292*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X8,inplace)7293*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X8, inplace) {
7294*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7295*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
7296*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7297*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7298*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7299*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x8, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7300*4bdc9457SAndroid Build Coastguard Worker     }
7301*4bdc9457SAndroid Build Coastguard Worker   }
7302*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7303*4bdc9457SAndroid Build Coastguard Worker 
7304*4bdc9457SAndroid Build Coastguard Worker 
7305*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X16,batch_eq_16)7306*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X16, batch_eq_16) {
7307*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7308*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7309*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
7310*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7311*4bdc9457SAndroid Build Coastguard Worker   }
7312*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X16,batch_div_16)7313*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X16, batch_div_16) {
7314*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7315*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
7316*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7317*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7318*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7319*4bdc9457SAndroid Build Coastguard Worker     }
7320*4bdc9457SAndroid Build Coastguard Worker   }
7321*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X16,batch_lt_16)7322*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X16, batch_lt_16) {
7323*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7324*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
7325*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7326*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7327*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7328*4bdc9457SAndroid Build Coastguard Worker     }
7329*4bdc9457SAndroid Build Coastguard Worker   }
7330*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X16,batch_gt_16)7331*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X16, batch_gt_16) {
7332*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7333*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
7334*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7335*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7336*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7337*4bdc9457SAndroid Build Coastguard Worker     }
7338*4bdc9457SAndroid Build Coastguard Worker   }
7339*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X16,inplace)7340*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X16, inplace) {
7341*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7342*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
7343*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7344*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7345*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7346*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x16, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7347*4bdc9457SAndroid Build Coastguard Worker     }
7348*4bdc9457SAndroid Build Coastguard Worker   }
7349*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7350*4bdc9457SAndroid Build Coastguard Worker 
7351*4bdc9457SAndroid Build Coastguard Worker 
7352*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X24,batch_eq_24)7353*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X24, batch_eq_24) {
7354*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7355*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7356*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
7357*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7358*4bdc9457SAndroid Build Coastguard Worker   }
7359*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X24,batch_div_24)7360*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X24, batch_div_24) {
7361*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7362*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
7363*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7364*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7365*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7366*4bdc9457SAndroid Build Coastguard Worker     }
7367*4bdc9457SAndroid Build Coastguard Worker   }
7368*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X24,batch_lt_24)7369*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X24, batch_lt_24) {
7370*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7371*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
7372*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7373*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7374*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7375*4bdc9457SAndroid Build Coastguard Worker     }
7376*4bdc9457SAndroid Build Coastguard Worker   }
7377*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X24,batch_gt_24)7378*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X24, batch_gt_24) {
7379*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7380*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
7381*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7382*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7383*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7384*4bdc9457SAndroid Build Coastguard Worker     }
7385*4bdc9457SAndroid Build Coastguard Worker   }
7386*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X24,inplace)7387*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X24, inplace) {
7388*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7389*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
7390*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7391*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7392*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7393*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x24, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7394*4bdc9457SAndroid Build Coastguard Worker     }
7395*4bdc9457SAndroid Build Coastguard Worker   }
7396*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7397*4bdc9457SAndroid Build Coastguard Worker 
7398*4bdc9457SAndroid Build Coastguard Worker 
7399*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X32,batch_eq_32)7400*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X32, batch_eq_32) {
7401*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7402*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7403*4bdc9457SAndroid Build Coastguard Worker       .batch_size(32)
7404*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7405*4bdc9457SAndroid Build Coastguard Worker   }
7406*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X32,batch_div_32)7407*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X32, batch_div_32) {
7408*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7409*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 64; batch_size < 320; batch_size += 32) {
7410*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7411*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7412*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7413*4bdc9457SAndroid Build Coastguard Worker     }
7414*4bdc9457SAndroid Build Coastguard Worker   }
7415*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X32,batch_lt_32)7416*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X32, batch_lt_32) {
7417*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7418*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 32; batch_size++) {
7419*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7420*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7421*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7422*4bdc9457SAndroid Build Coastguard Worker     }
7423*4bdc9457SAndroid Build Coastguard Worker   }
7424*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X32,batch_gt_32)7425*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X32, batch_gt_32) {
7426*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7427*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 33; batch_size < 64; batch_size++) {
7428*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7429*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7430*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7431*4bdc9457SAndroid Build Coastguard Worker     }
7432*4bdc9457SAndroid Build Coastguard Worker   }
7433*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X32,inplace)7434*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X32, inplace) {
7435*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7436*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 160; batch_size += 31) {
7437*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7438*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7439*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7440*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x32, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7441*4bdc9457SAndroid Build Coastguard Worker     }
7442*4bdc9457SAndroid Build Coastguard Worker   }
7443*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7444*4bdc9457SAndroid Build Coastguard Worker 
7445*4bdc9457SAndroid Build Coastguard Worker 
7446*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X40,batch_eq_40)7447*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X40, batch_eq_40) {
7448*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7449*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7450*4bdc9457SAndroid Build Coastguard Worker       .batch_size(40)
7451*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7452*4bdc9457SAndroid Build Coastguard Worker   }
7453*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X40,batch_div_40)7454*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X40, batch_div_40) {
7455*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7456*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 80; batch_size < 400; batch_size += 40) {
7457*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7458*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7459*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7460*4bdc9457SAndroid Build Coastguard Worker     }
7461*4bdc9457SAndroid Build Coastguard Worker   }
7462*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X40,batch_lt_40)7463*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X40, batch_lt_40) {
7464*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7465*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 40; batch_size++) {
7466*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7467*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7468*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7469*4bdc9457SAndroid Build Coastguard Worker     }
7470*4bdc9457SAndroid Build Coastguard Worker   }
7471*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X40,batch_gt_40)7472*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X40, batch_gt_40) {
7473*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7474*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 41; batch_size < 80; batch_size++) {
7475*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7476*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7477*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7478*4bdc9457SAndroid Build Coastguard Worker     }
7479*4bdc9457SAndroid Build Coastguard Worker   }
7480*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X40,inplace)7481*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X40, inplace) {
7482*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7483*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 200; batch_size += 39) {
7484*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7485*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7486*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7487*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x40, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7488*4bdc9457SAndroid Build Coastguard Worker     }
7489*4bdc9457SAndroid Build Coastguard Worker   }
7490*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7491*4bdc9457SAndroid Build Coastguard Worker 
7492*4bdc9457SAndroid Build Coastguard Worker 
7493*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X48,batch_eq_48)7494*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X48, batch_eq_48) {
7495*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7496*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7497*4bdc9457SAndroid Build Coastguard Worker       .batch_size(48)
7498*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7499*4bdc9457SAndroid Build Coastguard Worker   }
7500*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X48,batch_div_48)7501*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X48, batch_div_48) {
7502*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7503*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 96; batch_size < 480; batch_size += 48) {
7504*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7505*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7506*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7507*4bdc9457SAndroid Build Coastguard Worker     }
7508*4bdc9457SAndroid Build Coastguard Worker   }
7509*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X48,batch_lt_48)7510*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X48, batch_lt_48) {
7511*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7512*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 48; batch_size++) {
7513*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7514*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7515*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7516*4bdc9457SAndroid Build Coastguard Worker     }
7517*4bdc9457SAndroid Build Coastguard Worker   }
7518*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X48,batch_gt_48)7519*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X48, batch_gt_48) {
7520*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7521*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 49; batch_size < 96; batch_size++) {
7522*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7523*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7524*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7525*4bdc9457SAndroid Build Coastguard Worker     }
7526*4bdc9457SAndroid Build Coastguard Worker   }
7527*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X48,inplace)7528*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X48, inplace) {
7529*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7530*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 240; batch_size += 47) {
7531*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7532*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7533*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7534*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x48, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7535*4bdc9457SAndroid Build Coastguard Worker     }
7536*4bdc9457SAndroid Build Coastguard Worker   }
7537*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7538*4bdc9457SAndroid Build Coastguard Worker 
7539*4bdc9457SAndroid Build Coastguard Worker 
7540*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X56,batch_eq_56)7541*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X56, batch_eq_56) {
7542*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7543*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7544*4bdc9457SAndroid Build Coastguard Worker       .batch_size(56)
7545*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7546*4bdc9457SAndroid Build Coastguard Worker   }
7547*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X56,batch_div_56)7548*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X56, batch_div_56) {
7549*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7550*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 112; batch_size < 560; batch_size += 56) {
7551*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7552*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7553*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7554*4bdc9457SAndroid Build Coastguard Worker     }
7555*4bdc9457SAndroid Build Coastguard Worker   }
7556*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X56,batch_lt_56)7557*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X56, batch_lt_56) {
7558*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7559*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 56; batch_size++) {
7560*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7561*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7562*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7563*4bdc9457SAndroid Build Coastguard Worker     }
7564*4bdc9457SAndroid Build Coastguard Worker   }
7565*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X56,batch_gt_56)7566*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X56, batch_gt_56) {
7567*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7568*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 57; batch_size < 112; batch_size++) {
7569*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7570*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7571*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7572*4bdc9457SAndroid Build Coastguard Worker     }
7573*4bdc9457SAndroid Build Coastguard Worker   }
7574*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X56,inplace)7575*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X56, inplace) {
7576*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7577*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 280; batch_size += 55) {
7578*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7579*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7580*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7581*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x56, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7582*4bdc9457SAndroid Build Coastguard Worker     }
7583*4bdc9457SAndroid Build Coastguard Worker   }
7584*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7585*4bdc9457SAndroid Build Coastguard Worker 
7586*4bdc9457SAndroid Build Coastguard Worker 
7587*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X64,batch_eq_64)7588*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X64, batch_eq_64) {
7589*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7590*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7591*4bdc9457SAndroid Build Coastguard Worker       .batch_size(64)
7592*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7593*4bdc9457SAndroid Build Coastguard Worker   }
7594*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X64,batch_div_64)7595*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X64, batch_div_64) {
7596*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7597*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 128; batch_size < 640; batch_size += 64) {
7598*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7599*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7600*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7601*4bdc9457SAndroid Build Coastguard Worker     }
7602*4bdc9457SAndroid Build Coastguard Worker   }
7603*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X64,batch_lt_64)7604*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X64, batch_lt_64) {
7605*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7606*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 64; batch_size++) {
7607*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7608*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7609*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7610*4bdc9457SAndroid Build Coastguard Worker     }
7611*4bdc9457SAndroid Build Coastguard Worker   }
7612*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X64,batch_gt_64)7613*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X64, batch_gt_64) {
7614*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7615*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 65; batch_size < 128; batch_size++) {
7616*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7617*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7618*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7619*4bdc9457SAndroid Build Coastguard Worker     }
7620*4bdc9457SAndroid Build Coastguard Worker   }
7621*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X64,inplace)7622*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X64, inplace) {
7623*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7624*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 320; batch_size += 63) {
7625*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7626*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7627*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7628*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x64, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7629*4bdc9457SAndroid Build Coastguard Worker     }
7630*4bdc9457SAndroid Build Coastguard Worker   }
7631*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7632*4bdc9457SAndroid Build Coastguard Worker 
7633*4bdc9457SAndroid Build Coastguard Worker 
7634*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X72,batch_eq_72)7635*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X72, batch_eq_72) {
7636*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7637*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7638*4bdc9457SAndroid Build Coastguard Worker       .batch_size(72)
7639*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7640*4bdc9457SAndroid Build Coastguard Worker   }
7641*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X72,batch_div_72)7642*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X72, batch_div_72) {
7643*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7644*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 144; batch_size < 720; batch_size += 72) {
7645*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7646*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7647*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7648*4bdc9457SAndroid Build Coastguard Worker     }
7649*4bdc9457SAndroid Build Coastguard Worker   }
7650*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X72,batch_lt_72)7651*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X72, batch_lt_72) {
7652*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7653*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 72; batch_size++) {
7654*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7655*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7656*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7657*4bdc9457SAndroid Build Coastguard Worker     }
7658*4bdc9457SAndroid Build Coastguard Worker   }
7659*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X72,batch_gt_72)7660*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X72, batch_gt_72) {
7661*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7662*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 73; batch_size < 144; batch_size++) {
7663*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7664*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7665*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7666*4bdc9457SAndroid Build Coastguard Worker     }
7667*4bdc9457SAndroid Build Coastguard Worker   }
7668*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X72,inplace)7669*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X72, inplace) {
7670*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7671*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 360; batch_size += 71) {
7672*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7673*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7674*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7675*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x72, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7676*4bdc9457SAndroid Build Coastguard Worker     }
7677*4bdc9457SAndroid Build Coastguard Worker   }
7678*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7679*4bdc9457SAndroid Build Coastguard Worker 
7680*4bdc9457SAndroid Build Coastguard Worker 
7681*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X80,batch_eq_80)7682*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X80, batch_eq_80) {
7683*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7684*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7685*4bdc9457SAndroid Build Coastguard Worker       .batch_size(80)
7686*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7687*4bdc9457SAndroid Build Coastguard Worker   }
7688*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X80,batch_div_80)7689*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X80, batch_div_80) {
7690*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7691*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 160; batch_size < 800; batch_size += 80) {
7692*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7693*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7694*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7695*4bdc9457SAndroid Build Coastguard Worker     }
7696*4bdc9457SAndroid Build Coastguard Worker   }
7697*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X80,batch_lt_80)7698*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X80, batch_lt_80) {
7699*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7700*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 80; batch_size++) {
7701*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7702*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7703*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7704*4bdc9457SAndroid Build Coastguard Worker     }
7705*4bdc9457SAndroid Build Coastguard Worker   }
7706*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X80,batch_gt_80)7707*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X80, batch_gt_80) {
7708*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7709*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 81; batch_size < 160; batch_size++) {
7710*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7711*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7712*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7713*4bdc9457SAndroid Build Coastguard Worker     }
7714*4bdc9457SAndroid Build Coastguard Worker   }
7715*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X80,inplace)7716*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX2_RR1_P5_NR2FMA_X80, inplace) {
7717*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX2;
7718*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 400; batch_size += 79) {
7719*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7720*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7721*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7722*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx2_rr1_p5_nr2fma_x80, xnn_init_f32_sigmoid_avx2_rr1_p5_params);
7723*4bdc9457SAndroid Build Coastguard Worker     }
7724*4bdc9457SAndroid Build Coastguard Worker   }
7725*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7726*4bdc9457SAndroid Build Coastguard Worker 
7727*4bdc9457SAndroid Build Coastguard Worker 
7728*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X16,batch_eq_16)7729*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X16, batch_eq_16) {
7730*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7731*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7732*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
7733*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7734*4bdc9457SAndroid Build Coastguard Worker   }
7735*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X16,batch_div_16)7736*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X16, batch_div_16) {
7737*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7738*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
7739*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7740*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7741*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7742*4bdc9457SAndroid Build Coastguard Worker     }
7743*4bdc9457SAndroid Build Coastguard Worker   }
7744*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X16,batch_lt_16)7745*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X16, batch_lt_16) {
7746*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7747*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
7748*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7749*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7750*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7751*4bdc9457SAndroid Build Coastguard Worker     }
7752*4bdc9457SAndroid Build Coastguard Worker   }
7753*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X16,batch_gt_16)7754*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X16, batch_gt_16) {
7755*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7756*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
7757*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7758*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7759*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7760*4bdc9457SAndroid Build Coastguard Worker     }
7761*4bdc9457SAndroid Build Coastguard Worker   }
7762*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X16,inplace)7763*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X16, inplace) {
7764*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7765*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
7766*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7767*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7768*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7769*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7770*4bdc9457SAndroid Build Coastguard Worker     }
7771*4bdc9457SAndroid Build Coastguard Worker   }
7772*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7773*4bdc9457SAndroid Build Coastguard Worker 
7774*4bdc9457SAndroid Build Coastguard Worker 
7775*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X32,batch_eq_32)7776*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X32, batch_eq_32) {
7777*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7778*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7779*4bdc9457SAndroid Build Coastguard Worker       .batch_size(32)
7780*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7781*4bdc9457SAndroid Build Coastguard Worker   }
7782*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X32,batch_div_32)7783*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X32, batch_div_32) {
7784*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7785*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 64; batch_size < 320; batch_size += 32) {
7786*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7787*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7788*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7789*4bdc9457SAndroid Build Coastguard Worker     }
7790*4bdc9457SAndroid Build Coastguard Worker   }
7791*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X32,batch_lt_32)7792*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X32, batch_lt_32) {
7793*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7794*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 32; batch_size++) {
7795*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7796*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7797*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7798*4bdc9457SAndroid Build Coastguard Worker     }
7799*4bdc9457SAndroid Build Coastguard Worker   }
7800*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X32,batch_gt_32)7801*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X32, batch_gt_32) {
7802*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7803*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 33; batch_size < 64; batch_size++) {
7804*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7805*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7806*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7807*4bdc9457SAndroid Build Coastguard Worker     }
7808*4bdc9457SAndroid Build Coastguard Worker   }
7809*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X32,inplace)7810*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X32, inplace) {
7811*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7812*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 160; batch_size += 31) {
7813*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7814*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7815*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7816*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7817*4bdc9457SAndroid Build Coastguard Worker     }
7818*4bdc9457SAndroid Build Coastguard Worker   }
7819*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7820*4bdc9457SAndroid Build Coastguard Worker 
7821*4bdc9457SAndroid Build Coastguard Worker 
7822*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X48,batch_eq_48)7823*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X48, batch_eq_48) {
7824*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7825*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7826*4bdc9457SAndroid Build Coastguard Worker       .batch_size(48)
7827*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7828*4bdc9457SAndroid Build Coastguard Worker   }
7829*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X48,batch_div_48)7830*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X48, batch_div_48) {
7831*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7832*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 96; batch_size < 480; batch_size += 48) {
7833*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7834*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7835*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7836*4bdc9457SAndroid Build Coastguard Worker     }
7837*4bdc9457SAndroid Build Coastguard Worker   }
7838*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X48,batch_lt_48)7839*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X48, batch_lt_48) {
7840*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7841*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 48; batch_size++) {
7842*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7843*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7844*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7845*4bdc9457SAndroid Build Coastguard Worker     }
7846*4bdc9457SAndroid Build Coastguard Worker   }
7847*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X48,batch_gt_48)7848*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X48, batch_gt_48) {
7849*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7850*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 49; batch_size < 96; batch_size++) {
7851*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7852*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7853*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7854*4bdc9457SAndroid Build Coastguard Worker     }
7855*4bdc9457SAndroid Build Coastguard Worker   }
7856*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X48,inplace)7857*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X48, inplace) {
7858*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7859*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 240; batch_size += 47) {
7860*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7861*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7862*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7863*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7864*4bdc9457SAndroid Build Coastguard Worker     }
7865*4bdc9457SAndroid Build Coastguard Worker   }
7866*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7867*4bdc9457SAndroid Build Coastguard Worker 
7868*4bdc9457SAndroid Build Coastguard Worker 
7869*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X64,batch_eq_64)7870*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X64, batch_eq_64) {
7871*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7872*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7873*4bdc9457SAndroid Build Coastguard Worker       .batch_size(64)
7874*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7875*4bdc9457SAndroid Build Coastguard Worker   }
7876*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X64,batch_div_64)7877*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X64, batch_div_64) {
7878*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7879*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 128; batch_size < 640; batch_size += 64) {
7880*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7881*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7882*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7883*4bdc9457SAndroid Build Coastguard Worker     }
7884*4bdc9457SAndroid Build Coastguard Worker   }
7885*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X64,batch_lt_64)7886*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X64, batch_lt_64) {
7887*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7888*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 64; batch_size++) {
7889*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7890*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7891*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7892*4bdc9457SAndroid Build Coastguard Worker     }
7893*4bdc9457SAndroid Build Coastguard Worker   }
7894*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X64,batch_gt_64)7895*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X64, batch_gt_64) {
7896*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7897*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 65; batch_size < 128; batch_size++) {
7898*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7899*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7900*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7901*4bdc9457SAndroid Build Coastguard Worker     }
7902*4bdc9457SAndroid Build Coastguard Worker   }
7903*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X64,inplace)7904*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X64, inplace) {
7905*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7906*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 320; batch_size += 63) {
7907*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7908*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7909*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7910*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7911*4bdc9457SAndroid Build Coastguard Worker     }
7912*4bdc9457SAndroid Build Coastguard Worker   }
7913*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7914*4bdc9457SAndroid Build Coastguard Worker 
7915*4bdc9457SAndroid Build Coastguard Worker 
7916*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X80,batch_eq_80)7917*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X80, batch_eq_80) {
7918*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7919*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7920*4bdc9457SAndroid Build Coastguard Worker       .batch_size(80)
7921*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7922*4bdc9457SAndroid Build Coastguard Worker   }
7923*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X80,batch_div_80)7924*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X80, batch_div_80) {
7925*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7926*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 160; batch_size < 800; batch_size += 80) {
7927*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7928*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7929*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7930*4bdc9457SAndroid Build Coastguard Worker     }
7931*4bdc9457SAndroid Build Coastguard Worker   }
7932*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X80,batch_lt_80)7933*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X80, batch_lt_80) {
7934*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7935*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 80; batch_size++) {
7936*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7937*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7938*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7939*4bdc9457SAndroid Build Coastguard Worker     }
7940*4bdc9457SAndroid Build Coastguard Worker   }
7941*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X80,batch_gt_80)7942*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X80, batch_gt_80) {
7943*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7944*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 81; batch_size < 160; batch_size++) {
7945*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7946*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7947*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7948*4bdc9457SAndroid Build Coastguard Worker     }
7949*4bdc9457SAndroid Build Coastguard Worker   }
7950*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X80,inplace)7951*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X80, inplace) {
7952*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7953*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 400; batch_size += 79) {
7954*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7955*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7956*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
7957*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7958*4bdc9457SAndroid Build Coastguard Worker     }
7959*4bdc9457SAndroid Build Coastguard Worker   }
7960*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
7961*4bdc9457SAndroid Build Coastguard Worker 
7962*4bdc9457SAndroid Build Coastguard Worker 
7963*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X96,batch_eq_96)7964*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X96, batch_eq_96) {
7965*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7966*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
7967*4bdc9457SAndroid Build Coastguard Worker       .batch_size(96)
7968*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7969*4bdc9457SAndroid Build Coastguard Worker   }
7970*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X96,batch_div_96)7971*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X96, batch_div_96) {
7972*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7973*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 192; batch_size < 960; batch_size += 96) {
7974*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7975*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7976*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7977*4bdc9457SAndroid Build Coastguard Worker     }
7978*4bdc9457SAndroid Build Coastguard Worker   }
7979*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X96,batch_lt_96)7980*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X96, batch_lt_96) {
7981*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7982*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 96; batch_size++) {
7983*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7984*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7985*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7986*4bdc9457SAndroid Build Coastguard Worker     }
7987*4bdc9457SAndroid Build Coastguard Worker   }
7988*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X96,batch_gt_96)7989*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X96, batch_gt_96) {
7990*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
7991*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 97; batch_size < 192; batch_size++) {
7992*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
7993*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
7994*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
7995*4bdc9457SAndroid Build Coastguard Worker     }
7996*4bdc9457SAndroid Build Coastguard Worker   }
7997*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X96,inplace)7998*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X96, inplace) {
7999*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8000*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 480; batch_size += 95) {
8001*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8002*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8003*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8004*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8005*4bdc9457SAndroid Build Coastguard Worker     }
8006*4bdc9457SAndroid Build Coastguard Worker   }
8007*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8008*4bdc9457SAndroid Build Coastguard Worker 
8009*4bdc9457SAndroid Build Coastguard Worker 
8010*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X112,batch_eq_112)8011*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X112, batch_eq_112) {
8012*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8013*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8014*4bdc9457SAndroid Build Coastguard Worker       .batch_size(112)
8015*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8016*4bdc9457SAndroid Build Coastguard Worker   }
8017*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X112,batch_div_112)8018*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X112, batch_div_112) {
8019*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8020*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 224; batch_size < 1120; batch_size += 112) {
8021*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8022*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8023*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8024*4bdc9457SAndroid Build Coastguard Worker     }
8025*4bdc9457SAndroid Build Coastguard Worker   }
8026*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X112,batch_lt_112)8027*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X112, batch_lt_112) {
8028*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8029*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 112; batch_size++) {
8030*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8031*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8032*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8033*4bdc9457SAndroid Build Coastguard Worker     }
8034*4bdc9457SAndroid Build Coastguard Worker   }
8035*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X112,batch_gt_112)8036*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X112, batch_gt_112) {
8037*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8038*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 113; batch_size < 224; batch_size++) {
8039*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8040*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8041*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8042*4bdc9457SAndroid Build Coastguard Worker     }
8043*4bdc9457SAndroid Build Coastguard Worker   }
8044*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X112,inplace)8045*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X112, inplace) {
8046*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8047*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 560; batch_size += 111) {
8048*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8049*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8050*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8051*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8052*4bdc9457SAndroid Build Coastguard Worker     }
8053*4bdc9457SAndroid Build Coastguard Worker   }
8054*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8055*4bdc9457SAndroid Build Coastguard Worker 
8056*4bdc9457SAndroid Build Coastguard Worker 
8057*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X128,batch_eq_128)8058*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X128, batch_eq_128) {
8059*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8060*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8061*4bdc9457SAndroid Build Coastguard Worker       .batch_size(128)
8062*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8063*4bdc9457SAndroid Build Coastguard Worker   }
8064*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X128,batch_div_128)8065*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X128, batch_div_128) {
8066*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8067*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 256; batch_size < 1280; batch_size += 128) {
8068*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8069*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8070*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8071*4bdc9457SAndroid Build Coastguard Worker     }
8072*4bdc9457SAndroid Build Coastguard Worker   }
8073*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X128,batch_lt_128)8074*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X128, batch_lt_128) {
8075*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8076*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 128; batch_size++) {
8077*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8078*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8079*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8080*4bdc9457SAndroid Build Coastguard Worker     }
8081*4bdc9457SAndroid Build Coastguard Worker   }
8082*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X128,batch_gt_128)8083*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X128, batch_gt_128) {
8084*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8085*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 129; batch_size < 256; batch_size++) {
8086*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8087*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8088*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8089*4bdc9457SAndroid Build Coastguard Worker     }
8090*4bdc9457SAndroid Build Coastguard Worker   }
8091*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X128,inplace)8092*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_DIV_X128, inplace) {
8093*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8094*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 640; batch_size += 127) {
8095*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8096*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8097*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8098*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8099*4bdc9457SAndroid Build Coastguard Worker     }
8100*4bdc9457SAndroid Build Coastguard Worker   }
8101*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8102*4bdc9457SAndroid Build Coastguard Worker 
8103*4bdc9457SAndroid Build Coastguard Worker 
8104*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X16,batch_eq_16)8105*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X16, batch_eq_16) {
8106*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8107*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8108*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
8109*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8110*4bdc9457SAndroid Build Coastguard Worker   }
8111*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X16,batch_div_16)8112*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X16, batch_div_16) {
8113*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8114*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
8115*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8116*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8117*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8118*4bdc9457SAndroid Build Coastguard Worker     }
8119*4bdc9457SAndroid Build Coastguard Worker   }
8120*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X16,batch_lt_16)8121*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X16, batch_lt_16) {
8122*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8123*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
8124*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8125*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8126*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8127*4bdc9457SAndroid Build Coastguard Worker     }
8128*4bdc9457SAndroid Build Coastguard Worker   }
8129*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X16,batch_gt_16)8130*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X16, batch_gt_16) {
8131*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8132*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
8133*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8134*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8135*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8136*4bdc9457SAndroid Build Coastguard Worker     }
8137*4bdc9457SAndroid Build Coastguard Worker   }
8138*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X16,inplace)8139*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X16, inplace) {
8140*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8141*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
8142*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8143*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8144*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8145*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8146*4bdc9457SAndroid Build Coastguard Worker     }
8147*4bdc9457SAndroid Build Coastguard Worker   }
8148*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8149*4bdc9457SAndroid Build Coastguard Worker 
8150*4bdc9457SAndroid Build Coastguard Worker 
8151*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X32,batch_eq_32)8152*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X32, batch_eq_32) {
8153*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8154*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8155*4bdc9457SAndroid Build Coastguard Worker       .batch_size(32)
8156*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8157*4bdc9457SAndroid Build Coastguard Worker   }
8158*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X32,batch_div_32)8159*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X32, batch_div_32) {
8160*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8161*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 64; batch_size < 320; batch_size += 32) {
8162*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8163*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8164*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8165*4bdc9457SAndroid Build Coastguard Worker     }
8166*4bdc9457SAndroid Build Coastguard Worker   }
8167*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X32,batch_lt_32)8168*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X32, batch_lt_32) {
8169*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8170*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 32; batch_size++) {
8171*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8172*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8173*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8174*4bdc9457SAndroid Build Coastguard Worker     }
8175*4bdc9457SAndroid Build Coastguard Worker   }
8176*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X32,batch_gt_32)8177*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X32, batch_gt_32) {
8178*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8179*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 33; batch_size < 64; batch_size++) {
8180*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8181*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8182*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8183*4bdc9457SAndroid Build Coastguard Worker     }
8184*4bdc9457SAndroid Build Coastguard Worker   }
8185*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X32,inplace)8186*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X32, inplace) {
8187*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8188*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 160; batch_size += 31) {
8189*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8190*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8191*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8192*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8193*4bdc9457SAndroid Build Coastguard Worker     }
8194*4bdc9457SAndroid Build Coastguard Worker   }
8195*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8196*4bdc9457SAndroid Build Coastguard Worker 
8197*4bdc9457SAndroid Build Coastguard Worker 
8198*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X48,batch_eq_48)8199*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X48, batch_eq_48) {
8200*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8201*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8202*4bdc9457SAndroid Build Coastguard Worker       .batch_size(48)
8203*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8204*4bdc9457SAndroid Build Coastguard Worker   }
8205*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X48,batch_div_48)8206*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X48, batch_div_48) {
8207*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8208*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 96; batch_size < 480; batch_size += 48) {
8209*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8210*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8211*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8212*4bdc9457SAndroid Build Coastguard Worker     }
8213*4bdc9457SAndroid Build Coastguard Worker   }
8214*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X48,batch_lt_48)8215*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X48, batch_lt_48) {
8216*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8217*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 48; batch_size++) {
8218*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8219*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8220*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8221*4bdc9457SAndroid Build Coastguard Worker     }
8222*4bdc9457SAndroid Build Coastguard Worker   }
8223*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X48,batch_gt_48)8224*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X48, batch_gt_48) {
8225*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8226*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 49; batch_size < 96; batch_size++) {
8227*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8228*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8229*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8230*4bdc9457SAndroid Build Coastguard Worker     }
8231*4bdc9457SAndroid Build Coastguard Worker   }
8232*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X48,inplace)8233*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X48, inplace) {
8234*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8235*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 240; batch_size += 47) {
8236*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8237*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8238*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8239*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8240*4bdc9457SAndroid Build Coastguard Worker     }
8241*4bdc9457SAndroid Build Coastguard Worker   }
8242*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8243*4bdc9457SAndroid Build Coastguard Worker 
8244*4bdc9457SAndroid Build Coastguard Worker 
8245*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X64,batch_eq_64)8246*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X64, batch_eq_64) {
8247*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8248*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8249*4bdc9457SAndroid Build Coastguard Worker       .batch_size(64)
8250*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8251*4bdc9457SAndroid Build Coastguard Worker   }
8252*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X64,batch_div_64)8253*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X64, batch_div_64) {
8254*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8255*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 128; batch_size < 640; batch_size += 64) {
8256*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8257*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8258*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8259*4bdc9457SAndroid Build Coastguard Worker     }
8260*4bdc9457SAndroid Build Coastguard Worker   }
8261*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X64,batch_lt_64)8262*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X64, batch_lt_64) {
8263*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8264*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 64; batch_size++) {
8265*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8266*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8267*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8268*4bdc9457SAndroid Build Coastguard Worker     }
8269*4bdc9457SAndroid Build Coastguard Worker   }
8270*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X64,batch_gt_64)8271*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X64, batch_gt_64) {
8272*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8273*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 65; batch_size < 128; batch_size++) {
8274*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8275*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8276*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8277*4bdc9457SAndroid Build Coastguard Worker     }
8278*4bdc9457SAndroid Build Coastguard Worker   }
8279*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X64,inplace)8280*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X64, inplace) {
8281*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8282*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 320; batch_size += 63) {
8283*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8284*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8285*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8286*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8287*4bdc9457SAndroid Build Coastguard Worker     }
8288*4bdc9457SAndroid Build Coastguard Worker   }
8289*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8290*4bdc9457SAndroid Build Coastguard Worker 
8291*4bdc9457SAndroid Build Coastguard Worker 
8292*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X80,batch_eq_80)8293*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X80, batch_eq_80) {
8294*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8295*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8296*4bdc9457SAndroid Build Coastguard Worker       .batch_size(80)
8297*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8298*4bdc9457SAndroid Build Coastguard Worker   }
8299*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X80,batch_div_80)8300*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X80, batch_div_80) {
8301*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8302*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 160; batch_size < 800; batch_size += 80) {
8303*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8304*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8305*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8306*4bdc9457SAndroid Build Coastguard Worker     }
8307*4bdc9457SAndroid Build Coastguard Worker   }
8308*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X80,batch_lt_80)8309*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X80, batch_lt_80) {
8310*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8311*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 80; batch_size++) {
8312*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8313*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8314*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8315*4bdc9457SAndroid Build Coastguard Worker     }
8316*4bdc9457SAndroid Build Coastguard Worker   }
8317*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X80,batch_gt_80)8318*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X80, batch_gt_80) {
8319*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8320*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 81; batch_size < 160; batch_size++) {
8321*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8322*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8323*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8324*4bdc9457SAndroid Build Coastguard Worker     }
8325*4bdc9457SAndroid Build Coastguard Worker   }
8326*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X80,inplace)8327*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X80, inplace) {
8328*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8329*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 400; batch_size += 79) {
8330*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8331*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8332*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8333*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8334*4bdc9457SAndroid Build Coastguard Worker     }
8335*4bdc9457SAndroid Build Coastguard Worker   }
8336*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8337*4bdc9457SAndroid Build Coastguard Worker 
8338*4bdc9457SAndroid Build Coastguard Worker 
8339*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X96,batch_eq_96)8340*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X96, batch_eq_96) {
8341*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8342*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8343*4bdc9457SAndroid Build Coastguard Worker       .batch_size(96)
8344*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8345*4bdc9457SAndroid Build Coastguard Worker   }
8346*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X96,batch_div_96)8347*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X96, batch_div_96) {
8348*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8349*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 192; batch_size < 960; batch_size += 96) {
8350*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8351*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8352*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8353*4bdc9457SAndroid Build Coastguard Worker     }
8354*4bdc9457SAndroid Build Coastguard Worker   }
8355*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X96,batch_lt_96)8356*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X96, batch_lt_96) {
8357*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8358*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 96; batch_size++) {
8359*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8360*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8361*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8362*4bdc9457SAndroid Build Coastguard Worker     }
8363*4bdc9457SAndroid Build Coastguard Worker   }
8364*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X96,batch_gt_96)8365*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X96, batch_gt_96) {
8366*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8367*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 97; batch_size < 192; batch_size++) {
8368*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8369*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8370*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8371*4bdc9457SAndroid Build Coastguard Worker     }
8372*4bdc9457SAndroid Build Coastguard Worker   }
8373*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X96,inplace)8374*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X96, inplace) {
8375*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8376*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 480; batch_size += 95) {
8377*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8378*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8379*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8380*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8381*4bdc9457SAndroid Build Coastguard Worker     }
8382*4bdc9457SAndroid Build Coastguard Worker   }
8383*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8384*4bdc9457SAndroid Build Coastguard Worker 
8385*4bdc9457SAndroid Build Coastguard Worker 
8386*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X112,batch_eq_112)8387*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X112, batch_eq_112) {
8388*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8389*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8390*4bdc9457SAndroid Build Coastguard Worker       .batch_size(112)
8391*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8392*4bdc9457SAndroid Build Coastguard Worker   }
8393*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X112,batch_div_112)8394*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X112, batch_div_112) {
8395*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8396*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 224; batch_size < 1120; batch_size += 112) {
8397*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8398*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8399*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8400*4bdc9457SAndroid Build Coastguard Worker     }
8401*4bdc9457SAndroid Build Coastguard Worker   }
8402*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X112,batch_lt_112)8403*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X112, batch_lt_112) {
8404*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8405*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 112; batch_size++) {
8406*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8407*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8408*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8409*4bdc9457SAndroid Build Coastguard Worker     }
8410*4bdc9457SAndroid Build Coastguard Worker   }
8411*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X112,batch_gt_112)8412*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X112, batch_gt_112) {
8413*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8414*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 113; batch_size < 224; batch_size++) {
8415*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8416*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8417*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8418*4bdc9457SAndroid Build Coastguard Worker     }
8419*4bdc9457SAndroid Build Coastguard Worker   }
8420*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X112,inplace)8421*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X112, inplace) {
8422*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8423*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 560; batch_size += 111) {
8424*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8425*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8426*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8427*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8428*4bdc9457SAndroid Build Coastguard Worker     }
8429*4bdc9457SAndroid Build Coastguard Worker   }
8430*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8431*4bdc9457SAndroid Build Coastguard Worker 
8432*4bdc9457SAndroid Build Coastguard Worker 
8433*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X128,batch_eq_128)8434*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X128, batch_eq_128) {
8435*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8436*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8437*4bdc9457SAndroid Build Coastguard Worker       .batch_size(128)
8438*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8439*4bdc9457SAndroid Build Coastguard Worker   }
8440*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X128,batch_div_128)8441*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X128, batch_div_128) {
8442*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8443*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 256; batch_size < 1280; batch_size += 128) {
8444*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8445*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8446*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8447*4bdc9457SAndroid Build Coastguard Worker     }
8448*4bdc9457SAndroid Build Coastguard Worker   }
8449*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X128,batch_lt_128)8450*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X128, batch_lt_128) {
8451*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8452*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 128; batch_size++) {
8453*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8454*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8455*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8456*4bdc9457SAndroid Build Coastguard Worker     }
8457*4bdc9457SAndroid Build Coastguard Worker   }
8458*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X128,batch_gt_128)8459*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X128, batch_gt_128) {
8460*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8461*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 129; batch_size < 256; batch_size++) {
8462*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8463*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8464*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8465*4bdc9457SAndroid Build Coastguard Worker     }
8466*4bdc9457SAndroid Build Coastguard Worker   }
8467*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X128,inplace)8468*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_LUT16_P3_PERM_SCALEF_NR1FMA_X128, inplace) {
8469*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8470*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 640; batch_size += 127) {
8471*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8472*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8473*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8474*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_lut16_p3_perm_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr1_lut16_p3_params);
8475*4bdc9457SAndroid Build Coastguard Worker     }
8476*4bdc9457SAndroid Build Coastguard Worker   }
8477*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8478*4bdc9457SAndroid Build Coastguard Worker 
8479*4bdc9457SAndroid Build Coastguard Worker 
8480*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X16,batch_eq_16)8481*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X16, batch_eq_16) {
8482*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8483*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8484*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
8485*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8486*4bdc9457SAndroid Build Coastguard Worker   }
8487*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X16,batch_div_16)8488*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X16, batch_div_16) {
8489*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8490*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
8491*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8492*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8493*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8494*4bdc9457SAndroid Build Coastguard Worker     }
8495*4bdc9457SAndroid Build Coastguard Worker   }
8496*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X16,batch_lt_16)8497*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X16, batch_lt_16) {
8498*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8499*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
8500*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8501*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8502*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8503*4bdc9457SAndroid Build Coastguard Worker     }
8504*4bdc9457SAndroid Build Coastguard Worker   }
8505*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X16,batch_gt_16)8506*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X16, batch_gt_16) {
8507*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8508*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
8509*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8510*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8511*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8512*4bdc9457SAndroid Build Coastguard Worker     }
8513*4bdc9457SAndroid Build Coastguard Worker   }
8514*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X16,inplace)8515*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X16, inplace) {
8516*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8517*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
8518*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8519*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8520*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8521*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8522*4bdc9457SAndroid Build Coastguard Worker     }
8523*4bdc9457SAndroid Build Coastguard Worker   }
8524*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8525*4bdc9457SAndroid Build Coastguard Worker 
8526*4bdc9457SAndroid Build Coastguard Worker 
8527*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X32,batch_eq_32)8528*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X32, batch_eq_32) {
8529*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8530*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8531*4bdc9457SAndroid Build Coastguard Worker       .batch_size(32)
8532*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8533*4bdc9457SAndroid Build Coastguard Worker   }
8534*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X32,batch_div_32)8535*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X32, batch_div_32) {
8536*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8537*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 64; batch_size < 320; batch_size += 32) {
8538*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8539*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8540*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8541*4bdc9457SAndroid Build Coastguard Worker     }
8542*4bdc9457SAndroid Build Coastguard Worker   }
8543*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X32,batch_lt_32)8544*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X32, batch_lt_32) {
8545*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8546*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 32; batch_size++) {
8547*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8548*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8549*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8550*4bdc9457SAndroid Build Coastguard Worker     }
8551*4bdc9457SAndroid Build Coastguard Worker   }
8552*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X32,batch_gt_32)8553*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X32, batch_gt_32) {
8554*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8555*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 33; batch_size < 64; batch_size++) {
8556*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8557*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8558*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8559*4bdc9457SAndroid Build Coastguard Worker     }
8560*4bdc9457SAndroid Build Coastguard Worker   }
8561*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X32,inplace)8562*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X32, inplace) {
8563*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8564*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 160; batch_size += 31) {
8565*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8566*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8567*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8568*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8569*4bdc9457SAndroid Build Coastguard Worker     }
8570*4bdc9457SAndroid Build Coastguard Worker   }
8571*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8572*4bdc9457SAndroid Build Coastguard Worker 
8573*4bdc9457SAndroid Build Coastguard Worker 
8574*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X48,batch_eq_48)8575*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X48, batch_eq_48) {
8576*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8577*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8578*4bdc9457SAndroid Build Coastguard Worker       .batch_size(48)
8579*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8580*4bdc9457SAndroid Build Coastguard Worker   }
8581*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X48,batch_div_48)8582*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X48, batch_div_48) {
8583*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8584*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 96; batch_size < 480; batch_size += 48) {
8585*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8586*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8587*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8588*4bdc9457SAndroid Build Coastguard Worker     }
8589*4bdc9457SAndroid Build Coastguard Worker   }
8590*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X48,batch_lt_48)8591*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X48, batch_lt_48) {
8592*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8593*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 48; batch_size++) {
8594*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8595*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8596*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8597*4bdc9457SAndroid Build Coastguard Worker     }
8598*4bdc9457SAndroid Build Coastguard Worker   }
8599*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X48,batch_gt_48)8600*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X48, batch_gt_48) {
8601*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8602*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 49; batch_size < 96; batch_size++) {
8603*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8604*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8605*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8606*4bdc9457SAndroid Build Coastguard Worker     }
8607*4bdc9457SAndroid Build Coastguard Worker   }
8608*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X48,inplace)8609*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X48, inplace) {
8610*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8611*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 240; batch_size += 47) {
8612*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8613*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8614*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8615*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8616*4bdc9457SAndroid Build Coastguard Worker     }
8617*4bdc9457SAndroid Build Coastguard Worker   }
8618*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8619*4bdc9457SAndroid Build Coastguard Worker 
8620*4bdc9457SAndroid Build Coastguard Worker 
8621*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X64,batch_eq_64)8622*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X64, batch_eq_64) {
8623*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8624*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8625*4bdc9457SAndroid Build Coastguard Worker       .batch_size(64)
8626*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8627*4bdc9457SAndroid Build Coastguard Worker   }
8628*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X64,batch_div_64)8629*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X64, batch_div_64) {
8630*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8631*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 128; batch_size < 640; batch_size += 64) {
8632*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8633*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8634*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8635*4bdc9457SAndroid Build Coastguard Worker     }
8636*4bdc9457SAndroid Build Coastguard Worker   }
8637*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X64,batch_lt_64)8638*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X64, batch_lt_64) {
8639*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8640*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 64; batch_size++) {
8641*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8642*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8643*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8644*4bdc9457SAndroid Build Coastguard Worker     }
8645*4bdc9457SAndroid Build Coastguard Worker   }
8646*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X64,batch_gt_64)8647*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X64, batch_gt_64) {
8648*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8649*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 65; batch_size < 128; batch_size++) {
8650*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8651*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8652*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8653*4bdc9457SAndroid Build Coastguard Worker     }
8654*4bdc9457SAndroid Build Coastguard Worker   }
8655*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X64,inplace)8656*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X64, inplace) {
8657*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8658*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 320; batch_size += 63) {
8659*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8660*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8661*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8662*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8663*4bdc9457SAndroid Build Coastguard Worker     }
8664*4bdc9457SAndroid Build Coastguard Worker   }
8665*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8666*4bdc9457SAndroid Build Coastguard Worker 
8667*4bdc9457SAndroid Build Coastguard Worker 
8668*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X80,batch_eq_80)8669*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X80, batch_eq_80) {
8670*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8671*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8672*4bdc9457SAndroid Build Coastguard Worker       .batch_size(80)
8673*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8674*4bdc9457SAndroid Build Coastguard Worker   }
8675*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X80,batch_div_80)8676*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X80, batch_div_80) {
8677*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8678*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 160; batch_size < 800; batch_size += 80) {
8679*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8680*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8681*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8682*4bdc9457SAndroid Build Coastguard Worker     }
8683*4bdc9457SAndroid Build Coastguard Worker   }
8684*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X80,batch_lt_80)8685*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X80, batch_lt_80) {
8686*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8687*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 80; batch_size++) {
8688*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8689*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8690*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8691*4bdc9457SAndroid Build Coastguard Worker     }
8692*4bdc9457SAndroid Build Coastguard Worker   }
8693*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X80,batch_gt_80)8694*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X80, batch_gt_80) {
8695*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8696*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 81; batch_size < 160; batch_size++) {
8697*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8698*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8699*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8700*4bdc9457SAndroid Build Coastguard Worker     }
8701*4bdc9457SAndroid Build Coastguard Worker   }
8702*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X80,inplace)8703*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X80, inplace) {
8704*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8705*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 400; batch_size += 79) {
8706*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8707*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8708*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8709*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8710*4bdc9457SAndroid Build Coastguard Worker     }
8711*4bdc9457SAndroid Build Coastguard Worker   }
8712*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8713*4bdc9457SAndroid Build Coastguard Worker 
8714*4bdc9457SAndroid Build Coastguard Worker 
8715*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X96,batch_eq_96)8716*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X96, batch_eq_96) {
8717*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8718*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8719*4bdc9457SAndroid Build Coastguard Worker       .batch_size(96)
8720*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8721*4bdc9457SAndroid Build Coastguard Worker   }
8722*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X96,batch_div_96)8723*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X96, batch_div_96) {
8724*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8725*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 192; batch_size < 960; batch_size += 96) {
8726*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8727*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8728*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8729*4bdc9457SAndroid Build Coastguard Worker     }
8730*4bdc9457SAndroid Build Coastguard Worker   }
8731*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X96,batch_lt_96)8732*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X96, batch_lt_96) {
8733*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8734*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 96; batch_size++) {
8735*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8736*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8737*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8738*4bdc9457SAndroid Build Coastguard Worker     }
8739*4bdc9457SAndroid Build Coastguard Worker   }
8740*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X96,batch_gt_96)8741*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X96, batch_gt_96) {
8742*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8743*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 97; batch_size < 192; batch_size++) {
8744*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8745*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8746*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8747*4bdc9457SAndroid Build Coastguard Worker     }
8748*4bdc9457SAndroid Build Coastguard Worker   }
8749*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X96,inplace)8750*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X96, inplace) {
8751*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8752*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 480; batch_size += 95) {
8753*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8754*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8755*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8756*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8757*4bdc9457SAndroid Build Coastguard Worker     }
8758*4bdc9457SAndroid Build Coastguard Worker   }
8759*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8760*4bdc9457SAndroid Build Coastguard Worker 
8761*4bdc9457SAndroid Build Coastguard Worker 
8762*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X112,batch_eq_112)8763*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X112, batch_eq_112) {
8764*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8765*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8766*4bdc9457SAndroid Build Coastguard Worker       .batch_size(112)
8767*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8768*4bdc9457SAndroid Build Coastguard Worker   }
8769*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X112,batch_div_112)8770*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X112, batch_div_112) {
8771*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8772*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 224; batch_size < 1120; batch_size += 112) {
8773*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8774*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8775*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8776*4bdc9457SAndroid Build Coastguard Worker     }
8777*4bdc9457SAndroid Build Coastguard Worker   }
8778*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X112,batch_lt_112)8779*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X112, batch_lt_112) {
8780*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8781*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 112; batch_size++) {
8782*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8783*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8784*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8785*4bdc9457SAndroid Build Coastguard Worker     }
8786*4bdc9457SAndroid Build Coastguard Worker   }
8787*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X112,batch_gt_112)8788*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X112, batch_gt_112) {
8789*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8790*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 113; batch_size < 224; batch_size++) {
8791*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8792*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8793*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8794*4bdc9457SAndroid Build Coastguard Worker     }
8795*4bdc9457SAndroid Build Coastguard Worker   }
8796*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X112,inplace)8797*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X112, inplace) {
8798*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8799*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 560; batch_size += 111) {
8800*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8801*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8802*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8803*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8804*4bdc9457SAndroid Build Coastguard Worker     }
8805*4bdc9457SAndroid Build Coastguard Worker   }
8806*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8807*4bdc9457SAndroid Build Coastguard Worker 
8808*4bdc9457SAndroid Build Coastguard Worker 
8809*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X128,batch_eq_128)8810*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X128, batch_eq_128) {
8811*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8812*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8813*4bdc9457SAndroid Build Coastguard Worker       .batch_size(128)
8814*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8815*4bdc9457SAndroid Build Coastguard Worker   }
8816*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X128,batch_div_128)8817*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X128, batch_div_128) {
8818*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8819*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 256; batch_size < 1280; batch_size += 128) {
8820*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8821*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8822*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8823*4bdc9457SAndroid Build Coastguard Worker     }
8824*4bdc9457SAndroid Build Coastguard Worker   }
8825*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X128,batch_lt_128)8826*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X128, batch_lt_128) {
8827*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8828*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 128; batch_size++) {
8829*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8830*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8831*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8832*4bdc9457SAndroid Build Coastguard Worker     }
8833*4bdc9457SAndroid Build Coastguard Worker   }
8834*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X128,batch_gt_128)8835*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X128, batch_gt_128) {
8836*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8837*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 129; batch_size < 256; batch_size++) {
8838*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8839*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8840*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8841*4bdc9457SAndroid Build Coastguard Worker     }
8842*4bdc9457SAndroid Build Coastguard Worker   }
8843*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X128,inplace)8844*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_DIV_X128, inplace) {
8845*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8846*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 640; batch_size += 127) {
8847*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8848*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8849*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8850*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8851*4bdc9457SAndroid Build Coastguard Worker     }
8852*4bdc9457SAndroid Build Coastguard Worker   }
8853*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8854*4bdc9457SAndroid Build Coastguard Worker 
8855*4bdc9457SAndroid Build Coastguard Worker 
8856*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X16,batch_eq_16)8857*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X16, batch_eq_16) {
8858*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8859*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8860*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
8861*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8862*4bdc9457SAndroid Build Coastguard Worker   }
8863*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X16,batch_div_16)8864*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X16, batch_div_16) {
8865*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8866*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
8867*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8868*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8869*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8870*4bdc9457SAndroid Build Coastguard Worker     }
8871*4bdc9457SAndroid Build Coastguard Worker   }
8872*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X16,batch_lt_16)8873*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X16, batch_lt_16) {
8874*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8875*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
8876*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8877*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8878*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8879*4bdc9457SAndroid Build Coastguard Worker     }
8880*4bdc9457SAndroid Build Coastguard Worker   }
8881*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X16,batch_gt_16)8882*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X16, batch_gt_16) {
8883*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8884*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
8885*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8886*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8887*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8888*4bdc9457SAndroid Build Coastguard Worker     }
8889*4bdc9457SAndroid Build Coastguard Worker   }
8890*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X16,inplace)8891*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X16, inplace) {
8892*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8893*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
8894*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8895*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8896*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8897*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8898*4bdc9457SAndroid Build Coastguard Worker     }
8899*4bdc9457SAndroid Build Coastguard Worker   }
8900*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8901*4bdc9457SAndroid Build Coastguard Worker 
8902*4bdc9457SAndroid Build Coastguard Worker 
8903*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X32,batch_eq_32)8904*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X32, batch_eq_32) {
8905*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8906*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8907*4bdc9457SAndroid Build Coastguard Worker       .batch_size(32)
8908*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8909*4bdc9457SAndroid Build Coastguard Worker   }
8910*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X32,batch_div_32)8911*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X32, batch_div_32) {
8912*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8913*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 64; batch_size < 320; batch_size += 32) {
8914*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8915*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8916*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8917*4bdc9457SAndroid Build Coastguard Worker     }
8918*4bdc9457SAndroid Build Coastguard Worker   }
8919*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X32,batch_lt_32)8920*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X32, batch_lt_32) {
8921*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8922*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 32; batch_size++) {
8923*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8924*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8925*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8926*4bdc9457SAndroid Build Coastguard Worker     }
8927*4bdc9457SAndroid Build Coastguard Worker   }
8928*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X32,batch_gt_32)8929*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X32, batch_gt_32) {
8930*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8931*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 33; batch_size < 64; batch_size++) {
8932*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8933*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8934*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8935*4bdc9457SAndroid Build Coastguard Worker     }
8936*4bdc9457SAndroid Build Coastguard Worker   }
8937*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X32,inplace)8938*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X32, inplace) {
8939*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8940*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 160; batch_size += 31) {
8941*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8942*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8943*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8944*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8945*4bdc9457SAndroid Build Coastguard Worker     }
8946*4bdc9457SAndroid Build Coastguard Worker   }
8947*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8948*4bdc9457SAndroid Build Coastguard Worker 
8949*4bdc9457SAndroid Build Coastguard Worker 
8950*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X48,batch_eq_48)8951*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X48, batch_eq_48) {
8952*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8953*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
8954*4bdc9457SAndroid Build Coastguard Worker       .batch_size(48)
8955*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8956*4bdc9457SAndroid Build Coastguard Worker   }
8957*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X48,batch_div_48)8958*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X48, batch_div_48) {
8959*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8960*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 96; batch_size < 480; batch_size += 48) {
8961*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8962*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8963*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8964*4bdc9457SAndroid Build Coastguard Worker     }
8965*4bdc9457SAndroid Build Coastguard Worker   }
8966*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X48,batch_lt_48)8967*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X48, batch_lt_48) {
8968*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8969*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 48; batch_size++) {
8970*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8971*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8972*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8973*4bdc9457SAndroid Build Coastguard Worker     }
8974*4bdc9457SAndroid Build Coastguard Worker   }
8975*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X48,batch_gt_48)8976*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X48, batch_gt_48) {
8977*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8978*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 49; batch_size < 96; batch_size++) {
8979*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8980*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8981*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8982*4bdc9457SAndroid Build Coastguard Worker     }
8983*4bdc9457SAndroid Build Coastguard Worker   }
8984*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X48,inplace)8985*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X48, inplace) {
8986*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
8987*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 240; batch_size += 47) {
8988*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
8989*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
8990*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
8991*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
8992*4bdc9457SAndroid Build Coastguard Worker     }
8993*4bdc9457SAndroid Build Coastguard Worker   }
8994*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
8995*4bdc9457SAndroid Build Coastguard Worker 
8996*4bdc9457SAndroid Build Coastguard Worker 
8997*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X64,batch_eq_64)8998*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X64, batch_eq_64) {
8999*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9000*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9001*4bdc9457SAndroid Build Coastguard Worker       .batch_size(64)
9002*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9003*4bdc9457SAndroid Build Coastguard Worker   }
9004*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X64,batch_div_64)9005*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X64, batch_div_64) {
9006*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9007*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 128; batch_size < 640; batch_size += 64) {
9008*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9009*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9010*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9011*4bdc9457SAndroid Build Coastguard Worker     }
9012*4bdc9457SAndroid Build Coastguard Worker   }
9013*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X64,batch_lt_64)9014*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X64, batch_lt_64) {
9015*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9016*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 64; batch_size++) {
9017*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9018*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9019*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9020*4bdc9457SAndroid Build Coastguard Worker     }
9021*4bdc9457SAndroid Build Coastguard Worker   }
9022*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X64,batch_gt_64)9023*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X64, batch_gt_64) {
9024*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9025*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 65; batch_size < 128; batch_size++) {
9026*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9027*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9028*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9029*4bdc9457SAndroid Build Coastguard Worker     }
9030*4bdc9457SAndroid Build Coastguard Worker   }
9031*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X64,inplace)9032*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X64, inplace) {
9033*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9034*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 320; batch_size += 63) {
9035*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9036*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9037*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9038*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9039*4bdc9457SAndroid Build Coastguard Worker     }
9040*4bdc9457SAndroid Build Coastguard Worker   }
9041*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9042*4bdc9457SAndroid Build Coastguard Worker 
9043*4bdc9457SAndroid Build Coastguard Worker 
9044*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X80,batch_eq_80)9045*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X80, batch_eq_80) {
9046*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9047*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9048*4bdc9457SAndroid Build Coastguard Worker       .batch_size(80)
9049*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9050*4bdc9457SAndroid Build Coastguard Worker   }
9051*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X80,batch_div_80)9052*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X80, batch_div_80) {
9053*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9054*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 160; batch_size < 800; batch_size += 80) {
9055*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9056*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9057*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9058*4bdc9457SAndroid Build Coastguard Worker     }
9059*4bdc9457SAndroid Build Coastguard Worker   }
9060*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X80,batch_lt_80)9061*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X80, batch_lt_80) {
9062*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9063*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 80; batch_size++) {
9064*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9065*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9066*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9067*4bdc9457SAndroid Build Coastguard Worker     }
9068*4bdc9457SAndroid Build Coastguard Worker   }
9069*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X80,batch_gt_80)9070*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X80, batch_gt_80) {
9071*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9072*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 81; batch_size < 160; batch_size++) {
9073*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9074*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9075*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9076*4bdc9457SAndroid Build Coastguard Worker     }
9077*4bdc9457SAndroid Build Coastguard Worker   }
9078*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X80,inplace)9079*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X80, inplace) {
9080*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9081*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 400; batch_size += 79) {
9082*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9083*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9084*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9085*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9086*4bdc9457SAndroid Build Coastguard Worker     }
9087*4bdc9457SAndroid Build Coastguard Worker   }
9088*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9089*4bdc9457SAndroid Build Coastguard Worker 
9090*4bdc9457SAndroid Build Coastguard Worker 
9091*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X96,batch_eq_96)9092*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X96, batch_eq_96) {
9093*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9094*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9095*4bdc9457SAndroid Build Coastguard Worker       .batch_size(96)
9096*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9097*4bdc9457SAndroid Build Coastguard Worker   }
9098*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X96,batch_div_96)9099*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X96, batch_div_96) {
9100*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9101*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 192; batch_size < 960; batch_size += 96) {
9102*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9103*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9104*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9105*4bdc9457SAndroid Build Coastguard Worker     }
9106*4bdc9457SAndroid Build Coastguard Worker   }
9107*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X96,batch_lt_96)9108*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X96, batch_lt_96) {
9109*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9110*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 96; batch_size++) {
9111*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9112*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9113*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9114*4bdc9457SAndroid Build Coastguard Worker     }
9115*4bdc9457SAndroid Build Coastguard Worker   }
9116*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X96,batch_gt_96)9117*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X96, batch_gt_96) {
9118*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9119*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 97; batch_size < 192; batch_size++) {
9120*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9121*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9122*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9123*4bdc9457SAndroid Build Coastguard Worker     }
9124*4bdc9457SAndroid Build Coastguard Worker   }
9125*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X96,inplace)9126*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X96, inplace) {
9127*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9128*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 480; batch_size += 95) {
9129*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9130*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9131*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9132*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9133*4bdc9457SAndroid Build Coastguard Worker     }
9134*4bdc9457SAndroid Build Coastguard Worker   }
9135*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9136*4bdc9457SAndroid Build Coastguard Worker 
9137*4bdc9457SAndroid Build Coastguard Worker 
9138*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X112,batch_eq_112)9139*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X112, batch_eq_112) {
9140*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9141*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9142*4bdc9457SAndroid Build Coastguard Worker       .batch_size(112)
9143*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9144*4bdc9457SAndroid Build Coastguard Worker   }
9145*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X112,batch_div_112)9146*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X112, batch_div_112) {
9147*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9148*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 224; batch_size < 1120; batch_size += 112) {
9149*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9150*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9151*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9152*4bdc9457SAndroid Build Coastguard Worker     }
9153*4bdc9457SAndroid Build Coastguard Worker   }
9154*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X112,batch_lt_112)9155*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X112, batch_lt_112) {
9156*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9157*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 112; batch_size++) {
9158*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9159*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9160*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9161*4bdc9457SAndroid Build Coastguard Worker     }
9162*4bdc9457SAndroid Build Coastguard Worker   }
9163*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X112,batch_gt_112)9164*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X112, batch_gt_112) {
9165*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9166*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 113; batch_size < 224; batch_size++) {
9167*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9168*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9169*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9170*4bdc9457SAndroid Build Coastguard Worker     }
9171*4bdc9457SAndroid Build Coastguard Worker   }
9172*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X112,inplace)9173*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X112, inplace) {
9174*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9175*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 560; batch_size += 111) {
9176*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9177*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9178*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9179*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9180*4bdc9457SAndroid Build Coastguard Worker     }
9181*4bdc9457SAndroid Build Coastguard Worker   }
9182*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9183*4bdc9457SAndroid Build Coastguard Worker 
9184*4bdc9457SAndroid Build Coastguard Worker 
9185*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X128,batch_eq_128)9186*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X128, batch_eq_128) {
9187*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9188*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9189*4bdc9457SAndroid Build Coastguard Worker       .batch_size(128)
9190*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9191*4bdc9457SAndroid Build Coastguard Worker   }
9192*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X128,batch_div_128)9193*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X128, batch_div_128) {
9194*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9195*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 256; batch_size < 1280; batch_size += 128) {
9196*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9197*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9198*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9199*4bdc9457SAndroid Build Coastguard Worker     }
9200*4bdc9457SAndroid Build Coastguard Worker   }
9201*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X128,batch_lt_128)9202*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X128, batch_lt_128) {
9203*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9204*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 128; batch_size++) {
9205*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9206*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9207*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9208*4bdc9457SAndroid Build Coastguard Worker     }
9209*4bdc9457SAndroid Build Coastguard Worker   }
9210*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X128,batch_gt_128)9211*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X128, batch_gt_128) {
9212*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9213*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 129; batch_size < 256; batch_size++) {
9214*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9215*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9216*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9217*4bdc9457SAndroid Build Coastguard Worker     }
9218*4bdc9457SAndroid Build Coastguard Worker   }
9219*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X128,inplace)9220*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR1_P5_SCALEF_NR1FMA_X128, inplace) {
9221*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9222*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 640; batch_size += 127) {
9223*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9224*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9225*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9226*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr1_p5_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr1_p5_params);
9227*4bdc9457SAndroid Build Coastguard Worker     }
9228*4bdc9457SAndroid Build Coastguard Worker   }
9229*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9230*4bdc9457SAndroid Build Coastguard Worker 
9231*4bdc9457SAndroid Build Coastguard Worker 
9232*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X16,batch_eq_16)9233*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X16, batch_eq_16) {
9234*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9235*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9236*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
9237*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9238*4bdc9457SAndroid Build Coastguard Worker   }
9239*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X16,batch_div_16)9240*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X16, batch_div_16) {
9241*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9242*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
9243*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9244*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9245*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9246*4bdc9457SAndroid Build Coastguard Worker     }
9247*4bdc9457SAndroid Build Coastguard Worker   }
9248*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X16,batch_lt_16)9249*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X16, batch_lt_16) {
9250*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9251*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
9252*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9253*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9254*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9255*4bdc9457SAndroid Build Coastguard Worker     }
9256*4bdc9457SAndroid Build Coastguard Worker   }
9257*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X16,batch_gt_16)9258*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X16, batch_gt_16) {
9259*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9260*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
9261*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9262*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9263*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9264*4bdc9457SAndroid Build Coastguard Worker     }
9265*4bdc9457SAndroid Build Coastguard Worker   }
9266*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X16,inplace)9267*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X16, inplace) {
9268*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9269*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
9270*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9271*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9272*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9273*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x16, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9274*4bdc9457SAndroid Build Coastguard Worker     }
9275*4bdc9457SAndroid Build Coastguard Worker   }
9276*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9277*4bdc9457SAndroid Build Coastguard Worker 
9278*4bdc9457SAndroid Build Coastguard Worker 
9279*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X32,batch_eq_32)9280*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X32, batch_eq_32) {
9281*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9282*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9283*4bdc9457SAndroid Build Coastguard Worker       .batch_size(32)
9284*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9285*4bdc9457SAndroid Build Coastguard Worker   }
9286*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X32,batch_div_32)9287*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X32, batch_div_32) {
9288*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9289*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 64; batch_size < 320; batch_size += 32) {
9290*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9291*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9292*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9293*4bdc9457SAndroid Build Coastguard Worker     }
9294*4bdc9457SAndroid Build Coastguard Worker   }
9295*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X32,batch_lt_32)9296*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X32, batch_lt_32) {
9297*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9298*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 32; batch_size++) {
9299*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9300*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9301*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9302*4bdc9457SAndroid Build Coastguard Worker     }
9303*4bdc9457SAndroid Build Coastguard Worker   }
9304*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X32,batch_gt_32)9305*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X32, batch_gt_32) {
9306*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9307*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 33; batch_size < 64; batch_size++) {
9308*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9309*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9310*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9311*4bdc9457SAndroid Build Coastguard Worker     }
9312*4bdc9457SAndroid Build Coastguard Worker   }
9313*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X32,inplace)9314*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X32, inplace) {
9315*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9316*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 160; batch_size += 31) {
9317*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9318*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9319*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9320*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x32, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9321*4bdc9457SAndroid Build Coastguard Worker     }
9322*4bdc9457SAndroid Build Coastguard Worker   }
9323*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9324*4bdc9457SAndroid Build Coastguard Worker 
9325*4bdc9457SAndroid Build Coastguard Worker 
9326*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X48,batch_eq_48)9327*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X48, batch_eq_48) {
9328*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9329*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9330*4bdc9457SAndroid Build Coastguard Worker       .batch_size(48)
9331*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9332*4bdc9457SAndroid Build Coastguard Worker   }
9333*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X48,batch_div_48)9334*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X48, batch_div_48) {
9335*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9336*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 96; batch_size < 480; batch_size += 48) {
9337*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9338*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9339*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9340*4bdc9457SAndroid Build Coastguard Worker     }
9341*4bdc9457SAndroid Build Coastguard Worker   }
9342*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X48,batch_lt_48)9343*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X48, batch_lt_48) {
9344*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9345*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 48; batch_size++) {
9346*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9347*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9348*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9349*4bdc9457SAndroid Build Coastguard Worker     }
9350*4bdc9457SAndroid Build Coastguard Worker   }
9351*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X48,batch_gt_48)9352*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X48, batch_gt_48) {
9353*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9354*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 49; batch_size < 96; batch_size++) {
9355*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9356*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9357*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9358*4bdc9457SAndroid Build Coastguard Worker     }
9359*4bdc9457SAndroid Build Coastguard Worker   }
9360*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X48,inplace)9361*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X48, inplace) {
9362*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9363*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 240; batch_size += 47) {
9364*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9365*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9366*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9367*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x48, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9368*4bdc9457SAndroid Build Coastguard Worker     }
9369*4bdc9457SAndroid Build Coastguard Worker   }
9370*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9371*4bdc9457SAndroid Build Coastguard Worker 
9372*4bdc9457SAndroid Build Coastguard Worker 
9373*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X64,batch_eq_64)9374*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X64, batch_eq_64) {
9375*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9376*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9377*4bdc9457SAndroid Build Coastguard Worker       .batch_size(64)
9378*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9379*4bdc9457SAndroid Build Coastguard Worker   }
9380*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X64,batch_div_64)9381*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X64, batch_div_64) {
9382*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9383*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 128; batch_size < 640; batch_size += 64) {
9384*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9385*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9386*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9387*4bdc9457SAndroid Build Coastguard Worker     }
9388*4bdc9457SAndroid Build Coastguard Worker   }
9389*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X64,batch_lt_64)9390*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X64, batch_lt_64) {
9391*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9392*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 64; batch_size++) {
9393*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9394*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9395*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9396*4bdc9457SAndroid Build Coastguard Worker     }
9397*4bdc9457SAndroid Build Coastguard Worker   }
9398*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X64,batch_gt_64)9399*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X64, batch_gt_64) {
9400*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9401*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 65; batch_size < 128; batch_size++) {
9402*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9403*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9404*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9405*4bdc9457SAndroid Build Coastguard Worker     }
9406*4bdc9457SAndroid Build Coastguard Worker   }
9407*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X64,inplace)9408*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X64, inplace) {
9409*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9410*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 320; batch_size += 63) {
9411*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9412*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9413*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9414*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x64, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9415*4bdc9457SAndroid Build Coastguard Worker     }
9416*4bdc9457SAndroid Build Coastguard Worker   }
9417*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9418*4bdc9457SAndroid Build Coastguard Worker 
9419*4bdc9457SAndroid Build Coastguard Worker 
9420*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X80,batch_eq_80)9421*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X80, batch_eq_80) {
9422*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9423*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9424*4bdc9457SAndroid Build Coastguard Worker       .batch_size(80)
9425*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9426*4bdc9457SAndroid Build Coastguard Worker   }
9427*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X80,batch_div_80)9428*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X80, batch_div_80) {
9429*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9430*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 160; batch_size < 800; batch_size += 80) {
9431*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9432*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9433*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9434*4bdc9457SAndroid Build Coastguard Worker     }
9435*4bdc9457SAndroid Build Coastguard Worker   }
9436*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X80,batch_lt_80)9437*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X80, batch_lt_80) {
9438*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9439*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 80; batch_size++) {
9440*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9441*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9442*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9443*4bdc9457SAndroid Build Coastguard Worker     }
9444*4bdc9457SAndroid Build Coastguard Worker   }
9445*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X80,batch_gt_80)9446*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X80, batch_gt_80) {
9447*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9448*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 81; batch_size < 160; batch_size++) {
9449*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9450*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9451*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9452*4bdc9457SAndroid Build Coastguard Worker     }
9453*4bdc9457SAndroid Build Coastguard Worker   }
9454*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X80,inplace)9455*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X80, inplace) {
9456*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9457*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 400; batch_size += 79) {
9458*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9459*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9460*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9461*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x80, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9462*4bdc9457SAndroid Build Coastguard Worker     }
9463*4bdc9457SAndroid Build Coastguard Worker   }
9464*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9465*4bdc9457SAndroid Build Coastguard Worker 
9466*4bdc9457SAndroid Build Coastguard Worker 
9467*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X96,batch_eq_96)9468*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X96, batch_eq_96) {
9469*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9470*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9471*4bdc9457SAndroid Build Coastguard Worker       .batch_size(96)
9472*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9473*4bdc9457SAndroid Build Coastguard Worker   }
9474*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X96,batch_div_96)9475*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X96, batch_div_96) {
9476*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9477*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 192; batch_size < 960; batch_size += 96) {
9478*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9479*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9480*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9481*4bdc9457SAndroid Build Coastguard Worker     }
9482*4bdc9457SAndroid Build Coastguard Worker   }
9483*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X96,batch_lt_96)9484*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X96, batch_lt_96) {
9485*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9486*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 96; batch_size++) {
9487*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9488*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9489*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9490*4bdc9457SAndroid Build Coastguard Worker     }
9491*4bdc9457SAndroid Build Coastguard Worker   }
9492*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X96,batch_gt_96)9493*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X96, batch_gt_96) {
9494*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9495*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 97; batch_size < 192; batch_size++) {
9496*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9497*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9498*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9499*4bdc9457SAndroid Build Coastguard Worker     }
9500*4bdc9457SAndroid Build Coastguard Worker   }
9501*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X96,inplace)9502*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X96, inplace) {
9503*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9504*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 480; batch_size += 95) {
9505*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9506*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9507*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9508*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x96, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9509*4bdc9457SAndroid Build Coastguard Worker     }
9510*4bdc9457SAndroid Build Coastguard Worker   }
9511*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9512*4bdc9457SAndroid Build Coastguard Worker 
9513*4bdc9457SAndroid Build Coastguard Worker 
9514*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X112,batch_eq_112)9515*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X112, batch_eq_112) {
9516*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9517*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9518*4bdc9457SAndroid Build Coastguard Worker       .batch_size(112)
9519*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9520*4bdc9457SAndroid Build Coastguard Worker   }
9521*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X112,batch_div_112)9522*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X112, batch_div_112) {
9523*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9524*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 224; batch_size < 1120; batch_size += 112) {
9525*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9526*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9527*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9528*4bdc9457SAndroid Build Coastguard Worker     }
9529*4bdc9457SAndroid Build Coastguard Worker   }
9530*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X112,batch_lt_112)9531*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X112, batch_lt_112) {
9532*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9533*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 112; batch_size++) {
9534*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9535*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9536*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9537*4bdc9457SAndroid Build Coastguard Worker     }
9538*4bdc9457SAndroid Build Coastguard Worker   }
9539*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X112,batch_gt_112)9540*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X112, batch_gt_112) {
9541*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9542*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 113; batch_size < 224; batch_size++) {
9543*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9544*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9545*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9546*4bdc9457SAndroid Build Coastguard Worker     }
9547*4bdc9457SAndroid Build Coastguard Worker   }
9548*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X112,inplace)9549*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X112, inplace) {
9550*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9551*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 560; batch_size += 111) {
9552*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9553*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9554*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9555*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x112, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9556*4bdc9457SAndroid Build Coastguard Worker     }
9557*4bdc9457SAndroid Build Coastguard Worker   }
9558*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9559*4bdc9457SAndroid Build Coastguard Worker 
9560*4bdc9457SAndroid Build Coastguard Worker 
9561*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X128,batch_eq_128)9562*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X128, batch_eq_128) {
9563*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9564*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9565*4bdc9457SAndroid Build Coastguard Worker       .batch_size(128)
9566*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9567*4bdc9457SAndroid Build Coastguard Worker   }
9568*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X128,batch_div_128)9569*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X128, batch_div_128) {
9570*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9571*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 256; batch_size < 1280; batch_size += 128) {
9572*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9573*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9574*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9575*4bdc9457SAndroid Build Coastguard Worker     }
9576*4bdc9457SAndroid Build Coastguard Worker   }
9577*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X128,batch_lt_128)9578*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X128, batch_lt_128) {
9579*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9580*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 128; batch_size++) {
9581*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9582*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9583*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9584*4bdc9457SAndroid Build Coastguard Worker     }
9585*4bdc9457SAndroid Build Coastguard Worker   }
9586*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X128,batch_gt_128)9587*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X128, batch_gt_128) {
9588*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9589*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 129; batch_size < 256; batch_size++) {
9590*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9591*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9592*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9593*4bdc9457SAndroid Build Coastguard Worker     }
9594*4bdc9457SAndroid Build Coastguard Worker   }
9595*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X128,inplace)9596*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_DIV_X128, inplace) {
9597*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9598*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 640; batch_size += 127) {
9599*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9600*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9601*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9602*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_div_x128, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9603*4bdc9457SAndroid Build Coastguard Worker     }
9604*4bdc9457SAndroid Build Coastguard Worker   }
9605*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9606*4bdc9457SAndroid Build Coastguard Worker 
9607*4bdc9457SAndroid Build Coastguard Worker 
9608*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X16,batch_eq_16)9609*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X16, batch_eq_16) {
9610*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9611*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9612*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
9613*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9614*4bdc9457SAndroid Build Coastguard Worker   }
9615*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X16,batch_div_16)9616*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X16, batch_div_16) {
9617*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9618*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
9619*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9620*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9621*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9622*4bdc9457SAndroid Build Coastguard Worker     }
9623*4bdc9457SAndroid Build Coastguard Worker   }
9624*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X16,batch_lt_16)9625*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X16, batch_lt_16) {
9626*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9627*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
9628*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9629*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9630*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9631*4bdc9457SAndroid Build Coastguard Worker     }
9632*4bdc9457SAndroid Build Coastguard Worker   }
9633*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X16,batch_gt_16)9634*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X16, batch_gt_16) {
9635*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9636*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
9637*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9638*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9639*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9640*4bdc9457SAndroid Build Coastguard Worker     }
9641*4bdc9457SAndroid Build Coastguard Worker   }
9642*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X16,inplace)9643*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X16, inplace) {
9644*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9645*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
9646*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9647*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9648*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9649*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x16, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9650*4bdc9457SAndroid Build Coastguard Worker     }
9651*4bdc9457SAndroid Build Coastguard Worker   }
9652*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9653*4bdc9457SAndroid Build Coastguard Worker 
9654*4bdc9457SAndroid Build Coastguard Worker 
9655*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X32,batch_eq_32)9656*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X32, batch_eq_32) {
9657*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9658*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9659*4bdc9457SAndroid Build Coastguard Worker       .batch_size(32)
9660*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9661*4bdc9457SAndroid Build Coastguard Worker   }
9662*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X32,batch_div_32)9663*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X32, batch_div_32) {
9664*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9665*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 64; batch_size < 320; batch_size += 32) {
9666*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9667*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9668*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9669*4bdc9457SAndroid Build Coastguard Worker     }
9670*4bdc9457SAndroid Build Coastguard Worker   }
9671*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X32,batch_lt_32)9672*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X32, batch_lt_32) {
9673*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9674*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 32; batch_size++) {
9675*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9676*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9677*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9678*4bdc9457SAndroid Build Coastguard Worker     }
9679*4bdc9457SAndroid Build Coastguard Worker   }
9680*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X32,batch_gt_32)9681*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X32, batch_gt_32) {
9682*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9683*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 33; batch_size < 64; batch_size++) {
9684*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9685*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9686*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9687*4bdc9457SAndroid Build Coastguard Worker     }
9688*4bdc9457SAndroid Build Coastguard Worker   }
9689*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X32,inplace)9690*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X32, inplace) {
9691*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9692*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 160; batch_size += 31) {
9693*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9694*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9695*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9696*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x32, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9697*4bdc9457SAndroid Build Coastguard Worker     }
9698*4bdc9457SAndroid Build Coastguard Worker   }
9699*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9700*4bdc9457SAndroid Build Coastguard Worker 
9701*4bdc9457SAndroid Build Coastguard Worker 
9702*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X48,batch_eq_48)9703*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X48, batch_eq_48) {
9704*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9705*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9706*4bdc9457SAndroid Build Coastguard Worker       .batch_size(48)
9707*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9708*4bdc9457SAndroid Build Coastguard Worker   }
9709*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X48,batch_div_48)9710*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X48, batch_div_48) {
9711*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9712*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 96; batch_size < 480; batch_size += 48) {
9713*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9714*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9715*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9716*4bdc9457SAndroid Build Coastguard Worker     }
9717*4bdc9457SAndroid Build Coastguard Worker   }
9718*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X48,batch_lt_48)9719*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X48, batch_lt_48) {
9720*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9721*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 48; batch_size++) {
9722*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9723*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9724*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9725*4bdc9457SAndroid Build Coastguard Worker     }
9726*4bdc9457SAndroid Build Coastguard Worker   }
9727*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X48,batch_gt_48)9728*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X48, batch_gt_48) {
9729*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9730*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 49; batch_size < 96; batch_size++) {
9731*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9732*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9733*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9734*4bdc9457SAndroid Build Coastguard Worker     }
9735*4bdc9457SAndroid Build Coastguard Worker   }
9736*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X48,inplace)9737*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X48, inplace) {
9738*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9739*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 240; batch_size += 47) {
9740*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9741*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9742*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9743*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x48, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9744*4bdc9457SAndroid Build Coastguard Worker     }
9745*4bdc9457SAndroid Build Coastguard Worker   }
9746*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9747*4bdc9457SAndroid Build Coastguard Worker 
9748*4bdc9457SAndroid Build Coastguard Worker 
9749*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X64,batch_eq_64)9750*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X64, batch_eq_64) {
9751*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9752*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9753*4bdc9457SAndroid Build Coastguard Worker       .batch_size(64)
9754*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9755*4bdc9457SAndroid Build Coastguard Worker   }
9756*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X64,batch_div_64)9757*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X64, batch_div_64) {
9758*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9759*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 128; batch_size < 640; batch_size += 64) {
9760*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9761*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9762*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9763*4bdc9457SAndroid Build Coastguard Worker     }
9764*4bdc9457SAndroid Build Coastguard Worker   }
9765*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X64,batch_lt_64)9766*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X64, batch_lt_64) {
9767*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9768*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 64; batch_size++) {
9769*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9770*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9771*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9772*4bdc9457SAndroid Build Coastguard Worker     }
9773*4bdc9457SAndroid Build Coastguard Worker   }
9774*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X64,batch_gt_64)9775*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X64, batch_gt_64) {
9776*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9777*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 65; batch_size < 128; batch_size++) {
9778*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9779*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9780*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9781*4bdc9457SAndroid Build Coastguard Worker     }
9782*4bdc9457SAndroid Build Coastguard Worker   }
9783*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X64,inplace)9784*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X64, inplace) {
9785*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9786*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 320; batch_size += 63) {
9787*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9788*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9789*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9790*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x64, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9791*4bdc9457SAndroid Build Coastguard Worker     }
9792*4bdc9457SAndroid Build Coastguard Worker   }
9793*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9794*4bdc9457SAndroid Build Coastguard Worker 
9795*4bdc9457SAndroid Build Coastguard Worker 
9796*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X80,batch_eq_80)9797*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X80, batch_eq_80) {
9798*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9799*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9800*4bdc9457SAndroid Build Coastguard Worker       .batch_size(80)
9801*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9802*4bdc9457SAndroid Build Coastguard Worker   }
9803*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X80,batch_div_80)9804*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X80, batch_div_80) {
9805*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9806*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 160; batch_size < 800; batch_size += 80) {
9807*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9808*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9809*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9810*4bdc9457SAndroid Build Coastguard Worker     }
9811*4bdc9457SAndroid Build Coastguard Worker   }
9812*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X80,batch_lt_80)9813*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X80, batch_lt_80) {
9814*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9815*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 80; batch_size++) {
9816*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9817*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9818*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9819*4bdc9457SAndroid Build Coastguard Worker     }
9820*4bdc9457SAndroid Build Coastguard Worker   }
9821*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X80,batch_gt_80)9822*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X80, batch_gt_80) {
9823*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9824*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 81; batch_size < 160; batch_size++) {
9825*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9826*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9827*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9828*4bdc9457SAndroid Build Coastguard Worker     }
9829*4bdc9457SAndroid Build Coastguard Worker   }
9830*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X80,inplace)9831*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X80, inplace) {
9832*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9833*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 400; batch_size += 79) {
9834*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9835*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9836*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9837*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x80, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9838*4bdc9457SAndroid Build Coastguard Worker     }
9839*4bdc9457SAndroid Build Coastguard Worker   }
9840*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9841*4bdc9457SAndroid Build Coastguard Worker 
9842*4bdc9457SAndroid Build Coastguard Worker 
9843*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X96,batch_eq_96)9844*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X96, batch_eq_96) {
9845*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9846*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9847*4bdc9457SAndroid Build Coastguard Worker       .batch_size(96)
9848*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9849*4bdc9457SAndroid Build Coastguard Worker   }
9850*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X96,batch_div_96)9851*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X96, batch_div_96) {
9852*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9853*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 192; batch_size < 960; batch_size += 96) {
9854*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9855*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9856*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9857*4bdc9457SAndroid Build Coastguard Worker     }
9858*4bdc9457SAndroid Build Coastguard Worker   }
9859*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X96,batch_lt_96)9860*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X96, batch_lt_96) {
9861*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9862*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 96; batch_size++) {
9863*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9864*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9865*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9866*4bdc9457SAndroid Build Coastguard Worker     }
9867*4bdc9457SAndroid Build Coastguard Worker   }
9868*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X96,batch_gt_96)9869*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X96, batch_gt_96) {
9870*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9871*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 97; batch_size < 192; batch_size++) {
9872*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9873*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9874*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9875*4bdc9457SAndroid Build Coastguard Worker     }
9876*4bdc9457SAndroid Build Coastguard Worker   }
9877*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X96,inplace)9878*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X96, inplace) {
9879*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9880*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 480; batch_size += 95) {
9881*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9882*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9883*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9884*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x96, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9885*4bdc9457SAndroid Build Coastguard Worker     }
9886*4bdc9457SAndroid Build Coastguard Worker   }
9887*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9888*4bdc9457SAndroid Build Coastguard Worker 
9889*4bdc9457SAndroid Build Coastguard Worker 
9890*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X112,batch_eq_112)9891*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X112, batch_eq_112) {
9892*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9893*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9894*4bdc9457SAndroid Build Coastguard Worker       .batch_size(112)
9895*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9896*4bdc9457SAndroid Build Coastguard Worker   }
9897*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X112,batch_div_112)9898*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X112, batch_div_112) {
9899*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9900*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 224; batch_size < 1120; batch_size += 112) {
9901*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9902*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9903*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9904*4bdc9457SAndroid Build Coastguard Worker     }
9905*4bdc9457SAndroid Build Coastguard Worker   }
9906*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X112,batch_lt_112)9907*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X112, batch_lt_112) {
9908*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9909*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 112; batch_size++) {
9910*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9911*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9912*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9913*4bdc9457SAndroid Build Coastguard Worker     }
9914*4bdc9457SAndroid Build Coastguard Worker   }
9915*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X112,batch_gt_112)9916*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X112, batch_gt_112) {
9917*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9918*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 113; batch_size < 224; batch_size++) {
9919*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9920*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9921*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9922*4bdc9457SAndroid Build Coastguard Worker     }
9923*4bdc9457SAndroid Build Coastguard Worker   }
9924*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X112,inplace)9925*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X112, inplace) {
9926*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9927*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 560; batch_size += 111) {
9928*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9929*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9930*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9931*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x112, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9932*4bdc9457SAndroid Build Coastguard Worker     }
9933*4bdc9457SAndroid Build Coastguard Worker   }
9934*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9935*4bdc9457SAndroid Build Coastguard Worker 
9936*4bdc9457SAndroid Build Coastguard Worker 
9937*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_X86 || XNN_ARCH_X86_64
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X128,batch_eq_128)9938*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X128, batch_eq_128) {
9939*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9940*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9941*4bdc9457SAndroid Build Coastguard Worker       .batch_size(128)
9942*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9943*4bdc9457SAndroid Build Coastguard Worker   }
9944*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X128,batch_div_128)9945*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X128, batch_div_128) {
9946*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9947*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 256; batch_size < 1280; batch_size += 128) {
9948*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9949*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9950*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9951*4bdc9457SAndroid Build Coastguard Worker     }
9952*4bdc9457SAndroid Build Coastguard Worker   }
9953*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X128,batch_lt_128)9954*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X128, batch_lt_128) {
9955*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9956*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 128; batch_size++) {
9957*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9958*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9959*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9960*4bdc9457SAndroid Build Coastguard Worker     }
9961*4bdc9457SAndroid Build Coastguard Worker   }
9962*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X128,batch_gt_128)9963*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X128, batch_gt_128) {
9964*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9965*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 129; batch_size < 256; batch_size++) {
9966*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9967*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9968*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9969*4bdc9457SAndroid Build Coastguard Worker     }
9970*4bdc9457SAndroid Build Coastguard Worker   }
9971*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X128,inplace)9972*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__AVX512F_RR2_LUT32_P2_PERM2_SCALEF_NR1FMA_X128, inplace) {
9973*4bdc9457SAndroid Build Coastguard Worker     TEST_REQUIRES_X86_AVX512F;
9974*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 640; batch_size += 127) {
9975*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9976*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9977*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
9978*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__avx512f_rr2_lut32_p2_perm2_scalef_nr1fma_x128, xnn_init_f32_sigmoid_avx512_rr2_lut32_p2_params);
9979*4bdc9457SAndroid Build Coastguard Worker     }
9980*4bdc9457SAndroid Build Coastguard Worker   }
9981*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_X86 || XNN_ARCH_X86_64
9982*4bdc9457SAndroid Build Coastguard Worker 
9983*4bdc9457SAndroid Build Coastguard Worker 
9984*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X4,batch_eq_4)9985*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X4, batch_eq_4) {
9986*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
9987*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
9988*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
9989*4bdc9457SAndroid Build Coastguard Worker   }
9990*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X4,batch_div_4)9991*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X4, batch_div_4) {
9992*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
9993*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
9994*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
9995*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
9996*4bdc9457SAndroid Build Coastguard Worker     }
9997*4bdc9457SAndroid Build Coastguard Worker   }
9998*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X4,batch_lt_4)9999*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X4, batch_lt_4) {
10000*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
10001*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10002*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10003*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10004*4bdc9457SAndroid Build Coastguard Worker     }
10005*4bdc9457SAndroid Build Coastguard Worker   }
10006*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X4,batch_gt_4)10007*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X4, batch_gt_4) {
10008*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
10009*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10010*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10011*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10012*4bdc9457SAndroid Build Coastguard Worker     }
10013*4bdc9457SAndroid Build Coastguard Worker   }
10014*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X4,inplace)10015*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X4, inplace) {
10016*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
10017*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10018*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10019*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
10020*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10021*4bdc9457SAndroid Build Coastguard Worker     }
10022*4bdc9457SAndroid Build Coastguard Worker   }
10023*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
10024*4bdc9457SAndroid Build Coastguard Worker 
10025*4bdc9457SAndroid Build Coastguard Worker 
10026*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X8,batch_eq_8)10027*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X8, batch_eq_8) {
10028*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10029*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
10030*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10031*4bdc9457SAndroid Build Coastguard Worker   }
10032*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X8,batch_div_8)10033*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X8, batch_div_8) {
10034*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
10035*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10036*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10037*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10038*4bdc9457SAndroid Build Coastguard Worker     }
10039*4bdc9457SAndroid Build Coastguard Worker   }
10040*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X8,batch_lt_8)10041*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X8, batch_lt_8) {
10042*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
10043*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10044*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10045*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10046*4bdc9457SAndroid Build Coastguard Worker     }
10047*4bdc9457SAndroid Build Coastguard Worker   }
10048*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X8,batch_gt_8)10049*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X8, batch_gt_8) {
10050*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
10051*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10052*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10053*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10054*4bdc9457SAndroid Build Coastguard Worker     }
10055*4bdc9457SAndroid Build Coastguard Worker   }
10056*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X8,inplace)10057*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X8, inplace) {
10058*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
10059*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10060*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10061*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
10062*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x8, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10063*4bdc9457SAndroid Build Coastguard Worker     }
10064*4bdc9457SAndroid Build Coastguard Worker   }
10065*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
10066*4bdc9457SAndroid Build Coastguard Worker 
10067*4bdc9457SAndroid Build Coastguard Worker 
10068*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X12,batch_eq_12)10069*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X12, batch_eq_12) {
10070*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10071*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
10072*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10073*4bdc9457SAndroid Build Coastguard Worker   }
10074*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X12,batch_div_12)10075*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X12, batch_div_12) {
10076*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
10077*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10078*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10079*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10080*4bdc9457SAndroid Build Coastguard Worker     }
10081*4bdc9457SAndroid Build Coastguard Worker   }
10082*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X12,batch_lt_12)10083*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X12, batch_lt_12) {
10084*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
10085*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10086*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10087*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10088*4bdc9457SAndroid Build Coastguard Worker     }
10089*4bdc9457SAndroid Build Coastguard Worker   }
10090*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X12,batch_gt_12)10091*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X12, batch_gt_12) {
10092*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
10093*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10094*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10095*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10096*4bdc9457SAndroid Build Coastguard Worker     }
10097*4bdc9457SAndroid Build Coastguard Worker   }
10098*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X12,inplace)10099*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X12, inplace) {
10100*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
10101*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10102*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10103*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
10104*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x12, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10105*4bdc9457SAndroid Build Coastguard Worker     }
10106*4bdc9457SAndroid Build Coastguard Worker   }
10107*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
10108*4bdc9457SAndroid Build Coastguard Worker 
10109*4bdc9457SAndroid Build Coastguard Worker 
10110*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X16,batch_eq_16)10111*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X16, batch_eq_16) {
10112*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10113*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
10114*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10115*4bdc9457SAndroid Build Coastguard Worker   }
10116*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X16,batch_div_16)10117*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X16, batch_div_16) {
10118*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
10119*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10120*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10121*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10122*4bdc9457SAndroid Build Coastguard Worker     }
10123*4bdc9457SAndroid Build Coastguard Worker   }
10124*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X16,batch_lt_16)10125*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X16, batch_lt_16) {
10126*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
10127*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10128*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10129*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10130*4bdc9457SAndroid Build Coastguard Worker     }
10131*4bdc9457SAndroid Build Coastguard Worker   }
10132*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X16,batch_gt_16)10133*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X16, batch_gt_16) {
10134*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
10135*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10136*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10137*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10138*4bdc9457SAndroid Build Coastguard Worker     }
10139*4bdc9457SAndroid Build Coastguard Worker   }
10140*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X16,inplace)10141*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X16, inplace) {
10142*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
10143*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10144*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10145*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
10146*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x16, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10147*4bdc9457SAndroid Build Coastguard Worker     }
10148*4bdc9457SAndroid Build Coastguard Worker   }
10149*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
10150*4bdc9457SAndroid Build Coastguard Worker 
10151*4bdc9457SAndroid Build Coastguard Worker 
10152*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X20,batch_eq_20)10153*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X20, batch_eq_20) {
10154*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10155*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
10156*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10157*4bdc9457SAndroid Build Coastguard Worker   }
10158*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X20,batch_div_20)10159*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X20, batch_div_20) {
10160*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
10161*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10162*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10163*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10164*4bdc9457SAndroid Build Coastguard Worker     }
10165*4bdc9457SAndroid Build Coastguard Worker   }
10166*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X20,batch_lt_20)10167*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X20, batch_lt_20) {
10168*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
10169*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10170*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10171*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10172*4bdc9457SAndroid Build Coastguard Worker     }
10173*4bdc9457SAndroid Build Coastguard Worker   }
10174*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X20,batch_gt_20)10175*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X20, batch_gt_20) {
10176*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
10177*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10178*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10179*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10180*4bdc9457SAndroid Build Coastguard Worker     }
10181*4bdc9457SAndroid Build Coastguard Worker   }
10182*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X20,inplace)10183*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X20, inplace) {
10184*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
10185*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10186*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10187*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
10188*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x20, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10189*4bdc9457SAndroid Build Coastguard Worker     }
10190*4bdc9457SAndroid Build Coastguard Worker   }
10191*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
10192*4bdc9457SAndroid Build Coastguard Worker 
10193*4bdc9457SAndroid Build Coastguard Worker 
10194*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X24,batch_eq_24)10195*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X24, batch_eq_24) {
10196*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10197*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
10198*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10199*4bdc9457SAndroid Build Coastguard Worker   }
10200*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X24,batch_div_24)10201*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X24, batch_div_24) {
10202*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
10203*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10204*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10205*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10206*4bdc9457SAndroid Build Coastguard Worker     }
10207*4bdc9457SAndroid Build Coastguard Worker   }
10208*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X24,batch_lt_24)10209*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X24, batch_lt_24) {
10210*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
10211*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10212*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10213*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10214*4bdc9457SAndroid Build Coastguard Worker     }
10215*4bdc9457SAndroid Build Coastguard Worker   }
10216*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X24,batch_gt_24)10217*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X24, batch_gt_24) {
10218*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
10219*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10220*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10221*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10222*4bdc9457SAndroid Build Coastguard Worker     }
10223*4bdc9457SAndroid Build Coastguard Worker   }
10224*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X24,inplace)10225*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_LUT64_P2_DIV_X24, inplace) {
10226*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
10227*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10228*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10229*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
10230*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_lut64_p2_div_x24, xnn_init_f32_sigmoid_wasmsimd_rr2_lut64_p2_params);
10231*4bdc9457SAndroid Build Coastguard Worker     }
10232*4bdc9457SAndroid Build Coastguard Worker   }
10233*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
10234*4bdc9457SAndroid Build Coastguard Worker 
10235*4bdc9457SAndroid Build Coastguard Worker 
10236*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X4,batch_eq_4)10237*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X4, batch_eq_4) {
10238*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10239*4bdc9457SAndroid Build Coastguard Worker       .batch_size(4)
10240*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x4, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10241*4bdc9457SAndroid Build Coastguard Worker   }
10242*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X4,batch_div_4)10243*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X4, batch_div_4) {
10244*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
10245*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10246*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10247*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x4, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10248*4bdc9457SAndroid Build Coastguard Worker     }
10249*4bdc9457SAndroid Build Coastguard Worker   }
10250*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X4,batch_lt_4)10251*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X4, batch_lt_4) {
10252*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 4; batch_size++) {
10253*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10254*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10255*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x4, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10256*4bdc9457SAndroid Build Coastguard Worker     }
10257*4bdc9457SAndroid Build Coastguard Worker   }
10258*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X4,batch_gt_4)10259*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X4, batch_gt_4) {
10260*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 5; batch_size < 8; batch_size++) {
10261*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10262*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10263*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x4, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10264*4bdc9457SAndroid Build Coastguard Worker     }
10265*4bdc9457SAndroid Build Coastguard Worker   }
10266*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X4,inplace)10267*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X4, inplace) {
10268*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
10269*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10270*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10271*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
10272*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x4, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10273*4bdc9457SAndroid Build Coastguard Worker     }
10274*4bdc9457SAndroid Build Coastguard Worker   }
10275*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
10276*4bdc9457SAndroid Build Coastguard Worker 
10277*4bdc9457SAndroid Build Coastguard Worker 
10278*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X8,batch_eq_8)10279*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X8, batch_eq_8) {
10280*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10281*4bdc9457SAndroid Build Coastguard Worker       .batch_size(8)
10282*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x8, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10283*4bdc9457SAndroid Build Coastguard Worker   }
10284*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X8,batch_div_8)10285*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X8, batch_div_8) {
10286*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 16; batch_size < 80; batch_size += 8) {
10287*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10288*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10289*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x8, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10290*4bdc9457SAndroid Build Coastguard Worker     }
10291*4bdc9457SAndroid Build Coastguard Worker   }
10292*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X8,batch_lt_8)10293*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X8, batch_lt_8) {
10294*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 8; batch_size++) {
10295*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10296*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10297*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x8, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10298*4bdc9457SAndroid Build Coastguard Worker     }
10299*4bdc9457SAndroid Build Coastguard Worker   }
10300*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X8,batch_gt_8)10301*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X8, batch_gt_8) {
10302*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 9; batch_size < 16; batch_size++) {
10303*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10304*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10305*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x8, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10306*4bdc9457SAndroid Build Coastguard Worker     }
10307*4bdc9457SAndroid Build Coastguard Worker   }
10308*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X8,inplace)10309*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X8, inplace) {
10310*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 40; batch_size += 7) {
10311*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10312*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10313*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
10314*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x8, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10315*4bdc9457SAndroid Build Coastguard Worker     }
10316*4bdc9457SAndroid Build Coastguard Worker   }
10317*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
10318*4bdc9457SAndroid Build Coastguard Worker 
10319*4bdc9457SAndroid Build Coastguard Worker 
10320*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X12,batch_eq_12)10321*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X12, batch_eq_12) {
10322*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10323*4bdc9457SAndroid Build Coastguard Worker       .batch_size(12)
10324*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x12, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10325*4bdc9457SAndroid Build Coastguard Worker   }
10326*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X12,batch_div_12)10327*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X12, batch_div_12) {
10328*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 24; batch_size < 120; batch_size += 12) {
10329*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10330*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10331*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x12, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10332*4bdc9457SAndroid Build Coastguard Worker     }
10333*4bdc9457SAndroid Build Coastguard Worker   }
10334*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X12,batch_lt_12)10335*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X12, batch_lt_12) {
10336*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 12; batch_size++) {
10337*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10338*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10339*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x12, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10340*4bdc9457SAndroid Build Coastguard Worker     }
10341*4bdc9457SAndroid Build Coastguard Worker   }
10342*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X12,batch_gt_12)10343*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X12, batch_gt_12) {
10344*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 13; batch_size < 24; batch_size++) {
10345*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10346*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10347*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x12, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10348*4bdc9457SAndroid Build Coastguard Worker     }
10349*4bdc9457SAndroid Build Coastguard Worker   }
10350*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X12,inplace)10351*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X12, inplace) {
10352*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 60; batch_size += 11) {
10353*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10354*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10355*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
10356*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x12, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10357*4bdc9457SAndroid Build Coastguard Worker     }
10358*4bdc9457SAndroid Build Coastguard Worker   }
10359*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
10360*4bdc9457SAndroid Build Coastguard Worker 
10361*4bdc9457SAndroid Build Coastguard Worker 
10362*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X16,batch_eq_16)10363*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X16, batch_eq_16) {
10364*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10365*4bdc9457SAndroid Build Coastguard Worker       .batch_size(16)
10366*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x16, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10367*4bdc9457SAndroid Build Coastguard Worker   }
10368*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X16,batch_div_16)10369*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X16, batch_div_16) {
10370*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 32; batch_size < 160; batch_size += 16) {
10371*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10372*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10373*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x16, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10374*4bdc9457SAndroid Build Coastguard Worker     }
10375*4bdc9457SAndroid Build Coastguard Worker   }
10376*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X16,batch_lt_16)10377*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X16, batch_lt_16) {
10378*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 16; batch_size++) {
10379*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10380*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10381*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x16, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10382*4bdc9457SAndroid Build Coastguard Worker     }
10383*4bdc9457SAndroid Build Coastguard Worker   }
10384*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X16,batch_gt_16)10385*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X16, batch_gt_16) {
10386*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 17; batch_size < 32; batch_size++) {
10387*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10388*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10389*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x16, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10390*4bdc9457SAndroid Build Coastguard Worker     }
10391*4bdc9457SAndroid Build Coastguard Worker   }
10392*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X16,inplace)10393*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X16, inplace) {
10394*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 80; batch_size += 15) {
10395*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10396*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10397*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
10398*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x16, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10399*4bdc9457SAndroid Build Coastguard Worker     }
10400*4bdc9457SAndroid Build Coastguard Worker   }
10401*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
10402*4bdc9457SAndroid Build Coastguard Worker 
10403*4bdc9457SAndroid Build Coastguard Worker 
10404*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X20,batch_eq_20)10405*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X20, batch_eq_20) {
10406*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10407*4bdc9457SAndroid Build Coastguard Worker       .batch_size(20)
10408*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x20, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10409*4bdc9457SAndroid Build Coastguard Worker   }
10410*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X20,batch_div_20)10411*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X20, batch_div_20) {
10412*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 40; batch_size < 200; batch_size += 20) {
10413*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10414*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10415*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x20, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10416*4bdc9457SAndroid Build Coastguard Worker     }
10417*4bdc9457SAndroid Build Coastguard Worker   }
10418*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X20,batch_lt_20)10419*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X20, batch_lt_20) {
10420*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 20; batch_size++) {
10421*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10422*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10423*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x20, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10424*4bdc9457SAndroid Build Coastguard Worker     }
10425*4bdc9457SAndroid Build Coastguard Worker   }
10426*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X20,batch_gt_20)10427*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X20, batch_gt_20) {
10428*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 21; batch_size < 40; batch_size++) {
10429*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10430*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10431*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x20, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10432*4bdc9457SAndroid Build Coastguard Worker     }
10433*4bdc9457SAndroid Build Coastguard Worker   }
10434*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X20,inplace)10435*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X20, inplace) {
10436*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 100; batch_size += 19) {
10437*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10438*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10439*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
10440*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x20, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10441*4bdc9457SAndroid Build Coastguard Worker     }
10442*4bdc9457SAndroid Build Coastguard Worker   }
10443*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
10444*4bdc9457SAndroid Build Coastguard Worker 
10445*4bdc9457SAndroid Build Coastguard Worker 
10446*4bdc9457SAndroid Build Coastguard Worker #if XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X24,batch_eq_24)10447*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X24, batch_eq_24) {
10448*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10449*4bdc9457SAndroid Build Coastguard Worker       .batch_size(24)
10450*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x24, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10451*4bdc9457SAndroid Build Coastguard Worker   }
10452*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X24,batch_div_24)10453*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X24, batch_div_24) {
10454*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 48; batch_size < 240; batch_size += 24) {
10455*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10456*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10457*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x24, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10458*4bdc9457SAndroid Build Coastguard Worker     }
10459*4bdc9457SAndroid Build Coastguard Worker   }
10460*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X24,batch_lt_24)10461*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X24, batch_lt_24) {
10462*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size < 24; batch_size++) {
10463*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10464*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10465*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x24, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10466*4bdc9457SAndroid Build Coastguard Worker     }
10467*4bdc9457SAndroid Build Coastguard Worker   }
10468*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X24,batch_gt_24)10469*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X24, batch_gt_24) {
10470*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 25; batch_size < 48; batch_size++) {
10471*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10472*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10473*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x24, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10474*4bdc9457SAndroid Build Coastguard Worker     }
10475*4bdc9457SAndroid Build Coastguard Worker   }
10476*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X24,inplace)10477*4bdc9457SAndroid Build Coastguard Worker   TEST(F32_VSIGMOID__WASMSIMD_RR2_P5_DIV_X24, inplace) {
10478*4bdc9457SAndroid Build Coastguard Worker     for (size_t batch_size = 1; batch_size <= 120; batch_size += 23) {
10479*4bdc9457SAndroid Build Coastguard Worker       VUnaryMicrokernelTester()
10480*4bdc9457SAndroid Build Coastguard Worker         .batch_size(batch_size)
10481*4bdc9457SAndroid Build Coastguard Worker         .inplace(true)
10482*4bdc9457SAndroid Build Coastguard Worker         .Test(xnn_f32_vsigmoid_ukernel__wasmsimd_rr2_p5_div_x24, xnn_init_f32_sigmoid_wasmsimd_rr2_p5_params);
10483*4bdc9457SAndroid Build Coastguard Worker     }
10484*4bdc9457SAndroid Build Coastguard Worker   }
10485*4bdc9457SAndroid Build Coastguard Worker #endif  // XNN_ARCH_WASMSIMD || XNN_ARCH_WASMRELAXEDSIMD
10486*4bdc9457SAndroid Build Coastguard Worker 
10487*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X1,batch_eq_1)10488*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X1, batch_eq_1) {
10489*4bdc9457SAndroid Build Coastguard Worker   VUnaryMicrokernelTester()
10490*4bdc9457SAndroid Build Coastguard Worker     .batch_size(1)
10491*4bdc9457SAndroid Build Coastguard Worker     .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut64_p2_div_x1, xnn_init_f32_sigmoid_scalar_rr2_lut64_p2_params);
10492*4bdc9457SAndroid Build Coastguard Worker }
10493*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X1,batch_gt_1)10494*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X1, batch_gt_1) {
10495*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 2; batch_size < 10; batch_size++) {
10496*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10497*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10498*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut64_p2_div_x1, xnn_init_f32_sigmoid_scalar_rr2_lut64_p2_params);
10499*4bdc9457SAndroid Build Coastguard Worker   }
10500*4bdc9457SAndroid Build Coastguard Worker }
10501*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X1,inplace)10502*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X1, inplace) {
10503*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size <= 5; batch_size += 1) {
10504*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10505*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10506*4bdc9457SAndroid Build Coastguard Worker       .inplace(true)
10507*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut64_p2_div_x1, xnn_init_f32_sigmoid_scalar_rr2_lut64_p2_params);
10508*4bdc9457SAndroid Build Coastguard Worker   }
10509*4bdc9457SAndroid Build Coastguard Worker }
10510*4bdc9457SAndroid Build Coastguard Worker 
10511*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X2,batch_eq_2)10512*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X2, batch_eq_2) {
10513*4bdc9457SAndroid Build Coastguard Worker   VUnaryMicrokernelTester()
10514*4bdc9457SAndroid Build Coastguard Worker     .batch_size(2)
10515*4bdc9457SAndroid Build Coastguard Worker     .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut64_p2_div_x2, xnn_init_f32_sigmoid_scalar_rr2_lut64_p2_params);
10516*4bdc9457SAndroid Build Coastguard Worker }
10517*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X2,batch_div_2)10518*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X2, batch_div_2) {
10519*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 4; batch_size < 20; batch_size += 2) {
10520*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10521*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10522*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut64_p2_div_x2, xnn_init_f32_sigmoid_scalar_rr2_lut64_p2_params);
10523*4bdc9457SAndroid Build Coastguard Worker   }
10524*4bdc9457SAndroid Build Coastguard Worker }
10525*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X2,batch_lt_2)10526*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X2, batch_lt_2) {
10527*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size < 2; batch_size++) {
10528*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10529*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10530*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut64_p2_div_x2, xnn_init_f32_sigmoid_scalar_rr2_lut64_p2_params);
10531*4bdc9457SAndroid Build Coastguard Worker   }
10532*4bdc9457SAndroid Build Coastguard Worker }
10533*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X2,batch_gt_2)10534*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X2, batch_gt_2) {
10535*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 3; batch_size < 4; batch_size++) {
10536*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10537*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10538*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut64_p2_div_x2, xnn_init_f32_sigmoid_scalar_rr2_lut64_p2_params);
10539*4bdc9457SAndroid Build Coastguard Worker   }
10540*4bdc9457SAndroid Build Coastguard Worker }
10541*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X2,inplace)10542*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X2, inplace) {
10543*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size <= 10; batch_size += 1) {
10544*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10545*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10546*4bdc9457SAndroid Build Coastguard Worker       .inplace(true)
10547*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut64_p2_div_x2, xnn_init_f32_sigmoid_scalar_rr2_lut64_p2_params);
10548*4bdc9457SAndroid Build Coastguard Worker   }
10549*4bdc9457SAndroid Build Coastguard Worker }
10550*4bdc9457SAndroid Build Coastguard Worker 
10551*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X4,batch_eq_4)10552*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X4, batch_eq_4) {
10553*4bdc9457SAndroid Build Coastguard Worker   VUnaryMicrokernelTester()
10554*4bdc9457SAndroid Build Coastguard Worker     .batch_size(4)
10555*4bdc9457SAndroid Build Coastguard Worker     .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_scalar_rr2_lut64_p2_params);
10556*4bdc9457SAndroid Build Coastguard Worker }
10557*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X4,batch_div_4)10558*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X4, batch_div_4) {
10559*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
10560*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10561*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10562*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_scalar_rr2_lut64_p2_params);
10563*4bdc9457SAndroid Build Coastguard Worker   }
10564*4bdc9457SAndroid Build Coastguard Worker }
10565*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X4,batch_lt_4)10566*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X4, batch_lt_4) {
10567*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size < 4; batch_size++) {
10568*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10569*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10570*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_scalar_rr2_lut64_p2_params);
10571*4bdc9457SAndroid Build Coastguard Worker   }
10572*4bdc9457SAndroid Build Coastguard Worker }
10573*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X4,batch_gt_4)10574*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X4, batch_gt_4) {
10575*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 5; batch_size < 8; batch_size++) {
10576*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10577*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10578*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_scalar_rr2_lut64_p2_params);
10579*4bdc9457SAndroid Build Coastguard Worker   }
10580*4bdc9457SAndroid Build Coastguard Worker }
10581*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X4,inplace)10582*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT64_P2_DIV_X4, inplace) {
10583*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
10584*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10585*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10586*4bdc9457SAndroid Build Coastguard Worker       .inplace(true)
10587*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut64_p2_div_x4, xnn_init_f32_sigmoid_scalar_rr2_lut64_p2_params);
10588*4bdc9457SAndroid Build Coastguard Worker   }
10589*4bdc9457SAndroid Build Coastguard Worker }
10590*4bdc9457SAndroid Build Coastguard Worker 
10591*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X1,batch_eq_1)10592*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X1, batch_eq_1) {
10593*4bdc9457SAndroid Build Coastguard Worker   VUnaryMicrokernelTester()
10594*4bdc9457SAndroid Build Coastguard Worker     .batch_size(1)
10595*4bdc9457SAndroid Build Coastguard Worker     .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut2048_p1_div_x1, xnn_init_f32_sigmoid_scalar_rr2_lut2048_p1_params);
10596*4bdc9457SAndroid Build Coastguard Worker }
10597*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X1,batch_gt_1)10598*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X1, batch_gt_1) {
10599*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 2; batch_size < 10; batch_size++) {
10600*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10601*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10602*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut2048_p1_div_x1, xnn_init_f32_sigmoid_scalar_rr2_lut2048_p1_params);
10603*4bdc9457SAndroid Build Coastguard Worker   }
10604*4bdc9457SAndroid Build Coastguard Worker }
10605*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X1,inplace)10606*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X1, inplace) {
10607*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size <= 5; batch_size += 1) {
10608*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10609*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10610*4bdc9457SAndroid Build Coastguard Worker       .inplace(true)
10611*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut2048_p1_div_x1, xnn_init_f32_sigmoid_scalar_rr2_lut2048_p1_params);
10612*4bdc9457SAndroid Build Coastguard Worker   }
10613*4bdc9457SAndroid Build Coastguard Worker }
10614*4bdc9457SAndroid Build Coastguard Worker 
10615*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X2,batch_eq_2)10616*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X2, batch_eq_2) {
10617*4bdc9457SAndroid Build Coastguard Worker   VUnaryMicrokernelTester()
10618*4bdc9457SAndroid Build Coastguard Worker     .batch_size(2)
10619*4bdc9457SAndroid Build Coastguard Worker     .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut2048_p1_div_x2, xnn_init_f32_sigmoid_scalar_rr2_lut2048_p1_params);
10620*4bdc9457SAndroid Build Coastguard Worker }
10621*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X2,batch_div_2)10622*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X2, batch_div_2) {
10623*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 4; batch_size < 20; batch_size += 2) {
10624*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10625*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10626*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut2048_p1_div_x2, xnn_init_f32_sigmoid_scalar_rr2_lut2048_p1_params);
10627*4bdc9457SAndroid Build Coastguard Worker   }
10628*4bdc9457SAndroid Build Coastguard Worker }
10629*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X2,batch_lt_2)10630*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X2, batch_lt_2) {
10631*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size < 2; batch_size++) {
10632*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10633*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10634*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut2048_p1_div_x2, xnn_init_f32_sigmoid_scalar_rr2_lut2048_p1_params);
10635*4bdc9457SAndroid Build Coastguard Worker   }
10636*4bdc9457SAndroid Build Coastguard Worker }
10637*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X2,batch_gt_2)10638*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X2, batch_gt_2) {
10639*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 3; batch_size < 4; batch_size++) {
10640*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10641*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10642*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut2048_p1_div_x2, xnn_init_f32_sigmoid_scalar_rr2_lut2048_p1_params);
10643*4bdc9457SAndroid Build Coastguard Worker   }
10644*4bdc9457SAndroid Build Coastguard Worker }
10645*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X2,inplace)10646*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X2, inplace) {
10647*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size <= 10; batch_size += 1) {
10648*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10649*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10650*4bdc9457SAndroid Build Coastguard Worker       .inplace(true)
10651*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut2048_p1_div_x2, xnn_init_f32_sigmoid_scalar_rr2_lut2048_p1_params);
10652*4bdc9457SAndroid Build Coastguard Worker   }
10653*4bdc9457SAndroid Build Coastguard Worker }
10654*4bdc9457SAndroid Build Coastguard Worker 
10655*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X4,batch_eq_4)10656*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X4, batch_eq_4) {
10657*4bdc9457SAndroid Build Coastguard Worker   VUnaryMicrokernelTester()
10658*4bdc9457SAndroid Build Coastguard Worker     .batch_size(4)
10659*4bdc9457SAndroid Build Coastguard Worker     .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut2048_p1_div_x4, xnn_init_f32_sigmoid_scalar_rr2_lut2048_p1_params);
10660*4bdc9457SAndroid Build Coastguard Worker }
10661*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X4,batch_div_4)10662*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X4, batch_div_4) {
10663*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
10664*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10665*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10666*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut2048_p1_div_x4, xnn_init_f32_sigmoid_scalar_rr2_lut2048_p1_params);
10667*4bdc9457SAndroid Build Coastguard Worker   }
10668*4bdc9457SAndroid Build Coastguard Worker }
10669*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X4,batch_lt_4)10670*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X4, batch_lt_4) {
10671*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size < 4; batch_size++) {
10672*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10673*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10674*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut2048_p1_div_x4, xnn_init_f32_sigmoid_scalar_rr2_lut2048_p1_params);
10675*4bdc9457SAndroid Build Coastguard Worker   }
10676*4bdc9457SAndroid Build Coastguard Worker }
10677*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X4,batch_gt_4)10678*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X4, batch_gt_4) {
10679*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 5; batch_size < 8; batch_size++) {
10680*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10681*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10682*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut2048_p1_div_x4, xnn_init_f32_sigmoid_scalar_rr2_lut2048_p1_params);
10683*4bdc9457SAndroid Build Coastguard Worker   }
10684*4bdc9457SAndroid Build Coastguard Worker }
10685*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X4,inplace)10686*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_LUT2048_P1_DIV_X4, inplace) {
10687*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
10688*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10689*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10690*4bdc9457SAndroid Build Coastguard Worker       .inplace(true)
10691*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_lut2048_p1_div_x4, xnn_init_f32_sigmoid_scalar_rr2_lut2048_p1_params);
10692*4bdc9457SAndroid Build Coastguard Worker   }
10693*4bdc9457SAndroid Build Coastguard Worker }
10694*4bdc9457SAndroid Build Coastguard Worker 
10695*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X1,batch_eq_1)10696*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X1, batch_eq_1) {
10697*4bdc9457SAndroid Build Coastguard Worker   VUnaryMicrokernelTester()
10698*4bdc9457SAndroid Build Coastguard Worker     .batch_size(1)
10699*4bdc9457SAndroid Build Coastguard Worker     .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_p5_div_x1, xnn_init_f32_sigmoid_scalar_rr2_p5_params);
10700*4bdc9457SAndroid Build Coastguard Worker }
10701*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X1,batch_gt_1)10702*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X1, batch_gt_1) {
10703*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 2; batch_size < 10; batch_size++) {
10704*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10705*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10706*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_p5_div_x1, xnn_init_f32_sigmoid_scalar_rr2_p5_params);
10707*4bdc9457SAndroid Build Coastguard Worker   }
10708*4bdc9457SAndroid Build Coastguard Worker }
10709*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X1,inplace)10710*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X1, inplace) {
10711*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size <= 5; batch_size += 1) {
10712*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10713*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10714*4bdc9457SAndroid Build Coastguard Worker       .inplace(true)
10715*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_p5_div_x1, xnn_init_f32_sigmoid_scalar_rr2_p5_params);
10716*4bdc9457SAndroid Build Coastguard Worker   }
10717*4bdc9457SAndroid Build Coastguard Worker }
10718*4bdc9457SAndroid Build Coastguard Worker 
10719*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X2,batch_eq_2)10720*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X2, batch_eq_2) {
10721*4bdc9457SAndroid Build Coastguard Worker   VUnaryMicrokernelTester()
10722*4bdc9457SAndroid Build Coastguard Worker     .batch_size(2)
10723*4bdc9457SAndroid Build Coastguard Worker     .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_p5_div_x2, xnn_init_f32_sigmoid_scalar_rr2_p5_params);
10724*4bdc9457SAndroid Build Coastguard Worker }
10725*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X2,batch_div_2)10726*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X2, batch_div_2) {
10727*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 4; batch_size < 20; batch_size += 2) {
10728*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10729*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10730*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_p5_div_x2, xnn_init_f32_sigmoid_scalar_rr2_p5_params);
10731*4bdc9457SAndroid Build Coastguard Worker   }
10732*4bdc9457SAndroid Build Coastguard Worker }
10733*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X2,batch_lt_2)10734*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X2, batch_lt_2) {
10735*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size < 2; batch_size++) {
10736*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10737*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10738*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_p5_div_x2, xnn_init_f32_sigmoid_scalar_rr2_p5_params);
10739*4bdc9457SAndroid Build Coastguard Worker   }
10740*4bdc9457SAndroid Build Coastguard Worker }
10741*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X2,batch_gt_2)10742*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X2, batch_gt_2) {
10743*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 3; batch_size < 4; batch_size++) {
10744*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10745*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10746*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_p5_div_x2, xnn_init_f32_sigmoid_scalar_rr2_p5_params);
10747*4bdc9457SAndroid Build Coastguard Worker   }
10748*4bdc9457SAndroid Build Coastguard Worker }
10749*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X2,inplace)10750*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X2, inplace) {
10751*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size <= 10; batch_size += 1) {
10752*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10753*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10754*4bdc9457SAndroid Build Coastguard Worker       .inplace(true)
10755*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_p5_div_x2, xnn_init_f32_sigmoid_scalar_rr2_p5_params);
10756*4bdc9457SAndroid Build Coastguard Worker   }
10757*4bdc9457SAndroid Build Coastguard Worker }
10758*4bdc9457SAndroid Build Coastguard Worker 
10759*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X4,batch_eq_4)10760*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X4, batch_eq_4) {
10761*4bdc9457SAndroid Build Coastguard Worker   VUnaryMicrokernelTester()
10762*4bdc9457SAndroid Build Coastguard Worker     .batch_size(4)
10763*4bdc9457SAndroid Build Coastguard Worker     .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_p5_div_x4, xnn_init_f32_sigmoid_scalar_rr2_p5_params);
10764*4bdc9457SAndroid Build Coastguard Worker }
10765*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X4,batch_div_4)10766*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X4, batch_div_4) {
10767*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 8; batch_size < 40; batch_size += 4) {
10768*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10769*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10770*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_p5_div_x4, xnn_init_f32_sigmoid_scalar_rr2_p5_params);
10771*4bdc9457SAndroid Build Coastguard Worker   }
10772*4bdc9457SAndroid Build Coastguard Worker }
10773*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X4,batch_lt_4)10774*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X4, batch_lt_4) {
10775*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size < 4; batch_size++) {
10776*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10777*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10778*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_p5_div_x4, xnn_init_f32_sigmoid_scalar_rr2_p5_params);
10779*4bdc9457SAndroid Build Coastguard Worker   }
10780*4bdc9457SAndroid Build Coastguard Worker }
10781*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X4,batch_gt_4)10782*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X4, batch_gt_4) {
10783*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 5; batch_size < 8; batch_size++) {
10784*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10785*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10786*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_p5_div_x4, xnn_init_f32_sigmoid_scalar_rr2_p5_params);
10787*4bdc9457SAndroid Build Coastguard Worker   }
10788*4bdc9457SAndroid Build Coastguard Worker }
10789*4bdc9457SAndroid Build Coastguard Worker 
TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X4,inplace)10790*4bdc9457SAndroid Build Coastguard Worker TEST(F32_VSIGMOID__SCALAR_RR2_P5_DIV_X4, inplace) {
10791*4bdc9457SAndroid Build Coastguard Worker   for (size_t batch_size = 1; batch_size <= 20; batch_size += 3) {
10792*4bdc9457SAndroid Build Coastguard Worker     VUnaryMicrokernelTester()
10793*4bdc9457SAndroid Build Coastguard Worker       .batch_size(batch_size)
10794*4bdc9457SAndroid Build Coastguard Worker       .inplace(true)
10795*4bdc9457SAndroid Build Coastguard Worker       .Test(xnn_f32_vsigmoid_ukernel__scalar_rr2_p5_div_x4, xnn_init_f32_sigmoid_scalar_rr2_p5_params);
10796*4bdc9457SAndroid Build Coastguard Worker   }
10797*4bdc9457SAndroid Build Coastguard Worker }
10798