xref: /aosp_15_r20/external/pytorch/aten/src/ATen/native/quantized/cpu/qnnpack/src/qnnpack/x8zip.h (revision da0073e96a02ea20f0ac840b70461e3646d07c45)
1 /*
2  * Copyright (c) Facebook, Inc. and its affiliates.
3  * All rights reserved.
4  *
5  * This source code is licensed under the BSD-style license found in the
6  * LICENSE file in the root directory of this source tree.
7  */
8 
9 #pragma once
10 
11 #include <stddef.h>
12 #include <stdint.h>
13 
14 #include <qnnpack/common.h>
15 #include <qnnpack/params.h>
16 
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20 
21 #define DECLARE_PYTORCH_XZIPC_UKERNEL_FUNCTION(fn_name) \
22   PYTORCH_QNNP_INTERNAL void fn_name(size_t n, const void* x, void* y);
23 
24 DECLARE_PYTORCH_XZIPC_UKERNEL_FUNCTION(pytorch_qnnp_x8zip_x2__neon)
25 DECLARE_PYTORCH_XZIPC_UKERNEL_FUNCTION(pytorch_qnnp_x8zip_x2__sse2)
26 DECLARE_PYTORCH_XZIPC_UKERNEL_FUNCTION(pytorch_qnnp_x8zip_x3__neon)
27 DECLARE_PYTORCH_XZIPC_UKERNEL_FUNCTION(pytorch_qnnp_x8zip_x3__sse2)
28 DECLARE_PYTORCH_XZIPC_UKERNEL_FUNCTION(pytorch_qnnp_x8zip_x4__neon)
29 DECLARE_PYTORCH_XZIPC_UKERNEL_FUNCTION(pytorch_qnnp_x8zip_x4__sse2)
30 
31 #define DECLARE_PYTORCH_XZIPV_UKERNEL_FUNCTION(fn_name) \
32   PYTORCH_QNNP_INTERNAL void fn_name(           \
33       size_t n, size_t m, const void* x, void* y);
34 
35 DECLARE_PYTORCH_XZIPV_UKERNEL_FUNCTION(pytorch_qnnp_x8zip_xm__neon)
36 DECLARE_PYTORCH_XZIPV_UKERNEL_FUNCTION(pytorch_qnnp_x8zip_xm__sse2)
37 
38 #ifdef __cplusplus
39 } /* extern "C" */
40 #endif
41