xref: /aosp_15_r20/external/XNNPACK/test/u32-vlog.cc (revision 4bdc94577ba0e567308109d787f7fec7b531ce36)
1 // Copyright 2022 Google LLC
2 //
3 // This source code is licensed under the BSD-style license found in the
4 // LICENSE file in the root directory of this source tree.
5 //
6 // Auto-generated file. Do not edit!
7 //   Specification: test/u32-vlog.yaml
8 //   Generator: tools/generate-vlog-test.py
9 
10 
11 #include <gtest/gtest.h>
12 
13 #include <xnnpack/common.h>
14 #include <xnnpack/isa-checks.h>
15 
16 #include <xnnpack/vlog.h>
17 #include "vlog-microkernel-tester.h"
18 
19 
TEST(U32_VLOG__SCALAR_X1,DISABLED_batch_eq_1)20 TEST(U32_VLOG__SCALAR_X1, DISABLED_batch_eq_1) {
21   VLogMicrokernelTester()
22     .batch(1)
23     .Test(xnn_u32_vlog_ukernel__scalar_x1);
24 }
25 
TEST(U32_VLOG__SCALAR_X1,DISABLED_batch_gt_1)26 TEST(U32_VLOG__SCALAR_X1, DISABLED_batch_gt_1) {
27   for (size_t batch = 2; batch < 10; batch++) {
28     VLogMicrokernelTester()
29       .batch(batch)
30       .Test(xnn_u32_vlog_ukernel__scalar_x1);
31   }
32 }
33 
TEST(U32_VLOG__SCALAR_X1,DISABLED_input_lshift)34 TEST(U32_VLOG__SCALAR_X1, DISABLED_input_lshift) {
35   for (uint32_t input_lshift = 0; input_lshift < 32; input_lshift++) {
36     VLogMicrokernelTester()
37       .batch(1)
38       .input_lshift(input_lshift)
39       .Test(xnn_u32_vlog_ukernel__scalar_x1);
40   }
41 }
42 
TEST(U32_VLOG__SCALAR_X1,DISABLED_output_scale)43 TEST(U32_VLOG__SCALAR_X1, DISABLED_output_scale) {
44   for (uint32_t output_scale = 0; output_scale < 65536; output_scale += 3) {
45     VLogMicrokernelTester()
46       .batch(1)
47       .output_scale(output_scale)
48       .Test(xnn_u32_vlog_ukernel__scalar_x1);
49   }
50 }
51 
TEST(U32_VLOG__SCALAR_X1,DISABLED_inplace)52 TEST(U32_VLOG__SCALAR_X1, DISABLED_inplace) {
53   for (size_t batch = 2; batch < 10; batch++) {
54     VLogMicrokernelTester()
55       .batch(batch)
56       .inplace(true)
57       .Test(xnn_u32_vlog_ukernel__scalar_x1);
58   }
59 }
60 
61 
TEST(U32_VLOG__SCALAR_X2,DISABLED_batch_eq_2)62 TEST(U32_VLOG__SCALAR_X2, DISABLED_batch_eq_2) {
63   VLogMicrokernelTester()
64     .batch(2)
65     .Test(xnn_u32_vlog_ukernel__scalar_x2);
66 }
67 
TEST(U32_VLOG__SCALAR_X2,DISABLED_batch_div_2)68 TEST(U32_VLOG__SCALAR_X2, DISABLED_batch_div_2) {
69   for (size_t batch = 4; batch < 20; batch += 2) {
70     VLogMicrokernelTester()
71       .batch(batch)
72       .Test(xnn_u32_vlog_ukernel__scalar_x2);
73   }
74 }
75 
TEST(U32_VLOG__SCALAR_X2,DISABLED_batch_lt_2)76 TEST(U32_VLOG__SCALAR_X2, DISABLED_batch_lt_2) {
77   for (size_t batch = 1; batch < 2; batch++) {
78     VLogMicrokernelTester()
79       .batch(batch)
80       .Test(xnn_u32_vlog_ukernel__scalar_x2);
81   }
82 }
83 
TEST(U32_VLOG__SCALAR_X2,DISABLED_batch_gt_2)84 TEST(U32_VLOG__SCALAR_X2, DISABLED_batch_gt_2) {
85   for (size_t batch = 3; batch < 4; batch++) {
86     VLogMicrokernelTester()
87       .batch(batch)
88       .Test(xnn_u32_vlog_ukernel__scalar_x2);
89   }
90 }
91 
TEST(U32_VLOG__SCALAR_X2,DISABLED_input_lshift)92 TEST(U32_VLOG__SCALAR_X2, DISABLED_input_lshift) {
93   for (uint32_t input_lshift = 0; input_lshift < 32; input_lshift++) {
94     VLogMicrokernelTester()
95       .batch(2)
96       .input_lshift(input_lshift)
97       .Test(xnn_u32_vlog_ukernel__scalar_x2);
98   }
99 }
100 
TEST(U32_VLOG__SCALAR_X2,DISABLED_output_scale)101 TEST(U32_VLOG__SCALAR_X2, DISABLED_output_scale) {
102   for (uint32_t output_scale = 0; output_scale < 65536; output_scale += 5) {
103     VLogMicrokernelTester()
104       .batch(2)
105       .output_scale(output_scale)
106       .Test(xnn_u32_vlog_ukernel__scalar_x2);
107   }
108 }
109 
TEST(U32_VLOG__SCALAR_X2,DISABLED_inplace)110 TEST(U32_VLOG__SCALAR_X2, DISABLED_inplace) {
111   for (size_t batch = 3; batch < 4; batch++) {
112     VLogMicrokernelTester()
113       .batch(batch)
114       .inplace(true)
115       .Test(xnn_u32_vlog_ukernel__scalar_x2);
116   }
117 }
118 
119 
TEST(U32_VLOG__SCALAR_X3,DISABLED_batch_eq_3)120 TEST(U32_VLOG__SCALAR_X3, DISABLED_batch_eq_3) {
121   VLogMicrokernelTester()
122     .batch(3)
123     .Test(xnn_u32_vlog_ukernel__scalar_x3);
124 }
125 
TEST(U32_VLOG__SCALAR_X3,DISABLED_batch_div_3)126 TEST(U32_VLOG__SCALAR_X3, DISABLED_batch_div_3) {
127   for (size_t batch = 6; batch < 30; batch += 3) {
128     VLogMicrokernelTester()
129       .batch(batch)
130       .Test(xnn_u32_vlog_ukernel__scalar_x3);
131   }
132 }
133 
TEST(U32_VLOG__SCALAR_X3,DISABLED_batch_lt_3)134 TEST(U32_VLOG__SCALAR_X3, DISABLED_batch_lt_3) {
135   for (size_t batch = 1; batch < 3; batch++) {
136     VLogMicrokernelTester()
137       .batch(batch)
138       .Test(xnn_u32_vlog_ukernel__scalar_x3);
139   }
140 }
141 
TEST(U32_VLOG__SCALAR_X3,DISABLED_batch_gt_3)142 TEST(U32_VLOG__SCALAR_X3, DISABLED_batch_gt_3) {
143   for (size_t batch = 4; batch < 6; batch++) {
144     VLogMicrokernelTester()
145       .batch(batch)
146       .Test(xnn_u32_vlog_ukernel__scalar_x3);
147   }
148 }
149 
TEST(U32_VLOG__SCALAR_X3,DISABLED_input_lshift)150 TEST(U32_VLOG__SCALAR_X3, DISABLED_input_lshift) {
151   for (uint32_t input_lshift = 0; input_lshift < 32; input_lshift++) {
152     VLogMicrokernelTester()
153       .batch(3)
154       .input_lshift(input_lshift)
155       .Test(xnn_u32_vlog_ukernel__scalar_x3);
156   }
157 }
158 
TEST(U32_VLOG__SCALAR_X3,DISABLED_output_scale)159 TEST(U32_VLOG__SCALAR_X3, DISABLED_output_scale) {
160   for (uint32_t output_scale = 0; output_scale < 65536; output_scale += 5) {
161     VLogMicrokernelTester()
162       .batch(3)
163       .output_scale(output_scale)
164       .Test(xnn_u32_vlog_ukernel__scalar_x3);
165   }
166 }
167 
TEST(U32_VLOG__SCALAR_X3,DISABLED_inplace)168 TEST(U32_VLOG__SCALAR_X3, DISABLED_inplace) {
169   for (size_t batch = 4; batch < 6; batch++) {
170     VLogMicrokernelTester()
171       .batch(batch)
172       .inplace(true)
173       .Test(xnn_u32_vlog_ukernel__scalar_x3);
174   }
175 }
176 
177 
TEST(U32_VLOG__SCALAR_X4,DISABLED_batch_eq_4)178 TEST(U32_VLOG__SCALAR_X4, DISABLED_batch_eq_4) {
179   VLogMicrokernelTester()
180     .batch(4)
181     .Test(xnn_u32_vlog_ukernel__scalar_x4);
182 }
183 
TEST(U32_VLOG__SCALAR_X4,DISABLED_batch_div_4)184 TEST(U32_VLOG__SCALAR_X4, DISABLED_batch_div_4) {
185   for (size_t batch = 8; batch < 40; batch += 4) {
186     VLogMicrokernelTester()
187       .batch(batch)
188       .Test(xnn_u32_vlog_ukernel__scalar_x4);
189   }
190 }
191 
TEST(U32_VLOG__SCALAR_X4,DISABLED_batch_lt_4)192 TEST(U32_VLOG__SCALAR_X4, DISABLED_batch_lt_4) {
193   for (size_t batch = 1; batch < 4; batch++) {
194     VLogMicrokernelTester()
195       .batch(batch)
196       .Test(xnn_u32_vlog_ukernel__scalar_x4);
197   }
198 }
199 
TEST(U32_VLOG__SCALAR_X4,DISABLED_batch_gt_4)200 TEST(U32_VLOG__SCALAR_X4, DISABLED_batch_gt_4) {
201   for (size_t batch = 5; batch < 8; batch++) {
202     VLogMicrokernelTester()
203       .batch(batch)
204       .Test(xnn_u32_vlog_ukernel__scalar_x4);
205   }
206 }
207 
TEST(U32_VLOG__SCALAR_X4,DISABLED_input_lshift)208 TEST(U32_VLOG__SCALAR_X4, DISABLED_input_lshift) {
209   for (uint32_t input_lshift = 0; input_lshift < 32; input_lshift++) {
210     VLogMicrokernelTester()
211       .batch(4)
212       .input_lshift(input_lshift)
213       .Test(xnn_u32_vlog_ukernel__scalar_x4);
214   }
215 }
216 
TEST(U32_VLOG__SCALAR_X4,DISABLED_output_scale)217 TEST(U32_VLOG__SCALAR_X4, DISABLED_output_scale) {
218   for (uint32_t output_scale = 0; output_scale < 65536; output_scale += 7) {
219     VLogMicrokernelTester()
220       .batch(4)
221       .output_scale(output_scale)
222       .Test(xnn_u32_vlog_ukernel__scalar_x4);
223   }
224 }
225 
TEST(U32_VLOG__SCALAR_X4,DISABLED_inplace)226 TEST(U32_VLOG__SCALAR_X4, DISABLED_inplace) {
227   for (size_t batch = 5; batch < 8; batch++) {
228     VLogMicrokernelTester()
229       .batch(batch)
230       .inplace(true)
231       .Test(xnn_u32_vlog_ukernel__scalar_x4);
232   }
233 }
234