xref: /aosp_15_r20/external/XNNPACK/src/xnnpack/gemm.h (revision 4bdc94577ba0e567308109d787f7fec7b531ce36)
1*4bdc9457SAndroid Build Coastguard Worker // Copyright (c) Facebook, Inc. and its affiliates.
2*4bdc9457SAndroid Build Coastguard Worker // All rights reserved.
3*4bdc9457SAndroid Build Coastguard Worker //
4*4bdc9457SAndroid Build Coastguard Worker // Copyright 2019 Google LLC
5*4bdc9457SAndroid Build Coastguard Worker //
6*4bdc9457SAndroid Build Coastguard Worker // This source code is licensed under the BSD-style license found in the
7*4bdc9457SAndroid Build Coastguard Worker // LICENSE file in the root directory of this source tree.
8*4bdc9457SAndroid Build Coastguard Worker 
9*4bdc9457SAndroid Build Coastguard Worker #pragma once
10*4bdc9457SAndroid Build Coastguard Worker 
11*4bdc9457SAndroid Build Coastguard Worker #include <stddef.h>
12*4bdc9457SAndroid Build Coastguard Worker #include <stdint.h>
13*4bdc9457SAndroid Build Coastguard Worker 
14*4bdc9457SAndroid Build Coastguard Worker #include <xnnpack/common.h>
15*4bdc9457SAndroid Build Coastguard Worker #include <xnnpack/microparams.h>
16*4bdc9457SAndroid Build Coastguard Worker 
17*4bdc9457SAndroid Build Coastguard Worker #ifdef __cplusplus
18*4bdc9457SAndroid Build Coastguard Worker extern "C" {
19*4bdc9457SAndroid Build Coastguard Worker #endif
20*4bdc9457SAndroid Build Coastguard Worker 
21*4bdc9457SAndroid Build Coastguard Worker 
22*4bdc9457SAndroid Build Coastguard Worker #define DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(fn_name) \
23*4bdc9457SAndroid Build Coastguard Worker   void fn_name(                                            \
24*4bdc9457SAndroid Build Coastguard Worker       size_t mr,                                           \
25*4bdc9457SAndroid Build Coastguard Worker       size_t nr,                                           \
26*4bdc9457SAndroid Build Coastguard Worker       size_t k,                                            \
27*4bdc9457SAndroid Build Coastguard Worker       const void* a,                                       \
28*4bdc9457SAndroid Build Coastguard Worker       size_t a_stride,                                     \
29*4bdc9457SAndroid Build Coastguard Worker       const void* w,                                       \
30*4bdc9457SAndroid Build Coastguard Worker       void* c,                                             \
31*4bdc9457SAndroid Build Coastguard Worker       size_t cm_stride,                                    \
32*4bdc9457SAndroid Build Coastguard Worker       size_t cn_stride,                                    \
33*4bdc9457SAndroid Build Coastguard Worker       const union xnn_bf16_minmax_params* params);
34*4bdc9457SAndroid Build Coastguard Worker 
35*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_1x4c8__neonfma_shland)
36*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_2x4c8__neonfma_shland)
37*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_3x4c8__neonfma_shland)
38*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_4x4c8__neonfma_shland)
39*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_5x4c8__neonfma_shland)
40*4bdc9457SAndroid Build Coastguard Worker 
41*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_1x4c8__neonfma_zip)
42*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_2x4c8__neonfma_zip)
43*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_3x4c8__neonfma_zip)
44*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_4x4c8__neonfma_zip)
45*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_5x4c8__neonfma_zip)
46*4bdc9457SAndroid Build Coastguard Worker 
47*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_1x8c2__neonbf16_bfdot_lane_ld128)
48*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_4x8c2__neonbf16_bfdot_lane_ld128)
49*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_5x8c2__neonbf16_bfdot_lane_ld128)
50*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_6x8c2__neonbf16_bfdot_lane_ld128)
51*4bdc9457SAndroid Build Coastguard Worker 
52*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_1x4c8__neonbf16_bfdot)
53*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_2x4c8__neonbf16_bfdot)
54*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_3x4c8__neonbf16_bfdot)
55*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_4x4c8__neonbf16_bfdot)
56*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_5x4c8__neonbf16_bfdot)
57*4bdc9457SAndroid Build Coastguard Worker 
58*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_1x4c8__neonbf16_bfmlal)
59*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_2x4c8__neonbf16_bfmlal)
60*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_3x4c8__neonbf16_bfmlal)
61*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_4x4c8__neonbf16_bfmlal)
62*4bdc9457SAndroid Build Coastguard Worker DECLARE_BF16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_bf16_gemm_minmax_ukernel_5x4c8__neonbf16_bfmlal)
63*4bdc9457SAndroid Build Coastguard Worker 
64*4bdc9457SAndroid Build Coastguard Worker 
65*4bdc9457SAndroid Build Coastguard Worker #define DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(fn_name) \
66*4bdc9457SAndroid Build Coastguard Worker   void fn_name(                                           \
67*4bdc9457SAndroid Build Coastguard Worker       size_t mr,                                          \
68*4bdc9457SAndroid Build Coastguard Worker       size_t nr,                                          \
69*4bdc9457SAndroid Build Coastguard Worker       size_t k,                                           \
70*4bdc9457SAndroid Build Coastguard Worker       const void* a,                                      \
71*4bdc9457SAndroid Build Coastguard Worker       size_t a_stride,                                    \
72*4bdc9457SAndroid Build Coastguard Worker       const void* w,                                      \
73*4bdc9457SAndroid Build Coastguard Worker       void* c,                                            \
74*4bdc9457SAndroid Build Coastguard Worker       size_t cm_stride,                                   \
75*4bdc9457SAndroid Build Coastguard Worker       size_t cn_stride,                                   \
76*4bdc9457SAndroid Build Coastguard Worker       const union xnn_f16_minmax_params* params);
77*4bdc9457SAndroid Build Coastguard Worker 
78*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_1x8__aarch64_neonfp16arith_ld64)
79*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_1x8__neonfp16arith_ld64)
80*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_1x16__aarch64_neonfp16arith_ld32)
81*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_1x16__aarch64_neonfp16arith_ld64)
82*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_1x16__neonfp16arith_ld64)
83*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_4x8__aarch64_neonfp16arith_ld64)
84*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_4x8__neonfp16arith_ld64)
85*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_4x16__aarch64_neonfp16arith_ld32)
86*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_4x16__aarch64_neonfp16arith_ld64)
87*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_4x16__neonfp16arith_ld64)
88*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_6x8__aarch64_neonfp16arith_ld64)
89*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_6x8__neonfp16arith_ld64)
90*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_6x16__aarch64_neonfp16arith_cortex_a55)
91*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_6x16__aarch64_neonfp16arith_cortex_a55r0)
92*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_6x16__aarch64_neonfp16arith_cortex_a75)
93*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_6x16__aarch64_neonfp16arith_ld32)
94*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_6x16__aarch64_neonfp16arith_ld64)
95*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_6x16__neonfp16arith_ld64)
96*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_8x8__aarch64_neonfp16arith_ld64)
97*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_8x8__neonfp16arith_ld64)
98*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_8x16__neonfp16arith_ld64)
99*4bdc9457SAndroid Build Coastguard Worker 
100*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_1x8__avx2_broadcast)
101*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_1x16__avx2_broadcast)
102*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_3x16__avx2_broadcast)
103*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_4x8__avx2_broadcast)
104*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_4x16__avx2_broadcast)
105*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_5x8__avx2_broadcast)
106*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_5x16__avx2_broadcast)
107*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_6x8__avx2_broadcast)
108*4bdc9457SAndroid Build Coastguard Worker DECLARE_F16_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f16_gemm_minmax_ukernel_7x8__avx2_broadcast)
109*4bdc9457SAndroid Build Coastguard Worker 
110*4bdc9457SAndroid Build Coastguard Worker 
111*4bdc9457SAndroid Build Coastguard Worker #define DECLARE_F32_GEMM_UKERNEL_FUNCTION(fn_name) \
112*4bdc9457SAndroid Build Coastguard Worker   XNN_INTERNAL void fn_name(                       \
113*4bdc9457SAndroid Build Coastguard Worker       size_t mr,                                   \
114*4bdc9457SAndroid Build Coastguard Worker       size_t nr,                                   \
115*4bdc9457SAndroid Build Coastguard Worker       size_t k,                                    \
116*4bdc9457SAndroid Build Coastguard Worker       const float* a,                              \
117*4bdc9457SAndroid Build Coastguard Worker       size_t a_stride,                             \
118*4bdc9457SAndroid Build Coastguard Worker       const float* w,                              \
119*4bdc9457SAndroid Build Coastguard Worker       float* c,                                    \
120*4bdc9457SAndroid Build Coastguard Worker       size_t cm_stride,                            \
121*4bdc9457SAndroid Build Coastguard Worker       size_t cn_stride,                            \
122*4bdc9457SAndroid Build Coastguard Worker       const union xnn_f32_default_params* params);
123*4bdc9457SAndroid Build Coastguard Worker 
124*4bdc9457SAndroid Build Coastguard Worker #define DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(fn_name) \
125*4bdc9457SAndroid Build Coastguard Worker   XNN_INTERNAL void fn_name(                            \
126*4bdc9457SAndroid Build Coastguard Worker       size_t mr,                                        \
127*4bdc9457SAndroid Build Coastguard Worker       size_t nr,                                        \
128*4bdc9457SAndroid Build Coastguard Worker       size_t k,                                         \
129*4bdc9457SAndroid Build Coastguard Worker       const float* a,                                   \
130*4bdc9457SAndroid Build Coastguard Worker       size_t a_stride,                                  \
131*4bdc9457SAndroid Build Coastguard Worker       const float* w,                                   \
132*4bdc9457SAndroid Build Coastguard Worker       float* c,                                         \
133*4bdc9457SAndroid Build Coastguard Worker       size_t cm_stride,                                 \
134*4bdc9457SAndroid Build Coastguard Worker       size_t cn_stride,                                 \
135*4bdc9457SAndroid Build Coastguard Worker       const union xnn_f32_relu_params* params);
136*4bdc9457SAndroid Build Coastguard Worker 
137*4bdc9457SAndroid Build Coastguard Worker #define DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(fn_name) \
138*4bdc9457SAndroid Build Coastguard Worker   XNN_INTERNAL void fn_name(                              \
139*4bdc9457SAndroid Build Coastguard Worker       size_t mr,                                          \
140*4bdc9457SAndroid Build Coastguard Worker       size_t nr,                                          \
141*4bdc9457SAndroid Build Coastguard Worker       size_t k,                                           \
142*4bdc9457SAndroid Build Coastguard Worker       const float* a,                                     \
143*4bdc9457SAndroid Build Coastguard Worker       size_t a_stride,                                    \
144*4bdc9457SAndroid Build Coastguard Worker       const float* w,                                     \
145*4bdc9457SAndroid Build Coastguard Worker       float* c,                                           \
146*4bdc9457SAndroid Build Coastguard Worker       size_t cm_stride,                                   \
147*4bdc9457SAndroid Build Coastguard Worker       size_t cn_stride,                                   \
148*4bdc9457SAndroid Build Coastguard Worker       const union xnn_f32_minmax_params* params);
149*4bdc9457SAndroid Build Coastguard Worker 
150*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__neon_lane_ld64)
151*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x2__neon_lane_ld64)
152*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__neon_lane_ld64)
153*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__neon_lane_ld128)
154*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__neon_lane_ld64)
155*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x2__neon_lane_ld64)
156*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__neon_lane_ld64)
157*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__neon_lane_ld128)
158*4bdc9457SAndroid Build Coastguard Worker 
159*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__neonfma_lane_ld64)
160*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x2__neonfma_lane_ld64)
161*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__neonfma_lane_ld64)
162*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__neonfma_lane_ld128)
163*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__neonfma_lane_ld64)
164*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x2__neonfma_lane_ld64)
165*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__neonfma_lane_ld64)
166*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__neonfma_lane_ld128)
167*4bdc9457SAndroid Build Coastguard Worker 
168*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__neon_dup_ld64)
169*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__neon_dup_ld64)
170*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__neon_dup_ld128)
171*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__neon_dup_ld64)
172*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__neon_dup_ld128)
173*4bdc9457SAndroid Build Coastguard Worker 
174*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__neonfma_dup_ld64)
175*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__neonfma_dup_ld64)
176*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__neonfma_dup_ld128)
177*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__neonfma_dup_ld64)
178*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__neonfma_dup_ld128)
179*4bdc9457SAndroid Build Coastguard Worker 
180*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8s4__neon)
181*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8s4__neon)
182*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8s4__neon)
183*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_8x8s4__neon)
184*4bdc9457SAndroid Build Coastguard Worker 
185*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8s4__neonfma)
186*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8s4__neonfma)
187*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8s4__neonfma)
188*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_8x8s4__neonfma)
189*4bdc9457SAndroid Build Coastguard Worker 
190*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_4x4__aarch32_vfp_ld64)
191*4bdc9457SAndroid Build Coastguard Worker 
192*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x4__aarch32_vfp_ld64)
193*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__aarch32_neon_cortex_a7)
194*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__aarch32_neon_cortex_a53)
195*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__aarch32_neon_cortex_a55)
196*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__aarch32_neon_cortex_a75)
197*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__aarch32_neon_ld64)
198*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__aarch32_neon_prfm_cortex_a53)
199*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__aarch32_neon_prfm_cortex_a75)
200*4bdc9457SAndroid Build Coastguard Worker 
201*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__aarch64_neonfma_cortex_a53)
202*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__aarch64_neonfma_cortex_a75)
203*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__aarch64_neonfma_ld64)
204*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__aarch64_neonfma_prfm_cortex_a53)
205*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__aarch64_neonfma_prfm_cortex_a75)
206*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x12__aarch64_neonfma_cortex_a53)
207*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x2__aarch64_neonfma_cortex_a75)
208*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x2__aarch64_neonfma_ld64)
209*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x2__aarch64_neonfma_prfm_cortex_a75)
210*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__aarch64_neonfma_cortex_a53)
211*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__aarch64_neonfma_cortex_a55)
212*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__aarch64_neonfma_cortex_a75)
213*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__aarch64_neonfma_ld64)
214*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__aarch64_neonfma_ld128)
215*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__aarch64_neonfma_prfm_cortex_a53)
216*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__aarch64_neonfma_prfm_cortex_a75)
217*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x12__aarch64_neonfma_cortex_a53)
218*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__aarch64_neonfma_cortex_a75)
219*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__aarch64_neonfma_prfm_cortex_a75)
220*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__aarch64_neonfma_cortex_a53)
221*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__aarch64_neonfma_cortex_a55)
222*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__aarch64_neonfma_cortex_a73)
223*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__aarch64_neonfma_cortex_a75)
224*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__aarch64_neonfma_ld64)
225*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__aarch64_neonfma_ld128)
226*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__aarch64_neonfma_prfm_cortex_a53)
227*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__aarch64_neonfma_prfm_cortex_a75)
228*4bdc9457SAndroid Build Coastguard Worker 
229*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__sse_load1)
230*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8__sse_load1)
231*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__sse_load1)
232*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__sse_load1)
233*4bdc9457SAndroid Build Coastguard Worker 
234*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__sse_dup)
235*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8__sse_dup)
236*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__sse_dup)
237*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__sse_dup)
238*4bdc9457SAndroid Build Coastguard Worker 
239*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8s4__sse)
240*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8s4__sse)
241*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8s4__sse)
242*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8s4__sse)
243*4bdc9457SAndroid Build Coastguard Worker 
244*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x2c4__sse)
245*4bdc9457SAndroid Build Coastguard Worker 
246*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__sse2_dup)
247*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8__sse2_dup)
248*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__sse2_dup)
249*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__sse2_dup)
250*4bdc9457SAndroid Build Coastguard Worker 
251*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__avx_broadcast)
252*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x16__avx_broadcast)
253*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x16__avx_broadcast)
254*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__avx_broadcast)
255*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x16__avx_broadcast)
256*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__avx_broadcast)
257*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x16__avx_broadcast)
258*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__avx_broadcast)
259*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_7x8__avx_broadcast)
260*4bdc9457SAndroid Build Coastguard Worker 
261*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__fma3_broadcast)
262*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x16__fma3_broadcast)
263*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x16__fma3_broadcast)
264*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__fma3_broadcast)
265*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x16__fma3_broadcast)
266*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__fma3_broadcast)
267*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x16__fma3_broadcast)
268*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__fma3_broadcast)
269*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_7x8__fma3_broadcast)
270*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_8x8__fma3_broadcast)
271*4bdc9457SAndroid Build Coastguard Worker 
272*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x16s4__fma3_broadcast)
273*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x16s4__fma3_broadcast)
274*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x16s4__fma3_broadcast)
275*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x16s4__fma3_broadcast)
276*4bdc9457SAndroid Build Coastguard Worker 
277*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x16__avx512f_broadcast)
278*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x16__avx512f_broadcast)
279*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x16__avx512f_broadcast)
280*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x16__avx512f_broadcast)
281*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_7x16__avx512f_broadcast)
282*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_8x16__avx512f_broadcast)
283*4bdc9457SAndroid Build Coastguard Worker 
284*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_1x8__wasmsimd_loadsplat)
285*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_3x8__wasmsimd_loadsplat)
286*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_4x8__wasmsimd_loadsplat)
287*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_5x8__wasmsimd_loadsplat)
288*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_6x8__wasmsimd_loadsplat)
289*4bdc9457SAndroid Build Coastguard Worker 
290*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_1x8__wasmrelaxedsimd_fma_loadsplat)
291*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_3x8__wasmrelaxedsimd_fma_loadsplat)
292*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_4x8__wasmrelaxedsimd_fma_loadsplat)
293*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_5x8__wasmrelaxedsimd_fma_loadsplat)
294*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_6x8__wasmrelaxedsimd_fma_loadsplat)
295*4bdc9457SAndroid Build Coastguard Worker 
296*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_1x8__wasmsimd_loadsplat)
297*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_3x8__wasmsimd_loadsplat)
298*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_4x8__wasmsimd_loadsplat)
299*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_5x8__wasmsimd_loadsplat)
300*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_6x8__wasmsimd_loadsplat)
301*4bdc9457SAndroid Build Coastguard Worker 
302*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_1x8__wasmrelaxedsimd_fma_loadsplat)
303*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_3x8__wasmrelaxedsimd_fma_loadsplat)
304*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_4x8__wasmrelaxedsimd_fma_loadsplat)
305*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_5x8__wasmrelaxedsimd_fma_loadsplat)
306*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_6x8__wasmrelaxedsimd_fma_loadsplat)
307*4bdc9457SAndroid Build Coastguard Worker 
308*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__wasmsimd_arm_loadsplat)
309*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8__wasmsimd_arm_loadsplat)
310*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__wasmsimd_arm_loadsplat)
311*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__wasmsimd_arm_loadsplat)
312*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__wasmsimd_arm_loadsplat)
313*4bdc9457SAndroid Build Coastguard Worker 
314*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__wasmsimd_x86_loadsplat)
315*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8__wasmsimd_x86_loadsplat)
316*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__wasmsimd_x86_loadsplat)
317*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__wasmsimd_x86_loadsplat)
318*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__wasmsimd_x86_loadsplat)
319*4bdc9457SAndroid Build Coastguard Worker 
320*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__wasmrelaxedsimd_loadsplat)
321*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8__wasmrelaxedsimd_loadsplat)
322*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__wasmrelaxedsimd_loadsplat)
323*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__wasmrelaxedsimd_loadsplat)
324*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__wasmrelaxedsimd_loadsplat)
325*4bdc9457SAndroid Build Coastguard Worker 
326*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__wasmrelaxedsimd_fma_loadsplat)
327*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8__wasmrelaxedsimd_fma_loadsplat)
328*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__wasmrelaxedsimd_fma_loadsplat)
329*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__wasmrelaxedsimd_fma_loadsplat)
330*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__wasmrelaxedsimd_fma_loadsplat)
331*4bdc9457SAndroid Build Coastguard Worker 
332*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_1x8__wasmsimd_splat)
333*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_3x8__wasmsimd_splat)
334*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_4x8__wasmsimd_splat)
335*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_5x8__wasmsimd_splat)
336*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_6x8__wasmsimd_splat)
337*4bdc9457SAndroid Build Coastguard Worker 
338*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_1x8__wasmrelaxedsimd_fma_splat)
339*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_3x8__wasmrelaxedsimd_fma_splat)
340*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_4x8__wasmrelaxedsimd_fma_splat)
341*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_5x8__wasmrelaxedsimd_fma_splat)
342*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_6x8__wasmrelaxedsimd_fma_splat)
343*4bdc9457SAndroid Build Coastguard Worker 
344*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_1x8__wasmsimd_splat)
345*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_3x8__wasmsimd_splat)
346*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_4x8__wasmsimd_splat)
347*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_5x8__wasmsimd_splat)
348*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_6x8__wasmsimd_splat)
349*4bdc9457SAndroid Build Coastguard Worker 
350*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_1x8__wasmrelaxedsimd_fma_splat)
351*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_3x8__wasmrelaxedsimd_fma_splat)
352*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_4x8__wasmrelaxedsimd_fma_splat)
353*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_5x8__wasmrelaxedsimd_fma_splat)
354*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_6x8__wasmrelaxedsimd_fma_splat)
355*4bdc9457SAndroid Build Coastguard Worker 
356*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__wasmsimd_arm_splat)
357*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8__wasmsimd_arm_splat)
358*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__wasmsimd_arm_splat)
359*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__wasmsimd_arm_splat)
360*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__wasmsimd_arm_splat)
361*4bdc9457SAndroid Build Coastguard Worker 
362*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__wasmsimd_x86_splat)
363*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8__wasmsimd_x86_splat)
364*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__wasmsimd_x86_splat)
365*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__wasmsimd_x86_splat)
366*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__wasmsimd_x86_splat)
367*4bdc9457SAndroid Build Coastguard Worker 
368*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__wasmrelaxedsimd_splat)
369*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8__wasmrelaxedsimd_splat)
370*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__wasmrelaxedsimd_splat)
371*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__wasmrelaxedsimd_splat)
372*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__wasmrelaxedsimd_splat)
373*4bdc9457SAndroid Build Coastguard Worker 
374*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8__wasmrelaxedsimd_fma_splat)
375*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8__wasmrelaxedsimd_fma_splat)
376*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8__wasmrelaxedsimd_fma_splat)
377*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8__wasmrelaxedsimd_fma_splat)
378*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8__wasmrelaxedsimd_fma_splat)
379*4bdc9457SAndroid Build Coastguard Worker 
380*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_1x8s4__wasmsimd)
381*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_3x8s4__wasmsimd)
382*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_4x8s4__wasmsimd)
383*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_5x8s4__wasmsimd)
384*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_6x8s4__wasmsimd)
385*4bdc9457SAndroid Build Coastguard Worker 
386*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_1x8s4__wasmrelaxedsimd_fma)
387*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_3x8s4__wasmrelaxedsimd_fma)
388*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_4x8s4__wasmrelaxedsimd_fma)
389*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_5x8s4__wasmrelaxedsimd_fma)
390*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_6x8s4__wasmrelaxedsimd_fma)
391*4bdc9457SAndroid Build Coastguard Worker 
392*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_1x8s4__wasmsimd)
393*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_3x8s4__wasmsimd)
394*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_4x8s4__wasmsimd)
395*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_5x8s4__wasmsimd)
396*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_6x8s4__wasmsimd)
397*4bdc9457SAndroid Build Coastguard Worker 
398*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_1x8s4__wasmrelaxedsimd_fma)
399*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_3x8s4__wasmrelaxedsimd_fma)
400*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_4x8s4__wasmrelaxedsimd_fma)
401*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_5x8s4__wasmrelaxedsimd_fma)
402*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_6x8s4__wasmrelaxedsimd_fma)
403*4bdc9457SAndroid Build Coastguard Worker 
404*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8s4__wasmsimd_arm)
405*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8s4__wasmsimd_arm)
406*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8s4__wasmsimd_arm)
407*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8s4__wasmsimd_arm)
408*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8s4__wasmsimd_arm)
409*4bdc9457SAndroid Build Coastguard Worker 
410*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8s4__wasmsimd_x86)
411*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8s4__wasmsimd_x86)
412*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8s4__wasmsimd_x86)
413*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8s4__wasmsimd_x86)
414*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8s4__wasmsimd_x86)
415*4bdc9457SAndroid Build Coastguard Worker 
416*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8s4__wasmrelaxedsimd)
417*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8s4__wasmrelaxedsimd)
418*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8s4__wasmrelaxedsimd)
419*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8s4__wasmrelaxedsimd)
420*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8s4__wasmrelaxedsimd)
421*4bdc9457SAndroid Build Coastguard Worker 
422*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x8s4__wasmrelaxedsimd_fma)
423*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_3x8s4__wasmrelaxedsimd_fma)
424*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x8s4__wasmrelaxedsimd_fma)
425*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_5x8s4__wasmrelaxedsimd_fma)
426*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_6x8s4__wasmrelaxedsimd_fma)
427*4bdc9457SAndroid Build Coastguard Worker 
428*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_4x2c4__wasmrelaxedsimd_fma)
429*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_4x2c4__wasmsimd)
430*4bdc9457SAndroid Build Coastguard Worker 
431*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_4x2c4__wasmrelaxedsimd_fma)
432*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_4x2c4__wasmsimd)
433*4bdc9457SAndroid Build Coastguard Worker 
434*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x2c4__wasmrelaxedsimd)
435*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x2c4__wasmrelaxedsimd_fma)
436*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x2c4__wasmsimd_arm)
437*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x2c4__wasmsimd_x86)
438*4bdc9457SAndroid Build Coastguard Worker 
439*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_1x4__wasm)
440*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_2x4__wasm)
441*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_4x2__wasm)
442*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_4x4__wasm)
443*4bdc9457SAndroid Build Coastguard Worker 
444*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x4__wasm)
445*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_2x4__wasm)
446*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x2__wasm)
447*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x4__wasm)
448*4bdc9457SAndroid Build Coastguard Worker 
449*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_1x4__scalar)
450*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_2x4__scalar)
451*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_4x2__scalar)
452*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_UKERNEL_FUNCTION(xnn_f32_gemm_ukernel_4x4__scalar)
453*4bdc9457SAndroid Build Coastguard Worker 
454*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_1x4__scalar)
455*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_2x4__scalar)
456*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_4x2__scalar)
457*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_RELU_UKERNEL_FUNCTION(xnn_f32_gemm_relu_ukernel_4x4__scalar)
458*4bdc9457SAndroid Build Coastguard Worker 
459*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_1x4__scalar)
460*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_2x4__scalar)
461*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x2__scalar)
462*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemm_minmax_ukernel_4x4__scalar)
463*4bdc9457SAndroid Build Coastguard Worker 
464*4bdc9457SAndroid Build Coastguard Worker 
465*4bdc9457SAndroid Build Coastguard Worker #define DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(fn_name) \
466*4bdc9457SAndroid Build Coastguard Worker   XNN_INTERNAL void fn_name(                                 \
467*4bdc9457SAndroid Build Coastguard Worker       size_t mr,                                             \
468*4bdc9457SAndroid Build Coastguard Worker       size_t nr,                                             \
469*4bdc9457SAndroid Build Coastguard Worker       size_t k,                                              \
470*4bdc9457SAndroid Build Coastguard Worker       const float* a,                                        \
471*4bdc9457SAndroid Build Coastguard Worker       size_t a_stride,                                       \
472*4bdc9457SAndroid Build Coastguard Worker       const float* w,                                        \
473*4bdc9457SAndroid Build Coastguard Worker       float* c,                                              \
474*4bdc9457SAndroid Build Coastguard Worker       size_t cm_stride,                                      \
475*4bdc9457SAndroid Build Coastguard Worker       size_t cn_stride,                                      \
476*4bdc9457SAndroid Build Coastguard Worker       const float* acc,                                      \
477*4bdc9457SAndroid Build Coastguard Worker       const union xnn_f32_minmax_params* params);
478*4bdc9457SAndroid Build Coastguard Worker 
479*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__neon_lane_ld64)
480*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__neon_lane_ld64)
481*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__neon_lane_ld128)
482*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__neon_lane_ld64)
483*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__neon_lane_ld64)
484*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__neon_lane_ld128)
485*4bdc9457SAndroid Build Coastguard Worker 
486*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__neonfma_lane_ld64)
487*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__neonfma_lane_ld64)
488*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__neonfma_lane_ld128)
489*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__neonfma_lane_ld64)
490*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__neonfma_lane_ld64)
491*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__neonfma_lane_ld128)
492*4bdc9457SAndroid Build Coastguard Worker 
493*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__neon_dup_ld64)
494*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__neon_dup_ld64)
495*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__neon_dup_ld128)
496*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__neon_dup_ld64)
497*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__neon_dup_ld128)
498*4bdc9457SAndroid Build Coastguard Worker 
499*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__neonfma_dup_ld64)
500*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__neonfma_dup_ld64)
501*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__neonfma_dup_ld128)
502*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__neonfma_dup_ld64)
503*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__neonfma_dup_ld128)
504*4bdc9457SAndroid Build Coastguard Worker 
505*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8s4__neon)
506*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8s4__neon)
507*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8s4__neon)
508*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_8x8s4__neon)
509*4bdc9457SAndroid Build Coastguard Worker 
510*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8s4__neonfma)
511*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8s4__neonfma)
512*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8s4__neonfma)
513*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_8x8s4__neonfma)
514*4bdc9457SAndroid Build Coastguard Worker 
515*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__aarch64_neonfma_cortex_a53)
516*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__aarch64_neonfma_cortex_a75)
517*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__aarch64_neonfma_ld64)
518*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__aarch64_neonfma_prfm_cortex_a75)
519*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x12__aarch64_neonfma_cortex_a53)
520*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__aarch64_neonfma_cortex_a53)
521*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__aarch64_neonfma_cortex_a55)
522*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__aarch64_neonfma_cortex_a75)
523*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__aarch64_neonfma_ld64)
524*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__aarch64_neonfma_ld128)
525*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__aarch64_neonfma_prfm_cortex_a75)
526*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x12__aarch64_neonfma_cortex_a53)
527*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__aarch64_neonfma_cortex_a75)
528*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__aarch64_neonfma_prfm_cortex_a75)
529*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__aarch64_neonfma_cortex_a53)
530*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__aarch64_neonfma_cortex_a55)
531*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__aarch64_neonfma_cortex_a73)
532*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__aarch64_neonfma_cortex_a75)
533*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__aarch64_neonfma_ld64)
534*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__aarch64_neonfma_ld128)
535*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__aarch64_neonfma_prfm_cortex_a75)
536*4bdc9457SAndroid Build Coastguard Worker 
537*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__sse_load1)
538*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8__sse_load1)
539*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__sse_load1)
540*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__sse_load1)
541*4bdc9457SAndroid Build Coastguard Worker 
542*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__sse_dup)
543*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8__sse_dup)
544*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__sse_dup)
545*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__sse_dup)
546*4bdc9457SAndroid Build Coastguard Worker 
547*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__sse2_dup)
548*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8__sse2_dup)
549*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__sse2_dup)
550*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__sse2_dup)
551*4bdc9457SAndroid Build Coastguard Worker 
552*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8s4__sse)
553*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8s4__sse)
554*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8s4__sse)
555*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8s4__sse)
556*4bdc9457SAndroid Build Coastguard Worker 
557*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__avx_broadcast)
558*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x16__avx_broadcast)
559*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x16__avx_broadcast)
560*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__avx_broadcast)
561*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x16__avx_broadcast)
562*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__avx_broadcast)
563*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x16__avx_broadcast)
564*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__avx_broadcast)
565*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_7x8__avx_broadcast)
566*4bdc9457SAndroid Build Coastguard Worker 
567*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__fma3_broadcast)
568*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x16__fma3_broadcast)
569*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x16__fma3_broadcast)
570*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__fma3_broadcast)
571*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x16__fma3_broadcast)
572*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__fma3_broadcast)
573*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x16__fma3_broadcast)
574*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__fma3_broadcast)
575*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_7x8__fma3_broadcast)
576*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_8x8__fma3_broadcast)
577*4bdc9457SAndroid Build Coastguard Worker 
578*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x16s4__fma3_broadcast)
579*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x16s4__fma3_broadcast)
580*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x16s4__fma3_broadcast)
581*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x16s4__fma3_broadcast)
582*4bdc9457SAndroid Build Coastguard Worker 
583*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x16__avx512f_broadcast)
584*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x16__avx512f_broadcast)
585*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x16__avx512f_broadcast)
586*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x16__avx512f_broadcast)
587*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_7x16__avx512f_broadcast)
588*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_8x16__avx512f_broadcast)
589*4bdc9457SAndroid Build Coastguard Worker 
590*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__wasmsimd_arm_loadsplat)
591*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8__wasmsimd_arm_loadsplat)
592*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__wasmsimd_arm_loadsplat)
593*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__wasmsimd_arm_loadsplat)
594*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__wasmsimd_arm_loadsplat)
595*4bdc9457SAndroid Build Coastguard Worker 
596*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__wasmsimd_x86_loadsplat)
597*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8__wasmsimd_x86_loadsplat)
598*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__wasmsimd_x86_loadsplat)
599*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__wasmsimd_x86_loadsplat)
600*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__wasmsimd_x86_loadsplat)
601*4bdc9457SAndroid Build Coastguard Worker 
602*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__wasmrelaxedsimd_loadsplat)
603*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8__wasmrelaxedsimd_loadsplat)
604*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__wasmrelaxedsimd_loadsplat)
605*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__wasmrelaxedsimd_loadsplat)
606*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__wasmrelaxedsimd_loadsplat)
607*4bdc9457SAndroid Build Coastguard Worker 
608*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__wasmrelaxedsimd_fma_loadsplat)
609*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8__wasmrelaxedsimd_fma_loadsplat)
610*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__wasmrelaxedsimd_fma_loadsplat)
611*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__wasmrelaxedsimd_fma_loadsplat)
612*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__wasmrelaxedsimd_fma_loadsplat)
613*4bdc9457SAndroid Build Coastguard Worker 
614*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__wasmsimd_arm_splat)
615*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8__wasmsimd_arm_splat)
616*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__wasmsimd_arm_splat)
617*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__wasmsimd_arm_splat)
618*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__wasmsimd_arm_splat)
619*4bdc9457SAndroid Build Coastguard Worker 
620*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__wasmsimd_x86_splat)
621*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8__wasmsimd_x86_splat)
622*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__wasmsimd_x86_splat)
623*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__wasmsimd_x86_splat)
624*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__wasmsimd_x86_splat)
625*4bdc9457SAndroid Build Coastguard Worker 
626*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__wasmrelaxedsimd_splat)
627*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8__wasmrelaxedsimd_splat)
628*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__wasmrelaxedsimd_splat)
629*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__wasmrelaxedsimd_splat)
630*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__wasmrelaxedsimd_splat)
631*4bdc9457SAndroid Build Coastguard Worker 
632*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8__wasmrelaxedsimd_fma_splat)
633*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8__wasmrelaxedsimd_fma_splat)
634*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8__wasmrelaxedsimd_fma_splat)
635*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8__wasmrelaxedsimd_fma_splat)
636*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8__wasmrelaxedsimd_fma_splat)
637*4bdc9457SAndroid Build Coastguard Worker 
638*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8s4__wasmsimd_arm)
639*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8s4__wasmsimd_arm)
640*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8s4__wasmsimd_arm)
641*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8s4__wasmsimd_arm)
642*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8s4__wasmsimd_arm)
643*4bdc9457SAndroid Build Coastguard Worker 
644*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8s4__wasmsimd_x86)
645*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8s4__wasmsimd_x86)
646*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8s4__wasmsimd_x86)
647*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8s4__wasmsimd_x86)
648*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8s4__wasmsimd_x86)
649*4bdc9457SAndroid Build Coastguard Worker 
650*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8s4__wasmrelaxedsimd)
651*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8s4__wasmrelaxedsimd)
652*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8s4__wasmrelaxedsimd)
653*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8s4__wasmrelaxedsimd)
654*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8s4__wasmrelaxedsimd)
655*4bdc9457SAndroid Build Coastguard Worker 
656*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x8s4__wasmrelaxedsimd_fma)
657*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_3x8s4__wasmrelaxedsimd_fma)
658*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x8s4__wasmrelaxedsimd_fma)
659*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_5x8s4__wasmrelaxedsimd_fma)
660*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_6x8s4__wasmrelaxedsimd_fma)
661*4bdc9457SAndroid Build Coastguard Worker 
662*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x4__wasm)
663*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_2x4__wasm)
664*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x2__wasm)
665*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x4__wasm)
666*4bdc9457SAndroid Build Coastguard Worker 
667*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_1x4__scalar)
668*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_2x4__scalar)
669*4bdc9457SAndroid Build Coastguard Worker DECLARE_F32_GEMMINC_MINMAX_UKERNEL_FUNCTION(xnn_f32_gemminc_minmax_ukernel_4x4__scalar)
670*4bdc9457SAndroid Build Coastguard Worker 
671*4bdc9457SAndroid Build Coastguard Worker 
672*4bdc9457SAndroid Build Coastguard Worker #define DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(fn_name) \
673*4bdc9457SAndroid Build Coastguard Worker   XNN_INTERNAL void fn_name(                              \
674*4bdc9457SAndroid Build Coastguard Worker       size_t mr,                                          \
675*4bdc9457SAndroid Build Coastguard Worker       size_t nc,                                          \
676*4bdc9457SAndroid Build Coastguard Worker       size_t kc,                                          \
677*4bdc9457SAndroid Build Coastguard Worker       const uint8_t* a,                                   \
678*4bdc9457SAndroid Build Coastguard Worker       size_t a_stride,                                    \
679*4bdc9457SAndroid Build Coastguard Worker       const void* w,                                      \
680*4bdc9457SAndroid Build Coastguard Worker       uint8_t* c,                                         \
681*4bdc9457SAndroid Build Coastguard Worker       size_t cm_stride,                                   \
682*4bdc9457SAndroid Build Coastguard Worker       size_t cn_stride,                                   \
683*4bdc9457SAndroid Build Coastguard Worker       const union xnn_qu8_conv_minmax_params* params);
684*4bdc9457SAndroid Build Coastguard Worker 
685*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_1x8__neon_mlal_lane)
686*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_1x16__neon_mlal_lane)
687*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_2x8__neon_mlal_lane)
688*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_2x16__neon_mlal_lane)
689*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_3x8__neon_mlal_lane)
690*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_3x16__neon_mlal_lane)
691*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x8__neon_mlal_lane)
692*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x16__neon_mlal_lane)
693*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_6x8__neon_mlal_lane)
694*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_6x16__neon_mlal_lane)
695*4bdc9457SAndroid Build Coastguard Worker 
696*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x8__neon_mlal_lane)
697*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x16__neon_mlal_lane)
698*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x8__neon_mlal_lane)
699*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x16__neon_mlal_lane)
700*4bdc9457SAndroid Build Coastguard Worker 
701*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x16__neonv8_mlal_lane)
702*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x16__neonv8_mlal_lane)
703*4bdc9457SAndroid Build Coastguard Worker 
704*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x16__aarch64_neon_mlal_lane_cortex_a53)
705*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x16__aarch64_neon_mlal_lane_prfm_cortex_a53)
706*4bdc9457SAndroid Build Coastguard Worker 
707*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x16__aarch64_neon_mlal_lane_ld64)
708*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x16__aarch64_neon_mlal_lane_prfm_ld64)
709*4bdc9457SAndroid Build Coastguard Worker 
710*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x16__aarch64_neon_mlal_lane_cortex_a75)
711*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x16__aarch64_neon_mlal_lane_prfm_cortex_a75)
712*4bdc9457SAndroid Build Coastguard Worker 
713*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x8c4__aarch64_neondot_cortex_a55)
714*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x8c4__aarch64_neondot_ld128)
715*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x16c4__aarch64_neondot_cortex_a55)
716*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x16c4__aarch64_neondot_ld128)
717*4bdc9457SAndroid Build Coastguard Worker 
718*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_1x8c4__neondot)
719*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_1x16c4__neondot)
720*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_1x32c4__neondot)
721*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_2x8c4__neondot)
722*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_2x16c4__neondot)
723*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_2x32c4__neondot)
724*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_3x8c4__neondot)
725*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_3x16c4__neondot)
726*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_3x32c4__neondot)
727*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x8c4__neondot)
728*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x16c4__neondot)
729*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_5x8c4__neondot)
730*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_5x16c4__neondot)
731*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_6x8c4__neondot)
732*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_6x16c4__neondot)
733*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_8x8c4__neondot)
734*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_8x16c4__neondot)
735*4bdc9457SAndroid Build Coastguard Worker 
736*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_cortex_a55)
737*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_ld128)
738*4bdc9457SAndroid Build Coastguard Worker 
739*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x16c4__neondot)
740*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x16c4__neondot)
741*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x16c4__neondot)
742*4bdc9457SAndroid Build Coastguard Worker 
743*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_1x8__aarch32_neon_mlal_lane_cortex_a7)
744*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_1x8__aarch32_neon_mlal_lane_prfm_cortex_a7)
745*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_cortex_a7)
746*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_cortex_a53)
747*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_ld64)
748*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_prfm_cortex_a7)
749*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_prfm_cortex_a53)
750*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_prfm_ld64)
751*4bdc9457SAndroid Build Coastguard Worker 
752*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2__sse2_ld64)
753*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2__sse2_ld64)
754*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2__sse2_ld64)
755*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2__sse2_ld64)
756*4bdc9457SAndroid Build Coastguard Worker 
757*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2__sse41_ld64)
758*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2__sse41_ld64)
759*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2__sse41_ld64)
760*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2__sse41_ld64)
761*4bdc9457SAndroid Build Coastguard Worker 
762*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2__avx_ld64)
763*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2__avx_ld64)
764*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2__avx_ld64)
765*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2__avx_ld64)
766*4bdc9457SAndroid Build Coastguard Worker 
767*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2__xop_ld64)
768*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2__xop_ld64)
769*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2__xop_ld64)
770*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2__xop_ld64)
771*4bdc9457SAndroid Build Coastguard Worker 
772*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2__sse2_ld128)
773*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2__sse2_ld128)
774*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2__sse2_ld128)
775*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2__sse2_ld128)
776*4bdc9457SAndroid Build Coastguard Worker 
777*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2__sse41_ld128)
778*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2__sse41_ld128)
779*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2__sse41_ld128)
780*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2__sse41_ld128)
781*4bdc9457SAndroid Build Coastguard Worker 
782*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2__avx_ld128)
783*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2__avx_ld128)
784*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2__avx_ld128)
785*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2__avx_ld128)
786*4bdc9457SAndroid Build Coastguard Worker 
787*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2__xop_ld128)
788*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2__xop_ld128)
789*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2__xop_ld128)
790*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2__xop_ld128)
791*4bdc9457SAndroid Build Coastguard Worker 
792*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2s4__sse2_ld64)
793*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2s4__sse2_ld64)
794*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2s4__sse2_ld64)
795*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2s4__sse2_ld64)
796*4bdc9457SAndroid Build Coastguard Worker 
797*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2s4__sse41_ld64)
798*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2s4__sse41_ld64)
799*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2s4__sse41_ld64)
800*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2s4__sse41_ld64)
801*4bdc9457SAndroid Build Coastguard Worker 
802*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2s4__avx_ld64)
803*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2s4__avx_ld64)
804*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2s4__avx_ld64)
805*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2s4__avx_ld64)
806*4bdc9457SAndroid Build Coastguard Worker 
807*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2s4__xop_ld64)
808*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2s4__xop_ld64)
809*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2s4__xop_ld64)
810*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2s4__xop_ld64)
811*4bdc9457SAndroid Build Coastguard Worker 
812*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2s4__sse2_ld128)
813*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2s4__sse2_ld128)
814*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2s4__sse2_ld128)
815*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2s4__sse2_ld128)
816*4bdc9457SAndroid Build Coastguard Worker 
817*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2s4__sse41_ld128)
818*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2s4__sse41_ld128)
819*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2s4__sse41_ld128)
820*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2s4__sse41_ld128)
821*4bdc9457SAndroid Build Coastguard Worker 
822*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2s4__avx_ld128)
823*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2s4__avx_ld128)
824*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2s4__avx_ld128)
825*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2s4__avx_ld128)
826*4bdc9457SAndroid Build Coastguard Worker 
827*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2s4__xop_ld128)
828*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2s4__xop_ld128)
829*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2s4__xop_ld128)
830*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2s4__xop_ld128)
831*4bdc9457SAndroid Build Coastguard Worker 
832*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c8__sse2_ld64)
833*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c8__sse2_ld64)
834*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c8__sse2_ld64)
835*4bdc9457SAndroid Build Coastguard Worker 
836*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c8__sse41_ld64)
837*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c8__sse41_ld64)
838*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c8__sse41_ld64)
839*4bdc9457SAndroid Build Coastguard Worker 
840*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c8__avx_ld64)
841*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c8__avx_ld64)
842*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c8__avx_ld64)
843*4bdc9457SAndroid Build Coastguard Worker 
844*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c8__xop_ld64)
845*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c8__xop_ld64)
846*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c8__xop_ld64)
847*4bdc9457SAndroid Build Coastguard Worker 
848*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c8__sse2_ld128)
849*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c8__sse2_ld128)
850*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c8__sse2_ld128)
851*4bdc9457SAndroid Build Coastguard Worker 
852*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c8__sse41_ld128)
853*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c8__sse41_ld128)
854*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c8__sse41_ld128)
855*4bdc9457SAndroid Build Coastguard Worker 
856*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c8__avx_ld128)
857*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c8__avx_ld128)
858*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c8__avx_ld128)
859*4bdc9457SAndroid Build Coastguard Worker 
860*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c8__xop_ld128)
861*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c8__xop_ld128)
862*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c8__xop_ld128)
863*4bdc9457SAndroid Build Coastguard Worker 
864*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x8c8__avx2)
865*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x8c8__avx2)
866*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x8c8__avx2)
867*4bdc9457SAndroid Build Coastguard Worker 
868*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x16c8__avx512skx)
869*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x16c8__avx512skx)
870*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x16c8__avx512skx)
871*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x16c8__avx512skx)
872*4bdc9457SAndroid Build Coastguard Worker 
873*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2__wasmsimd_dot16x2_ld64)
874*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2__wasmsimd_dot16x2_ld64)
875*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2__wasmsimd_dot16x2_ld64)
876*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2__wasmsimd_dot16x2_ld64)
877*4bdc9457SAndroid Build Coastguard Worker 
878*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2__wasmsimd_dot16x2_ld128)
879*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2__wasmsimd_dot16x2_ld128)
880*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2__wasmsimd_dot16x2_ld128)
881*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2__wasmsimd_dot16x2_ld128)
882*4bdc9457SAndroid Build Coastguard Worker 
883*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2s4__wasmsimd_dot16x2_ld64)
884*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2s4__wasmsimd_dot16x2_ld64)
885*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2s4__wasmsimd_dot16x2_ld64)
886*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2s4__wasmsimd_dot16x2_ld64)
887*4bdc9457SAndroid Build Coastguard Worker 
888*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c2s4__wasmsimd_dot16x2_ld128)
889*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c2s4__wasmsimd_dot16x2_ld128)
890*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c2s4__wasmsimd_dot16x2_ld128)
891*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c2s4__wasmsimd_dot16x2_ld128)
892*4bdc9457SAndroid Build Coastguard Worker 
893*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c8__wasmsimd_dot16x2_ld64)
894*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c8__wasmsimd_dot16x2_ld64)
895*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c8__wasmsimd_dot16x2_ld64)
896*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c8__wasmsimd_dot16x2_ld64)
897*4bdc9457SAndroid Build Coastguard Worker 
898*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4c8__wasmsimd_dot16x2_ld128)
899*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4c8__wasmsimd_dot16x2_ld128)
900*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4c8__wasmsimd_dot16x2_ld128)
901*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4c8__wasmsimd_dot16x2_ld128)
902*4bdc9457SAndroid Build Coastguard Worker 
903*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x2__wasm_fmagic)
904*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4__wasm_fmagic)
905*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x2__wasm_fmagic)
906*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4__wasm_fmagic)
907*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x2__wasm_fmagic)
908*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4__wasm_fmagic)
909*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x2__wasm_fmagic)
910*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4__wasm_fmagic)
911*4bdc9457SAndroid Build Coastguard Worker 
912*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x1c4__armsimd32)
913*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x2c4__armsimd32)
914*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x1c4__armsimd32)
915*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x2c4__armsimd32)
916*4bdc9457SAndroid Build Coastguard Worker 
917*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x2__scalar_fmagic)
918*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4__scalar_fmagic)
919*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x2__scalar_fmagic)
920*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4__scalar_fmagic)
921*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x2__scalar_fmagic)
922*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4__scalar_fmagic)
923*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x2__scalar_fmagic)
924*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4__scalar_fmagic)
925*4bdc9457SAndroid Build Coastguard Worker 
926*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x2__scalar_imagic)
927*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4__scalar_imagic)
928*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x2__scalar_imagic)
929*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4__scalar_imagic)
930*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x2__scalar_imagic)
931*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4__scalar_imagic)
932*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x2__scalar_imagic)
933*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4__scalar_imagic)
934*4bdc9457SAndroid Build Coastguard Worker 
935*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x2__scalar_lrintf)
936*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_1x4__scalar_lrintf)
937*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x2__scalar_lrintf)
938*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_2x4__scalar_lrintf)
939*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x2__scalar_lrintf)
940*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_3x4__scalar_lrintf)
941*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x2__scalar_lrintf)
942*4bdc9457SAndroid Build Coastguard Worker DECLARE_QU8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qu8_gemm_minmax_fp32_ukernel_4x4__scalar_lrintf)
943*4bdc9457SAndroid Build Coastguard Worker 
944*4bdc9457SAndroid Build Coastguard Worker 
945*4bdc9457SAndroid Build Coastguard Worker #define DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(fn_name) \
946*4bdc9457SAndroid Build Coastguard Worker   XNN_INTERNAL void fn_name(                              \
947*4bdc9457SAndroid Build Coastguard Worker       size_t mr,                                          \
948*4bdc9457SAndroid Build Coastguard Worker       size_t nr,                                          \
949*4bdc9457SAndroid Build Coastguard Worker       size_t k,                                           \
950*4bdc9457SAndroid Build Coastguard Worker       const int8_t* a,                                    \
951*4bdc9457SAndroid Build Coastguard Worker       size_t a_stride,                                    \
952*4bdc9457SAndroid Build Coastguard Worker       const void* w,                                      \
953*4bdc9457SAndroid Build Coastguard Worker       int8_t* c,                                          \
954*4bdc9457SAndroid Build Coastguard Worker       size_t cm_stride,                                   \
955*4bdc9457SAndroid Build Coastguard Worker       size_t cn_stride,                                   \
956*4bdc9457SAndroid Build Coastguard Worker       const union xnn_qs8_conv_minmax_params* params);
957*4bdc9457SAndroid Build Coastguard Worker 
958*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8__neon_mlal_lane)
959*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16__neon_mlal_lane)
960*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8__neon_mlal_lane)
961*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16__neon_mlal_lane)
962*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8__neon_mlal_lane)
963*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16__neon_mlal_lane)
964*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__neon_mlal_lane)
965*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16__neon_mlal_lane)
966*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_6x8__neon_mlal_lane)
967*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_6x16__neon_mlal_lane)
968*4bdc9457SAndroid Build Coastguard Worker 
969*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x16__neon_mlal_lane)
970*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x16__neon_mlal_lane)
971*4bdc9457SAndroid Build Coastguard Worker 
972*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x16__neonv8_mlal_lane)
973*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x16__neonv8_mlal_lane)
974*4bdc9457SAndroid Build Coastguard Worker 
975*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8__neon_mlal_lane_prfm)
976*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16__neon_mlal_lane_prfm)
977*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8__neon_mlal_lane_prfm)
978*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16__neon_mlal_lane_prfm)
979*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8__neon_mlal_lane_prfm)
980*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16__neon_mlal_lane_prfm)
981*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__neon_mlal_lane_prfm)
982*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16__neon_mlal_lane_prfm)
983*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_6x8__neon_mlal_lane_prfm)
984*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_6x16__neon_mlal_lane_prfm)
985*4bdc9457SAndroid Build Coastguard Worker 
986*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8__neon_mull_addw_dup)
987*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16__neon_mull_addw_dup)
988*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8__neon_mull_addw_dup)
989*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16__neon_mull_addw_dup)
990*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8__neon_mull_addw_dup)
991*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16__neon_mull_addw_dup)
992*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__neon_mull_addw_dup)
993*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16__neon_mull_addw_dup)
994*4bdc9457SAndroid Build Coastguard Worker 
995*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4__neon_mull_dup)
996*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__neon_mull_dup)
997*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4__neon_mull_dup)
998*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4__neon_mull_dup)
999*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4__neon_mull_dup)
1000*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4__neon_mull_dup)
1001*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__neon_mull_dup)
1002*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__neon_mull_dup)
1003*4bdc9457SAndroid Build Coastguard Worker 
1004*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c4__neon_mlal_dup)
1005*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c4__neon_mlal_dup)
1006*4bdc9457SAndroid Build Coastguard Worker 
1007*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c4__neonv8_mlal_dup)
1008*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c4__neonv8_mlal_dup)
1009*4bdc9457SAndroid Build Coastguard Worker 
1010*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4__neon_mlal_dup)
1011*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__neon_mlal_dup)
1012*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4__neon_mlal_dup)
1013*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4__neon_mlal_dup)
1014*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4__neon_mlal_dup)
1015*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4__neon_mlal_dup)
1016*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__neon_mlal_dup)
1017*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__neon_mlal_dup)
1018*4bdc9457SAndroid Build Coastguard Worker 
1019*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4__neon_mull_ld1r)
1020*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__neon_mull_ld1r)
1021*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4__neon_mull_ld1r)
1022*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4__neon_mull_ld1r)
1023*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4__neon_mull_ld1r)
1024*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4__neon_mull_ld1r)
1025*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__neon_mull_ld1r)
1026*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__neon_mull_ld1r)
1027*4bdc9457SAndroid Build Coastguard Worker 
1028*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c4__neon_mlal_ld1r)
1029*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c4__neon_mlal_ld1r)
1030*4bdc9457SAndroid Build Coastguard Worker 
1031*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c4__neonv8_mlal_ld1r)
1032*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c4__neonv8_mlal_ld1r)
1033*4bdc9457SAndroid Build Coastguard Worker 
1034*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4__neon_mlal_ld1r)
1035*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__neon_mlal_ld1r)
1036*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4__neon_mlal_ld1r)
1037*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4__neon_mlal_ld1r)
1038*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4__neon_mlal_ld1r)
1039*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4__neon_mlal_ld1r)
1040*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__neon_mlal_ld1r)
1041*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__neon_mlal_ld1r)
1042*4bdc9457SAndroid Build Coastguard Worker 
1043*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4__neon_mull_ld2r)
1044*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__neon_mull_ld2r)
1045*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4__neon_mull_ld2r)
1046*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4__neon_mull_ld2r)
1047*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4__neon_mull_ld2r)
1048*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4__neon_mull_ld2r)
1049*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__neon_mull_ld2r)
1050*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__neon_mull_ld2r)
1051*4bdc9457SAndroid Build Coastguard Worker 
1052*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c4__neon_mlal_ld2r)
1053*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c4__neon_mlal_ld2r)
1054*4bdc9457SAndroid Build Coastguard Worker 
1055*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c4__neonv8_mlal_ld2r)
1056*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c4__neonv8_mlal_ld2r)
1057*4bdc9457SAndroid Build Coastguard Worker 
1058*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4__neon_mlal_ld2r)
1059*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__neon_mlal_ld2r)
1060*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4__neon_mlal_ld2r)
1061*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4__neon_mlal_ld2r)
1062*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4__neon_mlal_ld2r)
1063*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4__neon_mlal_ld2r)
1064*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__neon_mlal_ld2r)
1065*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__neon_mlal_ld2r)
1066*4bdc9457SAndroid Build Coastguard Worker 
1067*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4s2__neon_mull)
1068*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4s2__neon_mull)
1069*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4s2__neon_mull)
1070*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4s2__neon_mull)
1071*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4s2__neon_mull)
1072*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4s2__neon_mull)
1073*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4s2__neon_mull)
1074*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4s2__neon_mull)
1075*4bdc9457SAndroid Build Coastguard Worker 
1076*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c4s2__neon_mlal)
1077*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c4s2__neon_mlal)
1078*4bdc9457SAndroid Build Coastguard Worker 
1079*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c4s2__neonv8_mlal)
1080*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c4s2__neonv8_mlal)
1081*4bdc9457SAndroid Build Coastguard Worker 
1082*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4s2__neon_mlal)
1083*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4s2__neon_mlal)
1084*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c4s2__neon_mlal)
1085*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c4s2__neon_mlal)
1086*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c4s2__neon_mlal)
1087*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c4s2__neon_mlal)
1088*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4s2__neon_mlal)
1089*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4s2__neon_mlal)
1090*4bdc9457SAndroid Build Coastguard Worker 
1091*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mull_dup)
1092*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mull_dup)
1093*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mull_dup)
1094*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mull_dup)
1095*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mull_dup)
1096*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mull_dup)
1097*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mull_dup)
1098*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mull_dup)
1099*4bdc9457SAndroid Build Coastguard Worker 
1100*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mlal_dup)
1101*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mlal_dup)
1102*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mlal_dup)
1103*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mlal_dup)
1104*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mlal_dup)
1105*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mlal_dup)
1106*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mlal_dup)
1107*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mlal_dup)
1108*4bdc9457SAndroid Build Coastguard Worker 
1109*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c2__neon_mlal_dup)
1110*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c2__neon_mlal_dup)
1111*4bdc9457SAndroid Build Coastguard Worker 
1112*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_dup)
1113*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_dup)
1114*4bdc9457SAndroid Build Coastguard Worker 
1115*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mull_ld1r)
1116*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mull_ld1r)
1117*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mull_ld1r)
1118*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mull_ld1r)
1119*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mull_ld1r)
1120*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mull_ld1r)
1121*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mull_ld1r)
1122*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mull_ld1r)
1123*4bdc9457SAndroid Build Coastguard Worker 
1124*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mlal_ld1r)
1125*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mlal_ld1r)
1126*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mlal_ld1r)
1127*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mlal_ld1r)
1128*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mlal_ld1r)
1129*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mlal_ld1r)
1130*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mlal_ld1r)
1131*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mlal_ld1r)
1132*4bdc9457SAndroid Build Coastguard Worker 
1133*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c2__neon_mlal_ld1r)
1134*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c2__neon_mlal_ld1r)
1135*4bdc9457SAndroid Build Coastguard Worker 
1136*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_ld1r)
1137*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_ld1r)
1138*4bdc9457SAndroid Build Coastguard Worker 
1139*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mull_ld2r)
1140*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mull_ld2r)
1141*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mull_ld2r)
1142*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mull_ld2r)
1143*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mull_ld2r)
1144*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mull_ld2r)
1145*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mull_ld2r)
1146*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mull_ld2r)
1147*4bdc9457SAndroid Build Coastguard Worker 
1148*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mlal_ld2r)
1149*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mlal_ld2r)
1150*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mlal_ld2r)
1151*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mlal_ld2r)
1152*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mlal_ld2r)
1153*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mlal_ld2r)
1154*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mlal_ld2r)
1155*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mlal_ld2r)
1156*4bdc9457SAndroid Build Coastguard Worker 
1157*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c2__neon_mlal_ld2r)
1158*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c2__neon_mlal_ld2r)
1159*4bdc9457SAndroid Build Coastguard Worker 
1160*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_ld2r)
1161*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_ld2r)
1162*4bdc9457SAndroid Build Coastguard Worker 
1163*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mull_ld4r)
1164*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mull_ld4r)
1165*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mull_ld4r)
1166*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mull_ld4r)
1167*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mull_ld4r)
1168*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mull_ld4r)
1169*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mull_ld4r)
1170*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mull_ld4r)
1171*4bdc9457SAndroid Build Coastguard Worker 
1172*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2__neon_mlal_ld4r)
1173*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2__neon_mlal_ld4r)
1174*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2__neon_mlal_ld4r)
1175*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2__neon_mlal_ld4r)
1176*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2__neon_mlal_ld4r)
1177*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2__neon_mlal_ld4r)
1178*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2__neon_mlal_ld4r)
1179*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2__neon_mlal_ld4r)
1180*4bdc9457SAndroid Build Coastguard Worker 
1181*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c2__neon_mlal_ld4r)
1182*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c2__neon_mlal_ld4r)
1183*4bdc9457SAndroid Build Coastguard Worker 
1184*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_ld4r)
1185*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_ld4r)
1186*4bdc9457SAndroid Build Coastguard Worker 
1187*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2s4__neon_mull)
1188*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2s4__neon_mull)
1189*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2s4__neon_mull)
1190*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2s4__neon_mull)
1191*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2s4__neon_mull)
1192*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2s4__neon_mull)
1193*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2s4__neon_mull)
1194*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2s4__neon_mull)
1195*4bdc9457SAndroid Build Coastguard Worker 
1196*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c2s4__neon_mlal)
1197*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c2s4__neon_mlal)
1198*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c2s4__neon_mlal)
1199*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c2s4__neon_mlal)
1200*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c2s4__neon_mlal)
1201*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c2s4__neon_mlal)
1202*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c2s4__neon_mlal)
1203*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c2s4__neon_mlal)
1204*4bdc9457SAndroid Build Coastguard Worker 
1205*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c2s4__neon_mlal)
1206*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c2s4__neon_mlal)
1207*4bdc9457SAndroid Build Coastguard Worker 
1208*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c2s4__neonv8_mlal)
1209*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c2s4__neonv8_mlal)
1210*4bdc9457SAndroid Build Coastguard Worker 
1211*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c8__neon_mull)
1212*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c8__neon_mull)
1213*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c8__neon_mull)
1214*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c8__neon_mull)
1215*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c8__neon_mull)
1216*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c8__neon_mull)
1217*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c8__neon_mull)
1218*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c8__neon_mull)
1219*4bdc9457SAndroid Build Coastguard Worker 
1220*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c8__neon_mlal)
1221*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c8__neon_mlal)
1222*4bdc9457SAndroid Build Coastguard Worker 
1223*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c8__neonv8_mlal)
1224*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c8__neonv8_mlal)
1225*4bdc9457SAndroid Build Coastguard Worker 
1226*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c8__neon_mlal)
1227*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c8__neon_mlal)
1228*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c8__neon_mlal)
1229*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c8__neon_mlal)
1230*4bdc9457SAndroid Build Coastguard Worker 
1231*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c8__neon_mlal)
1232*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c8__neon_mlal)
1233*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c8__neon_mlal)
1234*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c8__neon_mlal)
1235*4bdc9457SAndroid Build Coastguard Worker 
1236*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c16__neon_mlal)
1237*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c16__neon_mlal)
1238*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x8c16__neon_mlal)
1239*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c16__neon_mlal)
1240*4bdc9457SAndroid Build Coastguard Worker 
1241*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c16__neon_mlal)
1242*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x16c16__neon_mlal)
1243*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_3x16c16__neon_mlal)
1244*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c16__neon_mlal)
1245*4bdc9457SAndroid Build Coastguard Worker 
1246*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c4__neondot)
1247*4bdc9457SAndroid Build Coastguard Worker 
1248*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c4__neondot)
1249*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__neondot)
1250*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__neondot)
1251*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__neondot)
1252*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_6x8c4__neondot)
1253*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_6x16c4__neondot)
1254*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_8x8c4__neondot)
1255*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_8x16c4__neondot)
1256*4bdc9457SAndroid Build Coastguard Worker 
1257*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c8__aarch64_neon_mlal)
1258*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c8__aarch64_neon_mlal_cortex_a53)
1259*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c8__aarch64_neon_mlal_prfm)
1260*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8c8__aarch64_neon_mlal_prfm_cortex_a53)
1261*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c8__aarch64_neon_mlal)
1262*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c8__aarch64_neon_mlal_cortex_a53)
1263*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c8__aarch64_neon_mlal_prfm)
1264*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c8__aarch64_neon_mlal_prfm_cortex_a53)
1265*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c8__aarch64_neon_mull)
1266*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_2x8c16__aarch64_neon_mlal)
1267*4bdc9457SAndroid Build Coastguard Worker 
1268*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal)
1269*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal_cortex_a53)
1270*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal_prfm)
1271*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal_prfm_cortex_a53)
1272*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal)
1273*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal_cortex_a53)
1274*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal_prfm)
1275*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal_prfm_cortex_a53)
1276*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mull)
1277*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c16__aarch64_neon_mlal)
1278*4bdc9457SAndroid Build Coastguard Worker 
1279*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16__aarch64_neon_mlal_lane_cortex_a53)
1280*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16__aarch64_neon_mlal_lane_prfm_cortex_a53)
1281*4bdc9457SAndroid Build Coastguard Worker 
1282*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x16__aarch64_neon_mlal_lane_cortex_a53)
1283*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x16__aarch64_neon_mlal_lane_prfm_cortex_a53)
1284*4bdc9457SAndroid Build Coastguard Worker 
1285*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch64_neon_mlal_lane_ld64)
1286*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch64_neon_mlal_lane_prfm_ld64)
1287*4bdc9457SAndroid Build Coastguard Worker 
1288*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16__aarch64_neon_mlal_lane_ld64)
1289*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16__aarch64_neon_mlal_lane_prfm_ld64)
1290*4bdc9457SAndroid Build Coastguard Worker 
1291*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x16__aarch64_neon_mlal_lane_ld64)
1292*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x16__aarch64_neon_mlal_lane_prfm_ld64)
1293*4bdc9457SAndroid Build Coastguard Worker 
1294*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__aarch64_neondot_ld32)
1295*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x16c4__aarch64_neondot_ld64)
1296*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__aarch64_neondot_cortex_a55)
1297*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__aarch64_neondot_ld32)
1298*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__aarch64_neondot_ld64)
1299*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x16c4__aarch64_neondot_ld128)
1300*4bdc9457SAndroid Build Coastguard Worker 
1301*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x16c4__aarch64_neondot_ld32)
1302*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x16c4__aarch64_neondot_ld64)
1303*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_cortex_a55)
1304*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_ld32)
1305*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_ld64)
1306*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_ld128)
1307*4bdc9457SAndroid Build Coastguard Worker 
1308*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__aarch32_neondot_cortex_a55)
1309*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8c4__aarch32_neondot_ld64)
1310*4bdc9457SAndroid Build Coastguard Worker 
1311*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8__aarch32_neon_mlal_lane_cortex_a7)
1312*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_1x8__aarch32_neon_mlal_lane_prfm_cortex_a7)
1313*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_cortex_a7)
1314*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_cortex_a53)
1315*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_ld64)
1316*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_prfm_cortex_a7)
1317*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_prfm_cortex_a53)
1318*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_prfm_ld64)
1319*4bdc9457SAndroid Build Coastguard Worker 
1320*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2__sse2_ld64)
1321*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2__sse2_ld64)
1322*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2__sse2_ld64)
1323*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2__sse2_ld64)
1324*4bdc9457SAndroid Build Coastguard Worker 
1325*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2__sse41_ld64)
1326*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2__sse41_ld64)
1327*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2__sse41_ld64)
1328*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2__sse41_ld64)
1329*4bdc9457SAndroid Build Coastguard Worker 
1330*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2__avx_ld64)
1331*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2__avx_ld64)
1332*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2__avx_ld64)
1333*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2__avx_ld64)
1334*4bdc9457SAndroid Build Coastguard Worker 
1335*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2__xop_ld64)
1336*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2__xop_ld64)
1337*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2__xop_ld64)
1338*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2__xop_ld64)
1339*4bdc9457SAndroid Build Coastguard Worker 
1340*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2__sse2_ld128)
1341*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2__sse2_ld128)
1342*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2__sse2_ld128)
1343*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2__sse2_ld128)
1344*4bdc9457SAndroid Build Coastguard Worker 
1345*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2__sse41_ld128)
1346*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2__sse41_ld128)
1347*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2__sse41_ld128)
1348*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2__sse41_ld128)
1349*4bdc9457SAndroid Build Coastguard Worker 
1350*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2__avx_ld128)
1351*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2__avx_ld128)
1352*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2__avx_ld128)
1353*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2__avx_ld128)
1354*4bdc9457SAndroid Build Coastguard Worker 
1355*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2__xop_ld128)
1356*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2__xop_ld128)
1357*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2__xop_ld128)
1358*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2__xop_ld128)
1359*4bdc9457SAndroid Build Coastguard Worker 
1360*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2s4__sse2_ld64)
1361*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2s4__sse2_ld64)
1362*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2s4__sse2_ld64)
1363*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2s4__sse2_ld64)
1364*4bdc9457SAndroid Build Coastguard Worker 
1365*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2s4__sse41_ld64)
1366*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2s4__sse41_ld64)
1367*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2s4__sse41_ld64)
1368*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2s4__sse41_ld64)
1369*4bdc9457SAndroid Build Coastguard Worker 
1370*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2s4__avx_ld64)
1371*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2s4__avx_ld64)
1372*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2s4__avx_ld64)
1373*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2s4__avx_ld64)
1374*4bdc9457SAndroid Build Coastguard Worker 
1375*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2s4__xop_ld64)
1376*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2s4__xop_ld64)
1377*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2s4__xop_ld64)
1378*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2s4__xop_ld64)
1379*4bdc9457SAndroid Build Coastguard Worker 
1380*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2s4__sse2_ld128)
1381*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2s4__sse2_ld128)
1382*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2s4__sse2_ld128)
1383*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2s4__sse2_ld128)
1384*4bdc9457SAndroid Build Coastguard Worker 
1385*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2s4__sse41_ld128)
1386*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2s4__sse41_ld128)
1387*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2s4__sse41_ld128)
1388*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2s4__sse41_ld128)
1389*4bdc9457SAndroid Build Coastguard Worker 
1390*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2s4__avx_ld128)
1391*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2s4__avx_ld128)
1392*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2s4__avx_ld128)
1393*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2s4__avx_ld128)
1394*4bdc9457SAndroid Build Coastguard Worker 
1395*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2s4__xop_ld128)
1396*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2s4__xop_ld128)
1397*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2s4__xop_ld128)
1398*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2s4__xop_ld128)
1399*4bdc9457SAndroid Build Coastguard Worker 
1400*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c8__sse2_ld64)
1401*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c8__sse2_ld64)
1402*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c8__sse2_ld64)
1403*4bdc9457SAndroid Build Coastguard Worker 
1404*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c8__ssse3_ld64)
1405*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c8__ssse3_ld64)
1406*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c8__ssse3_ld64)
1407*4bdc9457SAndroid Build Coastguard Worker 
1408*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c8__sse41_ld64)
1409*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c8__sse41_ld64)
1410*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c8__sse41_ld64)
1411*4bdc9457SAndroid Build Coastguard Worker 
1412*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c8__avx_ld64)
1413*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c8__avx_ld64)
1414*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c8__avx_ld64)
1415*4bdc9457SAndroid Build Coastguard Worker 
1416*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c8__xop_ld64)
1417*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c8__xop_ld64)
1418*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c8__xop_ld64)
1419*4bdc9457SAndroid Build Coastguard Worker 
1420*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c8__sse2_ld128)
1421*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c8__sse2_ld128)
1422*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c8__sse2_ld128)
1423*4bdc9457SAndroid Build Coastguard Worker 
1424*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c8__ssse3_ld128)
1425*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c8__ssse3_ld128)
1426*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c8__ssse3_ld128)
1427*4bdc9457SAndroid Build Coastguard Worker 
1428*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c8__sse41_ld128)
1429*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c8__sse41_ld128)
1430*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c8__sse41_ld128)
1431*4bdc9457SAndroid Build Coastguard Worker 
1432*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c8__avx_ld128)
1433*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c8__avx_ld128)
1434*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c8__avx_ld128)
1435*4bdc9457SAndroid Build Coastguard Worker 
1436*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c8__xop_ld128)
1437*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c8__xop_ld128)
1438*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c8__xop_ld128)
1439*4bdc9457SAndroid Build Coastguard Worker 
1440*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c2__sse2)
1441*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c2__sse2)
1442*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c2__sse2)
1443*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_4x4c2__sse2)
1444*4bdc9457SAndroid Build Coastguard Worker 
1445*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c2s4__sse2)
1446*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c2s4__sse2)
1447*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c2s4__sse2)
1448*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_4x4c2s4__sse2)
1449*4bdc9457SAndroid Build Coastguard Worker 
1450*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c8__sse2)
1451*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c8__sse2)
1452*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c8__sse2)
1453*4bdc9457SAndroid Build Coastguard Worker 
1454*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c8__ssse3)
1455*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c8__ssse3)
1456*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c8__ssse3)
1457*4bdc9457SAndroid Build Coastguard Worker 
1458*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c2__sse41)
1459*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c2__sse41)
1460*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c2__sse41)
1461*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_4x4c2__sse41)
1462*4bdc9457SAndroid Build Coastguard Worker 
1463*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c2s4__sse41)
1464*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c2s4__sse41)
1465*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c2s4__sse41)
1466*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_4x4c2s4__sse41)
1467*4bdc9457SAndroid Build Coastguard Worker 
1468*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c8__sse41)
1469*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c8__sse41)
1470*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c8__sse41)
1471*4bdc9457SAndroid Build Coastguard Worker 
1472*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c2__avx)
1473*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c2__avx)
1474*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c2__avx)
1475*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_4x4c2__avx)
1476*4bdc9457SAndroid Build Coastguard Worker 
1477*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c2s4__avx)
1478*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c2s4__avx)
1479*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c2s4__avx)
1480*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_4x4c2s4__avx)
1481*4bdc9457SAndroid Build Coastguard Worker 
1482*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c8__avx)
1483*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c8__avx)
1484*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c8__avx)
1485*4bdc9457SAndroid Build Coastguard Worker 
1486*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c2__xop)
1487*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c2__xop)
1488*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c2__xop)
1489*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_4x4c2__xop)
1490*4bdc9457SAndroid Build Coastguard Worker 
1491*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c2s4__xop)
1492*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c2s4__xop)
1493*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c2s4__xop)
1494*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_4x4c2s4__xop)
1495*4bdc9457SAndroid Build Coastguard Worker 
1496*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c8__xop)
1497*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c8__xop)
1498*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c8__xop)
1499*4bdc9457SAndroid Build Coastguard Worker 
1500*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x8c8__avx2)
1501*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x8c8__avx2)
1502*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x8c8__avx2)
1503*4bdc9457SAndroid Build Coastguard Worker 
1504*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x8c8__avx2)
1505*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x8c8__avx2)
1506*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x8c8__avx2)
1507*4bdc9457SAndroid Build Coastguard Worker 
1508*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x16c8__avx512skx)
1509*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x16c8__avx512skx)
1510*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x16c8__avx512skx)
1511*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x16c8__avx512skx)
1512*4bdc9457SAndroid Build Coastguard Worker 
1513*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2__wasmsimd_dot16x2_ld64)
1514*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2__wasmsimd_dot16x2_ld64)
1515*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2__wasmsimd_dot16x2_ld64)
1516*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2__wasmsimd_dot16x2_ld64)
1517*4bdc9457SAndroid Build Coastguard Worker 
1518*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2__wasmsimd_dot16x2_ld128)
1519*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2__wasmsimd_dot16x2_ld128)
1520*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2__wasmsimd_dot16x2_ld128)
1521*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2__wasmsimd_dot16x2_ld128)
1522*4bdc9457SAndroid Build Coastguard Worker 
1523*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c2__wasmsimd_dot16x2)
1524*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c2__wasmsimd_dot16x2)
1525*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c2__wasmsimd_dot16x2)
1526*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_4x4c2__wasmsimd_dot16x2)
1527*4bdc9457SAndroid Build Coastguard Worker 
1528*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2s4__wasmsimd_dot16x2_ld64)
1529*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2s4__wasmsimd_dot16x2_ld64)
1530*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2s4__wasmsimd_dot16x2_ld64)
1531*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2s4__wasmsimd_dot16x2_ld64)
1532*4bdc9457SAndroid Build Coastguard Worker 
1533*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c2s4__wasmsimd_dot16x2_ld128)
1534*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c2s4__wasmsimd_dot16x2_ld128)
1535*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c2s4__wasmsimd_dot16x2_ld128)
1536*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c2s4__wasmsimd_dot16x2_ld128)
1537*4bdc9457SAndroid Build Coastguard Worker 
1538*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c8__wasmsimd_dot16x2_ld64)
1539*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c8__wasmsimd_dot16x2_ld64)
1540*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c8__wasmsimd_dot16x2_ld64)
1541*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c8__wasmsimd_dot16x2_ld64)
1542*4bdc9457SAndroid Build Coastguard Worker 
1543*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4c8__wasmsimd_dot16x2_ld128)
1544*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4c8__wasmsimd_dot16x2_ld128)
1545*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4c8__wasmsimd_dot16x2_ld128)
1546*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4c8__wasmsimd_dot16x2_ld128)
1547*4bdc9457SAndroid Build Coastguard Worker 
1548*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_1x4c8__wasmsimd_dot16x2)
1549*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_2x4c8__wasmsimd_dot16x2)
1550*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_3x4c8__wasmsimd_dot16x2)
1551*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_xw_minmax_fp32_ukernel_4x4c8__wasmsimd_dot16x2)
1552*4bdc9457SAndroid Build Coastguard Worker 
1553*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x2__wasm_fmagic)
1554*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4__wasm_fmagic)
1555*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x2__wasm_fmagic)
1556*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4__wasm_fmagic)
1557*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x2__wasm_fmagic)
1558*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4__wasm_fmagic)
1559*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x2__wasm_fmagic)
1560*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4__wasm_fmagic)
1561*4bdc9457SAndroid Build Coastguard Worker 
1562*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x1c4__armsimd32)
1563*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x2c4__armsimd32)
1564*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x1c4__armsimd32)
1565*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x2c4__armsimd32)
1566*4bdc9457SAndroid Build Coastguard Worker 
1567*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x2__scalar_fmagic)
1568*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4__scalar_fmagic)
1569*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x2__scalar_fmagic)
1570*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4__scalar_fmagic)
1571*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x2__scalar_fmagic)
1572*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4__scalar_fmagic)
1573*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x2__scalar_fmagic)
1574*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4__scalar_fmagic)
1575*4bdc9457SAndroid Build Coastguard Worker 
1576*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x2__scalar_imagic)
1577*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4__scalar_imagic)
1578*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x2__scalar_imagic)
1579*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4__scalar_imagic)
1580*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x2__scalar_imagic)
1581*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4__scalar_imagic)
1582*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x2__scalar_imagic)
1583*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4__scalar_imagic)
1584*4bdc9457SAndroid Build Coastguard Worker 
1585*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x2__scalar_lrintf)
1586*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_1x4__scalar_lrintf)
1587*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x2__scalar_lrintf)
1588*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_2x4__scalar_lrintf)
1589*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x2__scalar_lrintf)
1590*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_3x4__scalar_lrintf)
1591*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x2__scalar_lrintf)
1592*4bdc9457SAndroid Build Coastguard Worker DECLARE_QS8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qs8_gemm_minmax_fp32_ukernel_4x4__scalar_lrintf)
1593*4bdc9457SAndroid Build Coastguard Worker 
1594*4bdc9457SAndroid Build Coastguard Worker 
1595*4bdc9457SAndroid Build Coastguard Worker #define DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(fn_name) \
1596*4bdc9457SAndroid Build Coastguard Worker   XNN_INTERNAL void fn_name(                              \
1597*4bdc9457SAndroid Build Coastguard Worker       size_t mr,                                          \
1598*4bdc9457SAndroid Build Coastguard Worker       size_t nr,                                          \
1599*4bdc9457SAndroid Build Coastguard Worker       size_t k,                                           \
1600*4bdc9457SAndroid Build Coastguard Worker       const int8_t* a,                                    \
1601*4bdc9457SAndroid Build Coastguard Worker       size_t a_stride,                                    \
1602*4bdc9457SAndroid Build Coastguard Worker       const void* w,                                      \
1603*4bdc9457SAndroid Build Coastguard Worker       int8_t* c,                                          \
1604*4bdc9457SAndroid Build Coastguard Worker       size_t cm_stride,                                   \
1605*4bdc9457SAndroid Build Coastguard Worker       size_t cn_stride,                                   \
1606*4bdc9457SAndroid Build Coastguard Worker       const union xnn_qc8_conv_minmax_params* params);
1607*4bdc9457SAndroid Build Coastguard Worker 
1608*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8__neon_mlal_lane)
1609*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8__neon_mlal_lane_prfm)
1610*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x16__neon_mlal_lane)
1611*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x16__neon_mlal_lane_prfm)
1612*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8__neon_mlal_lane)
1613*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8__neon_mlal_lane_prfm)
1614*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x16__neon_mlal_lane)
1615*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x16__neon_mlal_lane_prfm)
1616*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x8__neon_mlal_lane)
1617*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x8__neon_mlal_lane_prfm)
1618*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x16__neon_mlal_lane)
1619*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x16__neon_mlal_lane_prfm)
1620*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__neon_mlal_lane)
1621*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__neon_mlal_lane_prfm)
1622*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x16__neon_mlal_lane)
1623*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x16__neon_mlal_lane_prfm)
1624*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_6x8__neon_mlal_lane)
1625*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_6x8__neon_mlal_lane_prfm)
1626*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_6x16__neon_mlal_lane)
1627*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_6x16__neon_mlal_lane_prfm)
1628*4bdc9457SAndroid Build Coastguard Worker 
1629*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8__neonv8_mlal_lane)
1630*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8__neonv8_mlal_lane_prfm)
1631*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x16__neonv8_mlal_lane)
1632*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x16__neonv8_mlal_lane_prfm)
1633*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8__neonv8_mlal_lane)
1634*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8__neonv8_mlal_lane_prfm)
1635*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x16__neonv8_mlal_lane)
1636*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x16__neonv8_mlal_lane_prfm)
1637*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x8__neonv8_mlal_lane)
1638*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x8__neonv8_mlal_lane_prfm)
1639*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x16__neonv8_mlal_lane)
1640*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x16__neonv8_mlal_lane_prfm)
1641*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__neonv8_mlal_lane)
1642*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__neonv8_mlal_lane_prfm)
1643*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x16__neonv8_mlal_lane)
1644*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x16__neonv8_mlal_lane_prfm)
1645*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_6x8__neonv8_mlal_lane)
1646*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_6x8__neonv8_mlal_lane_prfm)
1647*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_6x16__neonv8_mlal_lane)
1648*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_6x16__neonv8_mlal_lane_prfm)
1649*4bdc9457SAndroid Build Coastguard Worker 
1650*4bdc9457SAndroid Build Coastguard Worker 
1651*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4__neon_mlal_dup)
1652*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4__neon_mlal_dup)
1653*4bdc9457SAndroid Build Coastguard Worker 
1654*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4__neonv8_mlal_dup)
1655*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4__neonv8_mlal_dup)
1656*4bdc9457SAndroid Build Coastguard Worker 
1657*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4__neon_mlal_ld1r)
1658*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4__neon_mlal_ld1r)
1659*4bdc9457SAndroid Build Coastguard Worker 
1660*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4__neonv8_mlal_ld1r)
1661*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4__neonv8_mlal_ld1r)
1662*4bdc9457SAndroid Build Coastguard Worker 
1663*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4__neon_mlal_ld2r)
1664*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4__neon_mlal_ld2r)
1665*4bdc9457SAndroid Build Coastguard Worker 
1666*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4__neonv8_mlal_ld2r)
1667*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4__neonv8_mlal_ld2r)
1668*4bdc9457SAndroid Build Coastguard Worker 
1669*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4s2__neon_mlal)
1670*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4s2__neon_mlal)
1671*4bdc9457SAndroid Build Coastguard Worker 
1672*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4s2__neonv8_mlal)
1673*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c4s2__neonv8_mlal)
1674*4bdc9457SAndroid Build Coastguard Worker 
1675*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neon_mlal_dup)
1676*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neon_mlal_dup)
1677*4bdc9457SAndroid Build Coastguard Worker 
1678*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_dup)
1679*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_dup)
1680*4bdc9457SAndroid Build Coastguard Worker 
1681*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neon_mlal_ld1r)
1682*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neon_mlal_ld1r)
1683*4bdc9457SAndroid Build Coastguard Worker 
1684*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_ld1r)
1685*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_ld1r)
1686*4bdc9457SAndroid Build Coastguard Worker 
1687*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neon_mlal_ld2r)
1688*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neon_mlal_ld2r)
1689*4bdc9457SAndroid Build Coastguard Worker 
1690*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_ld2r)
1691*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_ld2r)
1692*4bdc9457SAndroid Build Coastguard Worker 
1693*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neon_mlal_ld4r)
1694*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neon_mlal_ld4r)
1695*4bdc9457SAndroid Build Coastguard Worker 
1696*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2__neonv8_mlal_ld4r)
1697*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2__neonv8_mlal_ld4r)
1698*4bdc9457SAndroid Build Coastguard Worker 
1699*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2s4__neon_mlal)
1700*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2s4__neon_mlal)
1701*4bdc9457SAndroid Build Coastguard Worker 
1702*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c2s4__neonv8_mlal)
1703*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c2s4__neonv8_mlal)
1704*4bdc9457SAndroid Build Coastguard Worker 
1705*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c8__neon_mlal)
1706*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__neon_mlal)
1707*4bdc9457SAndroid Build Coastguard Worker 
1708*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c8__neonv8_mlal)
1709*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__neonv8_mlal)
1710*4bdc9457SAndroid Build Coastguard Worker 
1711*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c4__neondot)
1712*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8c4__neondot)
1713*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_6x8c4__neondot)
1714*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_8x8c4__neondot)
1715*4bdc9457SAndroid Build Coastguard Worker 
1716*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x16c4__neondot)
1717*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x16c4__neondot)
1718*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_6x16c4__neondot)
1719*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_8x16c4__neondot)
1720*4bdc9457SAndroid Build Coastguard Worker 
1721*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal)
1722*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal_cortex_a53)
1723*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal_prfm)
1724*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c8__aarch64_neon_mlal_prfm_cortex_a53)
1725*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal)
1726*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal_cortex_a53)
1727*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal_prfm)
1728*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mlal_prfm_cortex_a53)
1729*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__aarch64_neon_mull)
1730*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c16__aarch64_neon_mlal)
1731*4bdc9457SAndroid Build Coastguard Worker 
1732*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x16__aarch64_neon_mlal_lane_cortex_a53)
1733*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x16__aarch64_neon_mlal_lane_prfm_cortex_a53)
1734*4bdc9457SAndroid Build Coastguard Worker 
1735*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x16__aarch64_neon_mlal_lane_ld64)
1736*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x16__aarch64_neon_mlal_lane_prfm_ld64)
1737*4bdc9457SAndroid Build Coastguard Worker 
1738*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x16c4__aarch64_neondot_ld32)
1739*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x16c4__aarch64_neondot_ld64)
1740*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_cortex_a55)
1741*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_ld32)
1742*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_ld64)
1743*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x16c4__aarch64_neondot_ld128)
1744*4bdc9457SAndroid Build Coastguard Worker 
1745*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8c4__aarch32_neondot_cortex_a55)
1746*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8c4__aarch32_neondot_ld64)
1747*4bdc9457SAndroid Build Coastguard Worker 
1748*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8__aarch32_neon_mlal_lane_cortex_a7)
1749*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8__aarch32_neon_mlal_lane_prfm_cortex_a7)
1750*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8__aarch32_neonv8_mlal_lane_cortex_a35)
1751*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8__aarch32_neonv8_mlal_lane_prfm_cortex_a35)
1752*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neon_mlal_lane_cortex_a7)
1753*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neon_mlal_lane_cortex_a53)
1754*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neon_mlal_lane_ld64)
1755*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neon_mlal_lane_prfm_cortex_a7)
1756*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neon_mlal_lane_prfm_cortex_a53)
1757*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neon_mlal_lane_prfm_ld64)
1758*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_cortex_a35)
1759*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_cortex_a53)
1760*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_ld64)
1761*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_prfm_cortex_a35)
1762*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_prfm_cortex_a53)
1763*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_prfm_ld64)
1764*4bdc9457SAndroid Build Coastguard Worker 
1765*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__sse2_ld64)
1766*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__sse2_ld64)
1767*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__sse2_ld64)
1768*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__sse2_ld64)
1769*4bdc9457SAndroid Build Coastguard Worker 
1770*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__sse41_ld64)
1771*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__sse41_ld64)
1772*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__sse41_ld64)
1773*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__sse41_ld64)
1774*4bdc9457SAndroid Build Coastguard Worker 
1775*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__avx_ld64)
1776*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__avx_ld64)
1777*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__avx_ld64)
1778*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__avx_ld64)
1779*4bdc9457SAndroid Build Coastguard Worker 
1780*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__xop_ld64)
1781*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__xop_ld64)
1782*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__xop_ld64)
1783*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__xop_ld64)
1784*4bdc9457SAndroid Build Coastguard Worker 
1785*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__sse2_ld128)
1786*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__sse2_ld128)
1787*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__sse2_ld128)
1788*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__sse2_ld128)
1789*4bdc9457SAndroid Build Coastguard Worker 
1790*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__sse41_ld128)
1791*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__sse41_ld128)
1792*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__sse41_ld128)
1793*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__sse41_ld128)
1794*4bdc9457SAndroid Build Coastguard Worker 
1795*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__avx_ld128)
1796*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__avx_ld128)
1797*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__avx_ld128)
1798*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__avx_ld128)
1799*4bdc9457SAndroid Build Coastguard Worker 
1800*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__xop_ld128)
1801*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__xop_ld128)
1802*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__xop_ld128)
1803*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__xop_ld128)
1804*4bdc9457SAndroid Build Coastguard Worker 
1805*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__sse2_ld64)
1806*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__sse2_ld64)
1807*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__sse2_ld64)
1808*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__sse2_ld64)
1809*4bdc9457SAndroid Build Coastguard Worker 
1810*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__sse41_ld64)
1811*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__sse41_ld64)
1812*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__sse41_ld64)
1813*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__sse41_ld64)
1814*4bdc9457SAndroid Build Coastguard Worker 
1815*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__avx_ld64)
1816*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__avx_ld64)
1817*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__avx_ld64)
1818*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__avx_ld64)
1819*4bdc9457SAndroid Build Coastguard Worker 
1820*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__xop_ld64)
1821*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__xop_ld64)
1822*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__xop_ld64)
1823*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__xop_ld64)
1824*4bdc9457SAndroid Build Coastguard Worker 
1825*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__sse2_ld128)
1826*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__sse2_ld128)
1827*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__sse2_ld128)
1828*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__sse2_ld128)
1829*4bdc9457SAndroid Build Coastguard Worker 
1830*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__sse41_ld128)
1831*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__sse41_ld128)
1832*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__sse41_ld128)
1833*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__sse41_ld128)
1834*4bdc9457SAndroid Build Coastguard Worker 
1835*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__avx_ld128)
1836*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__avx_ld128)
1837*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__avx_ld128)
1838*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__avx_ld128)
1839*4bdc9457SAndroid Build Coastguard Worker 
1840*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__xop_ld128)
1841*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__xop_ld128)
1842*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__xop_ld128)
1843*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__xop_ld128)
1844*4bdc9457SAndroid Build Coastguard Worker 
1845*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__sse2_ld64)
1846*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__sse2_ld64)
1847*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__sse2_ld64)
1848*4bdc9457SAndroid Build Coastguard Worker 
1849*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__sse41_ld64)
1850*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__sse41_ld64)
1851*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__sse41_ld64)
1852*4bdc9457SAndroid Build Coastguard Worker 
1853*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__avx_ld64)
1854*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__avx_ld64)
1855*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__avx_ld64)
1856*4bdc9457SAndroid Build Coastguard Worker 
1857*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__xop_ld64)
1858*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__xop_ld64)
1859*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__xop_ld64)
1860*4bdc9457SAndroid Build Coastguard Worker 
1861*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__sse2_ld128)
1862*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__sse2_ld128)
1863*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__sse2_ld128)
1864*4bdc9457SAndroid Build Coastguard Worker 
1865*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__sse41_ld128)
1866*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__sse41_ld128)
1867*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__sse41_ld128)
1868*4bdc9457SAndroid Build Coastguard Worker 
1869*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__avx_ld128)
1870*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__avx_ld128)
1871*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__avx_ld128)
1872*4bdc9457SAndroid Build Coastguard Worker 
1873*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__xop_ld128)
1874*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__xop_ld128)
1875*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__xop_ld128)
1876*4bdc9457SAndroid Build Coastguard Worker 
1877*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x8c8__avx2)
1878*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x8c8__avx2)
1879*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x8c8__avx2)
1880*4bdc9457SAndroid Build Coastguard Worker 
1881*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_xw_minmax_fp32_ukernel_1x8c8__avx2)
1882*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_xw_minmax_fp32_ukernel_2x8c8__avx2)
1883*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_xw_minmax_fp32_ukernel_3x8c8__avx2)
1884*4bdc9457SAndroid Build Coastguard Worker 
1885*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x16c8__avx512skx)
1886*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x16c8__avx512skx)
1887*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x16c8__avx512skx)
1888*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x16c8__avx512skx)
1889*4bdc9457SAndroid Build Coastguard Worker 
1890*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__wasmsimd_dot16x2_ld64)
1891*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__wasmsimd_dot16x2_ld64)
1892*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__wasmsimd_dot16x2_ld64)
1893*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__wasmsimd_dot16x2_ld64)
1894*4bdc9457SAndroid Build Coastguard Worker 
1895*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2__wasmsimd_dot16x2_ld128)
1896*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2__wasmsimd_dot16x2_ld128)
1897*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2__wasmsimd_dot16x2_ld128)
1898*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2__wasmsimd_dot16x2_ld128)
1899*4bdc9457SAndroid Build Coastguard Worker 
1900*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__wasmsimd_dot16x2_ld64)
1901*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__wasmsimd_dot16x2_ld64)
1902*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__wasmsimd_dot16x2_ld64)
1903*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__wasmsimd_dot16x2_ld64)
1904*4bdc9457SAndroid Build Coastguard Worker 
1905*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c2s4__wasmsimd_dot16x2_ld128)
1906*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c2s4__wasmsimd_dot16x2_ld128)
1907*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c2s4__wasmsimd_dot16x2_ld128)
1908*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c2s4__wasmsimd_dot16x2_ld128)
1909*4bdc9457SAndroid Build Coastguard Worker 
1910*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__wasmsimd_dot16x2_ld64)
1911*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__wasmsimd_dot16x2_ld64)
1912*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__wasmsimd_dot16x2_ld64)
1913*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c8__wasmsimd_dot16x2_ld64)
1914*4bdc9457SAndroid Build Coastguard Worker 
1915*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4c8__wasmsimd_dot16x2_ld128)
1916*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4c8__wasmsimd_dot16x2_ld128)
1917*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4c8__wasmsimd_dot16x2_ld128)
1918*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4c8__wasmsimd_dot16x2_ld128)
1919*4bdc9457SAndroid Build Coastguard Worker 
1920*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x2__wasm_fmagic)
1921*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4__wasm_fmagic)
1922*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x2__wasm_fmagic)
1923*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4__wasm_fmagic)
1924*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x2__wasm_fmagic)
1925*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4__wasm_fmagic)
1926*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x2__wasm_fmagic)
1927*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4__wasm_fmagic)
1928*4bdc9457SAndroid Build Coastguard Worker 
1929*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x1c4__armsimd32)
1930*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x2c4__armsimd32)
1931*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x1c4__armsimd32)
1932*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x2c4__armsimd32)
1933*4bdc9457SAndroid Build Coastguard Worker 
1934*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x2__scalar_fmagic)
1935*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4__scalar_fmagic)
1936*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x2__scalar_fmagic)
1937*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4__scalar_fmagic)
1938*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x2__scalar_fmagic)
1939*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4__scalar_fmagic)
1940*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x2__scalar_fmagic)
1941*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4__scalar_fmagic)
1942*4bdc9457SAndroid Build Coastguard Worker 
1943*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x2__scalar_imagic)
1944*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4__scalar_imagic)
1945*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x2__scalar_imagic)
1946*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4__scalar_imagic)
1947*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x2__scalar_imagic)
1948*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4__scalar_imagic)
1949*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x2__scalar_imagic)
1950*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4__scalar_imagic)
1951*4bdc9457SAndroid Build Coastguard Worker 
1952*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x2__scalar_lrintf)
1953*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_1x4__scalar_lrintf)
1954*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x2__scalar_lrintf)
1955*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_2x4__scalar_lrintf)
1956*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x2__scalar_lrintf)
1957*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_3x4__scalar_lrintf)
1958*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x2__scalar_lrintf)
1959*4bdc9457SAndroid Build Coastguard Worker DECLARE_QC8_GEMM_MINMAX_UKERNEL_FUNCTION(xnn_qc8_gemm_minmax_fp32_ukernel_4x4__scalar_lrintf)
1960*4bdc9457SAndroid Build Coastguard Worker 
1961*4bdc9457SAndroid Build Coastguard Worker #define DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(fn_name) \
1962*4bdc9457SAndroid Build Coastguard Worker   XNN_INTERNAL xnn_status_t fn_name(                    \
1963*4bdc9457SAndroid Build Coastguard Worker       struct xnn_code_buffer* code,                     \
1964*4bdc9457SAndroid Build Coastguard Worker       size_t max_mr,                                    \
1965*4bdc9457SAndroid Build Coastguard Worker       size_t nc_mod_nr,                                 \
1966*4bdc9457SAndroid Build Coastguard Worker       size_t kc,                                        \
1967*4bdc9457SAndroid Build Coastguard Worker       const void* params);
1968*4bdc9457SAndroid Build Coastguard Worker 
1969*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_f32_gemm_ukernel_4x8__aarch32_neon_cortex_a7)
1970*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_f32_gemm_ukernel_4x8__aarch32_neon_cortex_a53)
1971*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_f32_gemm_ukernel_4x8__aarch32_neon_cortex_a55)
1972*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_f32_gemm_ukernel_4x8__aarch32_neon_cortex_a75)
1973*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_f32_gemm_ukernel_4x8__aarch32_neon_ld64)
1974*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_f32_gemm_ukernel_4x8__aarch32_neon_prfm_cortex_a75)
1975*4bdc9457SAndroid Build Coastguard Worker 
1976*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_qs8_gemm_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_ld64)
1977*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_qs8_gemm_rndnu_ukernel_4x8__aarch32_neon_mlal_lane_prfm_ld64)
1978*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_qs8_gemm_rndnu_ukernel_4x8c4__aarch32_neondot_ld64)
1979*4bdc9457SAndroid Build Coastguard Worker 
1980*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_qc8_gemm_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_ld64)
1981*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_qc8_gemm_fp32_ukernel_4x8__aarch32_neonv8_mlal_lane_prfm_ld64)
1982*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_qc8_gemm_fp32_ukernel_4x8c4__aarch32_neondot_ld64)
1983*4bdc9457SAndroid Build Coastguard Worker 
1984*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_f32_gemm_ukernel_1x8__aarch64_neonfma_cortex_a75)
1985*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_f32_gemm_ukernel_1x8__aarch64_neonfma_prfm_cortex_a75)
1986*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_f32_gemm_ukernel_4x8__aarch64_neonfma_cortex_a75)
1987*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_f32_gemm_ukernel_4x8__aarch64_neonfma_prfm_cortex_a75)
1988*4bdc9457SAndroid Build Coastguard Worker 
1989*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_f32_gemm_ukernel_upto6x8__aarch64_neonfma_cortex_a75)
1990*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_f32_gemm_ukernel_upto6x8__aarch64_neonfma_prfm_cortex_a75)
1991*4bdc9457SAndroid Build Coastguard Worker DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION(xnn_generate_f32_gemm_ukernel_6x8__aarch64_neonfma_ld128)
1992*4bdc9457SAndroid Build Coastguard Worker 
1993*4bdc9457SAndroid Build Coastguard Worker #undef DECLARE_GENERATE_GEMM_UKERNEL_FUNCTION
1994*4bdc9457SAndroid Build Coastguard Worker 
1995*4bdc9457SAndroid Build Coastguard Worker #ifdef __cplusplus
1996*4bdc9457SAndroid Build Coastguard Worker }  // extern "C"
1997*4bdc9457SAndroid Build Coastguard Worker #endif
1998